9.活動概述及成效
109學年度第1學期邀請到任職MVI System Ltd. 擔任Application Developer的謝方博(Edward)先生,分享工作經驗與從無到有的Line Bot智慧助理建置。
對於動態網站開發的初學者或是有興趣的學員們,準備一套可快速上手的選擇(PHP+Laravel Framework),透過該Framework可清楚瞭解到多數網站使用的MVC架構,MVC 指的是Model-View-Controller(模型-視圖-控制器)。Model 屬於資料的部份,可能是商業邏輯或是資料庫存取等;View 屬於顯示的部份,像是 HTML、CSS 等;Controller 會針對請求做出回應及處理,例如從 Model 中取得資料,並要求 View 來顯示,此架構優點為:1.擴充性高 2.方便管理 3.使程式結構更直覺 4.有利於團隊分工,讓與課的學可以學習到業界主流的網站開發架構,避免學習到過時的網站技術。
課程前段,向各學員介紹相關開發資源及工具(XAMPP、SQL、Editor),接著簡單介紹PHP這套語言及開發環境建置步驟,在網站開發的世界裡,沒有絕對最好的語言,須視專案的考量因素而來決定,至於本次選擇PHP單純是因為開源軟體,對於初學者來說學習門檻較低。在經過簡單的PHP邏輯語法的練習與物件導向概念之後,便進到Laravel Framework的安裝與建立,並介紹專案內各不同的資料夾對應的是檔案及用途,如:
app:應用程式相關的Model、邏輯、控制器。
bootstrap:建立Laravel應用程式的實體,載入相關的服務和元件。
config:各種設定檔,例如 資料庫連線、時區、語系等會與 .env 環境設定檔搭配使用。
database:資料庫遷移(變更)檔種子資料產生器
public:公開存取的資料夾供外部存取的靜態資源,Index.php 是程式進入點
resource:視圖(View)存放處,語言檔
routes:網址路徑對應檔
storage:內部使用的檔案,快取、log等記錄
tests:自動化測試檔案
vendor:composer下載的套件都在這
接著透過建置一個簡單的部落格專案的實作方式讓學員了解到MVC。
課程後段,介紹API的概念,不論是網站自身提供給外部使用的API或是網站使用到外部服務API(如:空氣檢測),讓學員了解到不同服務間是可以透過此方式做溝通,順勢代入本次的重點:Line Bot 智慧助理,簡單說就是Line Bot官方有提供呼叫的Message API,只要提供正確的參數值,便可正確呼叫,例如,網站可以跑一個timer,每十五秒去行政院環保署空氣品質監測網(https://airtw.epa.gov.tw/) 取得當地空汙指標,若AQI指標超過150便主動Line通知網站註冊使用者。
透過本次課程,學員可以對網站開發有較完整的學習,結合Line Bot可以有更多的應用,課程中講師也分享一些有趣的工具,例如、Wit.ai 強化語意分析;除了技術,講師也分享許多業界團隊工作經驗,學員們獲益良多。