ModStart開發者文件-系統架構

ModStart開源發表於2022-01-05

ModStart 基於原生 Laravel 開發,獨創了方便易擴充套件的模組開發架構,通過配置式的開發過程,可以快速實現系統搭建。

系統程式碼結構

系統程式碼結構參照 Laravel 的目錄結構,對於部分不同的重要目錄構成,以下做簡單介紹。

ROOT
├── app                    → 應用目錄
│     ├── Admin            → 後臺管理原始碼目錄
│     ├── Api              → API程式原始碼目錄
│     └── Web              → 前臺程式原始碼目錄
├── module                 → 模組原始碼,模組原始碼都會放在該目錄下,每個模組一個資料夾
│     ├── Xxx              → 其他模組
│     └── Vendor           → 模組基礎程式碼
├── vendor                 → 
│     └── modstart         → 
│           └── modstart   → ModStart核心架構目錄
└── resources              → 資源目錄
      └── views            → 檢視目錄
            └── default    → 預設模板檢視目錄

其中模組相關目錄結構可以參考 模組目錄結構

應用和模組區別

模組

模組包含在 module/ 目錄中,每個模組擁有單獨的目錄,並且包含獨立的 Admin、Web、Api、OpenApi 等功能。

對於可複用的模組,我們推薦建立獨立的模組進行最大程度而複用,同時還可以釋出到模組市場。

模組市場安裝的模組也會出現在 module/ 目錄中。

應用

應用包含在 app/ 目錄中,包含獨立的 Admin、Web、Api、OpenApi 等功能。

對於系統個性化的功能,一般不推薦放在模組目錄中,可以放在應用目錄中,用於開發系統個性化的需求開發。

系統載入流程

ModStart的啟動通過 ModStart\ModStartServiceProvider 類來管理,具體的載入過程參考相關實現邏輯。

路由載入流程

Web前臺

系統會按照如下的順序載入路由檔案。

  • module/Xxx/Web/routes.php:所有模組中的Web前臺路由
  • app/Web/routes.php:系統應用Web前臺路由

Admin後臺

系統會按照如下的順序載入路由檔案。

  • module/Xxx/Admin/routes.php:所有模組中的Admin後臺路由
  • app/Admin/routes.php:系統應用Admin後臺路由

Api介面

系統會按照如下的順序載入路由檔案。

  • module/Xxx/Api/routes.php:所有模組中的Api介面路由
  • app/Api/routes.php:系統應用Api介面路由

OpenApi開放介面

系統會按照如下的順序載入路由檔案。

  • module/Xxx/OpenApi/routes.php:所有模組中的OpenApi開放介面路由
  • app/OpenApi/routes.php:系統應用OpenApi開放介面路由

名詞解釋

名詞 含義 備註
Web 前臺管理 使用者處理使用者前臺相關功能
Admin 後臺管理 用於處理後臺管理相關功能
Api Api介面 用於處理使用者端前臺介面、手機端、小程式等請求
OpenApi OpenApi開放介面 使用者處理系統對外提供的標準介面,通常同時AppId和AppSecret授權
本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章