簡體   English   中英

正確編碼 PHP,給 OO 編程新手的建議

[英]Code PHP Correctly, advice for a newb to OO programming

我即將開始編寫一個新網站。 我的問題是我仍然堅持使用老式的編碼方法。

我最近從 Question2Answer.org 下載了一些開源代碼,並且對它的設置方式非常感興趣。

有誰知道任何來源? 或者我可以下載的東西、模板或示例來幫助我開始使用新站點? 該網站不會有任何花哨的東西,但我想開始轉向 Web 2.0 和 OO 編程。 簡而言之,我想把它做對。 任何意見,將不勝感激。

人們選擇 PHP 作為服務器端腳本語言是有原因的。 它非常容易上手,並提供了許多不同的編碼選項。 包含許多函數而無需事先知道導入,如果您不想,您不必編寫 OO 代碼。

這一切也導致了巨大的失敗,因為對代碼結構的限制較少,編寫糟糕的代碼要容易得多。

我建議使用框架。 它可以節省您的時間、精力和編寫錯誤代碼的機會:

CakePHP 是一個 PHP 快速開發框架,它為開發、維護和部署應用程序提供了一個可擴展的架構。 CakePHP 在約定優於配置范式中使用眾所周知的設計模式,如 MVC 和 ORM,降低了開發成本並幫助開發人員編寫更少的代碼。

http://cakephp.org/

http://www.phpframeworks.com/

似乎這個問題沒有得到很多答案,所以我會嘗試一下(盡管我會推薦一種不同的語言,只是因為 PHP 是一種非常糟糕的語言)。 PHP 是我寫過的大事的第一種語言,我當時希望知道的一件事是 MVC 設計模式。 它有一些優點,例如:

  • 邏輯和 UI 的分離意味着更少的 ad-hoc 代碼,更多的功能(盡量遵循“每個功能做一件事”的規則——當你回頭看代碼時,它會讓事情變得更容易)
  • 函數比巨大的無函數頁面更容易驗證正確性
  • 可以對函數進行單元測試(這樣做!)
  • 更容易找出事物的位置(數據庫邏輯在一個文件中,HTML 在另一個文件中,“控制器”邏輯在另一個文件中)

這是MVC的一個很好 的高級介紹

關鍵點:

  • 該模型與數據庫(或您正在使用的任何其他存儲)對話。
  • 視圖顯示事物 (HTML)
  • 控制器做其他一切

我在這里這里找到了兩個好看的 PHP MVC 教程。 希望它們不會太復雜,如果有任何問題,請隨時提出更多問題。

祝你好運!

PS - 不要忘記關於單元測試的要點! 如果找不到對函數進行單元測試的方法,那可能太復雜了。

IMO MVC(和這個 OOP)沒什么特別的。 它基本上是一個函數,用於在數組中注冊指向函數的指針,例如鈎子。 這個數組被另一個函數查找來做一些事情。 一個好的 MVC 應該有回調函數。 IMO 這個面向對象的東西更像是一種商業邏輯,可以幫助您通過應用程序獲利。 這並不是很難理解的事情。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM