基於Typecho CMS框架開發大中型應用

2022-02-06 17:32:35 字數 1244 閱讀 1212

大中型應用暫且定義為:大於等於3個資料表的應用!汗吧!

typecho原本是一款部落格系統,其框架體系有別於市面上一般意義mvc框架,主體**以自創的widget為基類,整體非常簡潔。

單一入口

除db配置外,其他配置存於db中

路由配置也存於db中

自創widget層,無傳統model層

自創action層,類似傳統的controller層

hook機制

泛plugin機制,plugin包含註冊已有hook的handler、擴充套件已有widget的方法、註冊新的前端route以對映新的action、註冊後端管理介面

支援ui主題

我又不是typecho官方開發者,也不在相關背景單位segmentfault.公司工作,為什麼要用這種小眾框架?

事實上,你確實不需要用typecho,php世界的框架已太多,完全可以選擇更高階的框架。

不知從何時開始,我發現自己是乙個「小眾」患者,不喜歡走尋常路。就像linux在桌面領域可能已經夠小眾了,但我喜歡用更小眾的freebsd。

這只是我的一次嘗試而已。

原則:基於mvc模式,增加service層。

c層前面我們說過,typecho中自創了action概念,這便是我們c層的基礎,但action沒有明確的定義。所以我會定義出乙個controller基類。

m層typecho中沒有model的概念,都是直接呼叫sql查詢。所以也要定義model基類。

v層視**件是view的內容載體,為減少學習成本,不再引入模板引擎,即直接使用php語法並直接引人c中執行。

service層

在複雜應用中,mvc最大的問題就是可重用的**提煉不夠,有的人c層太胖,有的人m層太胖。引入service業務層,有助於對業務層的提煉和封裝,盡可能提高**的重複使用度。

demo專案:typecho alumni校友錄外掛程式專案

專案**結構:

/plugins/alumni/base/action.php|model.php|service.php|helper.php

/plugins/alumni/model/

/plugins/alumni/service/

/plugins/alumni/action/

/plugins/alumni/views/default/

/plugins/alumni/plugin.php

/plugins/alumni/panel.php

**********

未完待續...

基於Chrome開源提取的介面開發框架開篇

一直希望vc開發者能夠方便的開發出細膩高品質的使用者介面。我喜歡c 選擇的平台是windows,所以大部分時間用vc。我自身不排斥其他技術或者開發語言或者開發工具,都去了解,了解的目的是想吸取好的思想補充vc開發方面的不足。從事介面開發方面的研究有5年了,學過很多,嘗試過很多,失敗過很多,但是沒有氣...

關於框架開發

紀念 jar library installation jar檔案複製的目錄 2種方式區別 1.add checked libraries to project build path 把build path中引入的包指向myeclipse中lib的位置,就是把myeclipse中你需要的lib作為外...

Wildfish框架開篇

wildfish框架開篇 1.wildfish框架是什麼?這是乙個基於.net2.0的簡化資料訪問框架,他支援mssqlserver 完整測試通過 oracle 尚未完整測試 iseries資料庫 尚未完整測試 當然了,我也不是希望說自己的框架是萬能的。選擇的資料庫驅動都是支援 或者 來代表引數的。...