原來如此!一分鐘了解什麼是框架

2021-09-19 12:02:53 字數 2399 閱讀 9400

php框架,英文為framework,關於其定義,這裡給出了一些解釋。

這些定義各有千秋,可是太抽象,在我看來,框架就是指僅含基本結構的php**

雖然這個定義不太嚴謹,但仍舊是足夠準確的,非常直觀清晰具體

泛泛而談等於不談,就這麼說乙個定義,理解起來還有些茫然

要說清它是什麼,弄明白它是如何產生的就行了。

接下來就模擬一次框架的誕生過程,就樣我們就能理解框架到底是什麼啦!

框架是用來做**的,所以我們就從做**入手。

首先要有乙個html頁面。

首頁列表頁

內容頁關於頁

****頁

這五個頁面有一些內容是一樣的,比如說頁面頭部(header),足部(footer)。

我們就把這些內容抽出來,這樣就有了可復用的頁面。

這就是php靜態**。

可以自由地新增文章

文章存在資料庫

可以對文章進行分類管理

內容管理系統(cms)不同於簡單地復用php頁面,它有較複雜的結構:

列表頁、內容頁是可復用的,就將其變成模板檔案

增加乙個管理頁面,能讀取我們的輸入,再替換模板檔案,生成最後的頁面

增加對資料庫的增刪改查功能

**的結構變成了三層mvc,這就是內容管理器(cms)

現在我們不光想做部落格**,還想做購物**工具類**。對於這些**,本質上仍屬於內容管理,都能用內容管理系統(cms)來實現。

我們要實現新的需求,可以有以下兩種做法:

根據需求從頭到尾重新寫乙個內容管理系統(cms)

使用已有的內容管理系統(cms)做定製開發

第一種做法:如果自己寫乙個內容管理系統(cms),一切從頭開始,費時費力

第二種做法:使用現成的內容管理系統(cms)來進行定製開發,還需要了解這個cms的原始碼,同樣很麻煩

能否有一種簡化的內容管理系統(cms),去掉所有的模板,介面內容,僅保留對於資料庫的互動,和自動生成頁等易於拓展的基礎功能?

這個簡化的cms就是原來cms的基類合集,框架的概念就誕生了。

它是僅僅保留了mvc結構的cms,相比cms,開發的靈活性更大,同時又可以節省開發時間

以上就是不夠嚴謹的框架說明。

既然不嚴謹,為什麼還要列出來呢?

因為框架的抽象不同於其他抽象概念,它並非某個人或機構提出來的有標準的東西,而是隨著網際網路發展,被不斷出現的新框架不斷地被更新出來的。

所以對於像框架這種沒有標準的概念,只能是不斷地通過不嚴謹的說法來進行修正。

一分鐘了解索引技巧

花1分鐘時間,了解聚集索引,非聚集索引,聯合索引,索引覆蓋。舉例,業務場景,使用者表,表結構為 t user uid primary key,login name unique,passwd,login time,age,聚集索引 clustered index 聚集索引決定資料在磁碟上的物理排序,...

一分鐘了解負載均衡

什麼是負載均衡 負載均衡 load balance 是分布式系統架構設計中必須考慮的因素之一,它通常是指,將請求 資料 均勻 分攤到多個操作單元上執行,負載均衡的關鍵在於 均勻 常見的負載均衡方案 常見網際網路分布式架構如上,分為客戶端層 反向 nginx層 站點層 服務層 資料層。可以看到,每乙個...

一分鐘了解 TCP IP 模型

原文講的不是特別細,為了便於理解,我顛倒了順序。寫在開始我們需要知道協議到底是什麼。在網路上,乙個協議對應於管理系統之間如何相互通訊的規則。然後我們需要知道什麼是協議族。乙個協議族是一系列協同工作的協議的集合。什麼是 tcp ip 模型?tcp ip 傳輸控制協議 網際網路協議 由 darpa 在 ...