Webapp 網路應用程式開發流程 Vue.js 與 Laravel API 的完美結合

Webapp 網路應用程式開發流程 Vue.js 與 Laravel API 的完美結合

Webapp 網路應用程式的實務開發流程,它風行的原因主要是因為它能夠跨平台,只要裝置有 Web browser (瀏覽器) 均可執行。

開發一套程式前的系統需求與專案時程規劃將影響系統 UI (使用者介面) 的開發,及近幾年越加重視的 UX (使用者體驗),UX 設計好的話,使用者可完全不需系統手冊就會使用一套系統。

撰寫系統為前、後端分離的架構,依顧客需求選用合適的資料庫。後端使用 Laravel RESTfulAPI,前端則是近幾年使用人數持續上升的 Vue.js 來串接後台 RESTful API。在來則是最終的系統 Demo 及上線。

什麼是 Webapp 網路應用程式?

Webapp (網路應用程式) 可分為兩種架構:

  • 客戶端結合後端伺服器和資料庫。
  • 僅客戶端。

而 Webapp 的客戶端就是 Web browser (網頁瀏覽器),像是 ChromeFirefoxSafariOperaEdgeInternet Explorer 等。

Webapp 風行的原因主要是因為它能夠跨平台,只要裝置有 Web browser 均可執行 (電腦、平版、智慧型手機 ),且不需事先安裝或定期升級程式。

系統需求規劃

現有表單

  • 紙本。
  • Excel。
  • 其它電子檔

使用者訪談

這要加入【現有表單】,並同時與使用者、網頁程式開發人員共同討論系統需要的頁面,以及功能和邏輯等。

這是最重要的一個環節,網頁程式開發人員一定要完全了解,並與【使用者】再三確認需求 (很重要 * N),因為這會大大影響後續開發,程式的修改次數和時程,與後續維護的成本。

專案時程規劃

規劃專案每個頁面及功能完成的時間 ,當有一個頁面 UI 完成 (不含功能邏輯) 就先請【使用者】確認,無誤後在撰寫功能邏輯,完成後再次確認,直到沒問題在進行下一個頁面。

後端

資料庫 Table 規劃

彙整上述需求確認【表單】+【訪談】+【UI】後,非常關鍵的就是資料庫 Table (資料表) Schema 規劃,也就是 Table 欄位及資料格式的制定,以關聯式資料庫 Table 和 Table 的關聯性,和最終的資料庫正規化

資料庫規劃好壞與否,將影響整體系統的開發時程及後續的維護性,通常會花較多的時間與心絲在一開始的資料庫規劃。

RESTful API

RestfulAPI 簡單來說就是使用後端程式 PHP (或框架 Laravel)、Node.js (或框架 Express.js)、Python 等程式串接資料庫對應的 Tables,且提供一個唯一的網址作為資源,並由前端向後端進行 CRUD (新增、查詢、更新或刪除) 請求的操作,來進行對應資源的 Data。

延伸閱讀RESTful Web API 設計指南

Laravel

PHP 那麼多框架,為什麼選擇 Laravel?因為 Laravel 它是市場占有使用率最高的 PHP 框架。

在 Github 排名第一的 PHP 框架 Laravel ,並且還是最晚發行的 PHP 框架,Star 數量遠高於排名第二的 PHP 框架。

連結Search · stars:>0 · GitHub

Github 排名第一的 PHP 框架 Laravel
Github 排名第一的 PHP 框架 Laravel

Google 趨勢排名第一的 PHP 後端框架也是 Laravel,並有越來越高的趨勢。

連結yii, CodeIgniter, Cakephp, Laravel, Symfony - Explore - Google Trends

Google 趨勢搜尋排名第一的 PHP 後端框架 Laravel
Google 趨勢搜尋排名第一的 PHP 後端框架 Laravel

延伸閱讀Ubuntu Server 20.04.1 使用 WordOps NGINX 建立設定 Laravel 環境

前端

依全球使用率排序名次,目前前三名前端框架

  1. React (Facebook 開發)。
  2. Angular (Google 開發)。
  3. Vue (尤雨溪開發),

但在排名前 100 萬的網站中,Vue 位居第二名,比例卻比 Angular 還要多。與 React 相比,Vue 雖然還不及它的使用率,但 React 比 Vue.js 推出的穩定版本要提早半年發行,因此使用者較多也是合理。

但在 Google 趨勢搜尋排名第一的 JavaScript 前端框架是 Vue,個人猜測或許是大陸人口較多吧!

Google 趨勢搜尋排名第一的 JavaScript 前端框架 Vue
Google 趨勢搜尋排名第一的 JavaScript 前端框架 Vue

延伸閱讀Vue CLI 3 安裝與使用教學

串接後端 Laravel RESTful API

通常在網頁載入時,系統就需要向後端發送一些 GET 請求,來取得資源的 Data。例如一開始日期選擇器僅能選擇有資料的日期,或下拉式選單要呈現的資料。

撰寫 UI / UX 網頁?

什麼是 UI?

UI (使用者介面) 系統和使用者進行互動和資訊交換的媒介,例如使用者在網頁點擊送出表單的按鈕時,將 Data 寫入資料庫的資料表後系統回應什麼 Data。

什麼是 UX?

UX (使用者體驗) 是建構在 UI 之上,以使用者為中心去思考如何讓 UI 更簡單、易用、好用,使用者完全不需閱讀「系統 SOP 操作冊」就知道如何操作這套網頁系統。

系統 Demo

  • Demo v1 版本:部門內初步測試,並提出欲修正問題。
  • Demo v2 ~ vN 版本:Demo v1 問題修改後,部門內測試直到所有問題修正。
  • Test v1 版本:需求單位測試欲修正問題。
  • Test v2 ~ vN 版本:Test v1 問題修改後,需求單位測試直到所有問題修正。
  • Release 正式版,系統上線。
  • Bug 與功能不斷修正和調整 UI 及 UX,最終成為能讓【使用者】省時、易用、好用的一套系統。(當使用者離不開它的時候,也就代表這個系統非常成功)

發表留言