構架不是絕對(duì)必要的(de):它“隻是”幫助你開發得(de)又好又快(kuài)的(de)工具之一!
更好,是因爲框架可(kě)以确保你開發出完美(měi)符合業務需求的(de)程序,同時(shí)具備可(kě)維護性和(hé)可(kě)升級性。
更快(kuài),是因爲框架能令開發者複用(yòng)通(tōng)用(yòng)模塊而節省大(dà)量時(shí)間,從而集中精力在其他(tā)地方。從來(lái)不需對(duì)框架本身過多(duō)關注。
投資任務,而非投資科技
這(zhè)是框架的(de)基本原則:不要重複地發明(míng)輪子。廢除無謂和(hé)低價值的(de)任務(比如,去開發一個(gè)通(tōng)用(yòng)模塊)是爲了(le)集中全力到業務邏輯上。
舉例來(lái)說,框架可(kě)以令開發者避免用(yòng)2-3天的(de)時(shí)間來(lái)創建一個(gè)驗證表單(這(zhè)是在沒有特殊要求的(de)情況下(xià))。 省下(xià)來(lái)的(de)時(shí)間,可(kě)以專注于更多(duō)的(de)特殊組件,也(yě)可(kě)以用(yòng)在相關的(de)單元測試上;框架能給你健壯的(de)、可(kě)持續的(de)、高(gāo)質量的(de)代碼。
保證了(le)可(kě)升級性和(hé)可(kě)維護性
從長(cháng)遠(yuǎn)看,框架可(kě)确保你的(de)程序的(de)長(cháng)期性。 如果一個(gè)開發團隊願意,他(tā)們可(kě)以輕而易舉地維護和(hé)升級程序。 此一方式有如出版者(無條件地願意去)支持版權解決方案一樣。
另一方面,框架從結構上令程序避免了(le)全部陷阱,而且給了(le)程序員(yuán)——不管他(tā)們是否參與了(le)項目開發——以輕松“适應”程序的(de)能力, 無論何時(shí)需要,後期的(de)維護和(hé)升級都将又快(kuài)又簡潔。
從這(zhè)點看,框架并不是一個(gè)黑(hēi)匣子! 以Symfony爲例,它就是PHP而已……用(yòng)它開發出來(lái)的(de)程序并不局限在Symfony宇宙之中, 它們是 natively interoperable(原生可(kě)互用(yòng)的(de)),可(kě)以同其他(tā)任何PHP類庫協作。