原文地址:http://www.brandonsavage.net/write-maintain-use-framework/
注:本篇文章主要是針對有經驗的開發者,盡管本文內容適用性很廣,但我并不建議所有人都去創建并維護自己的框架,除非你很清楚自己在干什么。
在我們 PHP 社區,開發者的身份通常與這門語言和所采用的框架緊密地綁定在一起。說不清是好還是壞,我們的職業生涯也與某一技術平臺緊密相連,同時還投入了大量的精力在這個平臺及其文化和支持工具上。
然而,相比編程語言本身,工具的生命周期要短的多。在 PHP 社區中,有無數的框架涌現然后消逝,將來還會有更多的框架出現、流行,最后淡出視野。這是事物的自然規律。
這其實沒什么大不了,因為框架本身并不重要,重要的是蘊含在框架之內,在開發實踐中我們所信奉的一系列原則。
框架代表了一種固執己見的軟件開發方法,框架維護者通過框架給出了軟件應該是什么樣子的一個范例。而使用者,無論是出于義務還是認同,他們信奉并采用了框架維護者的這種開發哲學。
但我們今天接受的范例可能在未來被新的所取代,所以框架總是不斷更替。
在多年嘗試尋找最好的框架未果后,我認識到對我來說真正重要的不是正確的范例,而是正確的實踐。正因為如此,我意識到我需要開發、維護和使用我自己的框架,一個能代表我所信奉的一系列原則而不是某一特定時刻非常有用的各類范例的框架。
老實說,將我自己使用的骨架代碼稱之為框架多少有點難為情,因為大部分的核心功能都不是我自己實現的。事實上,我采用了許多其他的包,這些包所代表的最佳實踐非常有用。我自己的框架扮演了“膠水”代碼的角色,將這些包有機地組織在了一起。
這是我們這個時代的編程之美——輕松地整合各類不相干的包并創建出新的東西。對于任何一個框架或庫,你都不用全盤接受,你可以從這取一點,從那拿一些,只采用你認為有用的部分。當我剛開始接觸 PHP 時這一切都很難想象,直到有了Composer。
我把注意力集中在擁抱那些對我很重要的原則和實踐上,而不是某一特定框架的主張和范例。這招兒對我很管用!
當忙碌的一天結束時,最為重要的是代碼的可讀性、可維護性和正確性。當前流行的范例終有一天會被取代,但衡量代碼品質的標準卻會長存。
所以,是時候停止尋找所謂的完美框架了,把精力集中在最佳實踐和如何將其納為己用上吧。
我為創建、維護和使用自己的框架而自豪!