第七課 建立基本開發模式

日期:2008-09-24  作者:喜騰小二  來源:喜騰網  培訓中心

  開發軟體必須擁有一定開發模式,目前軟體開發流行采用OOP模式(Object Oriented Programming,麵嚮物件的程式設計)。麵嚮物件編程(Object Oriented Programming,OOP,麵嚮物件程式設計)是一種電腦編程架構。OOP 的一條基本原則是電腦程式是由單個能夠起到子程式作用的單元或物件組合而成。OOP 達到了軟體工程的三個主要目的:重用性、靈活性和延伸性。

開發實例我們將采用 SNS (Social Networking Services,社會性網路服務)MINI版本作為演示,為了讓大家快速適應PHP開發方法,其中40%以上程式碼采用oop模式。

  SNS:Social Network Software,社會性網路服務軟體,依據六度理論,以認識朋友的朋友為基礎,延伸自己的人脈。並且無限擴張自己的人脈,在需要的時候,可以隨時獲取一點,得到該人脈的說明。

  SNS是一個采用分散式技術,通俗地說是采用P2P技術,建置的下一代基於個人的網路基礎軟體。SNS透過分散式軟體編程,將現在分散在每個人的裝置上的CPU、硬碟、頻寬進行統籌安排,並賦予這些相對伺服器來說很渺小的裝置更強大的能力。這些能力包括:計算速度,通信速度,存儲空間。

  社會性網路(社會網路,Social Networking:SN):是指個人之間的關係網路,這種基於社會網路關係係統思想的網站就是社會性網路網站(SNS網站)。現在許多WEB2.0網站都屬於SNS網站,如網路聊天(IM)、交友、視訊分享、網誌、播客、網路社區、音樂共用等。社會性網路的理論基礎源於六度理論(六度分隔理論,Six Degrees of Separation)和150法則(Rule Of 150)。另外不僅現在一些大公司網站開始了一些SNS應用,一些垂直領域的行業站點也開始了SNS的嘗試,並且效果不錯。

  SNS的技術起源:在網際網路中,PC機、智慧手機都沒有強大的計算及頻寬資源,它們依賴網站伺服器,才能浏覽發佈資訊。如果將每個裝置的計算及頻寬資源進行重新分配與共用,這些裝置就有可能俱備比那些伺服器更為強大的能力。這就是分佈計算理論誕生的根源,是SNS技術誕生的理論基礎。

開發前我們需要讓PHPER知道什麼是MVC?
MVC是一個設計模式,它強制性的使應用程式的輸入、處理和輸出分開。使用MVC應用程式被分成三個核心部件:模型、視圖、控制器。它們各自處理自己的工作。

大部分Web應用程式都是用像ASP,PHP,或者CFML這樣的過程化語言來建立的。它們將像資料庫查詢陳述式這樣的資料層程式碼和像HTML這樣的表示層程式碼混在一起。經驗比較豐富的開發者會將資料從表示層分離開來,但這通常不是很容易做到的,它需要精心的計劃和不斷的嘗試。MVC從根本上強制性的將它們分開。儘管構造MVC應用程式需要一些額外的工作,但是它給我們帶來的好處是無庸質疑的。

  首先,最重要的一點是多個視圖能共用一個模型,現在需要用越來越多的方式來訪問妳的應用程式。對此,其中一個解決之道是使用MVC,無論妳的使用者想要Flash介麵或是 WAP 介麵;用一個模型就能處理它們。由於妳已經將資料和業務規則從表示層分開,所以妳可以最大化的重用妳的程式碼了。

  由於模型返回的資料沒有進行格式化,所以同樣的構件能被不同介麵使用。例如,很多資料可能用HTML來表示,但是它們也有可能要用Macromedia Flash和WAP來表示。模型也有狀態管理和資料持久性處理的功能,例如,基於工作階段的購物車和電子商務過程也能被Flash網站或者無線聯網的應用程式所重用。

  因為模型是自包含的,並且與控制器和視圖相分離,所以很容易改變妳的應用程式的資料層和業務規則。如果妳想把妳的資料庫從MySQL移植到Oracle,或者改變妳的基於RDBMS資料源到LDAP,隻需改變妳的模型即可。一旦妳正確的實現了模型,不管妳的資料來自資料庫或是LDAP伺服器,視圖將會正確的顯示它們。由於運用MVC的應用程式的三個部件是相互獨立,改變其中一個不會影響其它兩個,所以依據這種設計思想妳能構造良好的鬆偶合的構件。

  對我來說,控制器的也提供了一個好處,就是可以使用控制器來聯接不同的模型和視圖去完成使用者的需求,這樣控制器可以為構造應用程式提供強有力的手段。給定一些可重用的模型和視圖,控制器可以根據使用者的需求選擇模型進行處理,然後選擇視圖將處理結果顯示給使用者。


MVC流程圖:



對於陌生的phper來說似乎一頭霧水,不知道如何理解這個圖,現在我們簡單講解下。

web程式開發的時候很多時候也要對開發目錄進行設計,如果設計的合理後期將會大大節省維護時間、開發與升級都將受益。


我們本次開發采用單入口,就是透過一個控制器來操作整個網站。

架構圖:


架構介紹先到這裡,下課我們將實例開發。

技術考試

上一篇

下一篇

喜騰培訓

站內新聞

我要啦免费统计