天天看點

用PHP寫架構用架構寫應用程式

原位址:http://www.phpchina.com/html/61/31261-15911.html

現在有一個明顯的趨勢讓PHPer必須清醒地認識到自己無論如何被配置設定在兩大陣營中,别無選擇:

要麼是開發架構,要麼是開發應用程式。

乍看之下會有人罵這個說法是脫褲子放P,本來就沒有第三種,你不是就說了一句:“人有兩種:男人和女人”。

這是個定義的問題,我也可以說人隻有兩種,好人和壞人,那有人要問,不好不壞的人算什麼?

很簡單:壞人。

人以好壞的标準和以性别的标準來區分是不同的,因為,我們沒有辦法把陰陽人歸到男人或者女人當中,這類人是極個别的另類。

以此類推:PHPer有兩種:優秀的和不優秀的,如果有人要問,有點優秀又帶點不優秀的,算什麼?

很簡單:不優秀。

這與把人分成好人和壞人的标準有點類似,回到今天的主題:PHPer如何成長發展?

題目給出了我的答案,先把自己歸到一個類中,你是優秀的還是不優秀的?

優秀的,去寫架構,再把架構給不優秀的人去用。

不優秀的,老實點,拿個架構去用用吧。

講一句跳出PHP(森林)進入到其它區域如JAVA或C(海洋或城市)的題外活,我下載下傳過一次PHP的源代碼,再沒有下載下傳第二次,我不敢了,對我來說,那是一個無比高深的領域(盡管讀大學時我的C成績是九十多分)。這個領域屬于神的範疇。我要證明的是:沒有哪個哥們會說學PHP是為了将來寫PHP吧?

我敢保證:學PHP的人也沒有幾個是為了寫架構的。

他們學PHP,是為了寫應用程式的。

結了,要寫應用程式,又回到我的主題上來,拿個架構用用吧。

有人不滿了,說老子從來不用架構!

可是你算老幾?在PHP的森林裡,你連個螞蟻也算不上!不用架構寫應用程式的人都隻是PHP森林中的食草類動物,在弄點青草提心吊膽地把自己的肚子弄飽的同時,還要擔心皮肉會否成為哪隻獅子老虎的早飯。

因為什麼?讓不用架構的你如此脆弱?

太多的元素了!你的程式沒有結構,好象堆在地上直不起腰來的一堆爛肉;你的代碼象一堆亂草,就算藏滿珍寶也無人能夠找到;你的ORM部分單薄得經不起一點風吹草動;界面不能修改否則隻能另起爐竈;一旦多了幾個點選,秀頁面慢得象蝸牛讓人無法忍受,而且當抱怨砸到你頭上時你對于如何修改束手無策還罵他媽的 SMARTY也不過如此!

凡此種種,跳出來吧,用個好架構治一下你内心的傷痛吧!

不要以為架構是别人做出來玩的。那是對PHP以及其他相關種種軟體技術的提煉,沒有修為和多年的浸淫是做不出來的。

在此我要駁斥那些說看過(就算精通吧)某本基礎入門程式設計書的人就達到了中進階水準的說法,那純粹是誤人子弟。沒有實戰的證明哪能說你是中進階水準了呢?中進階的标準是你訂的嗎?

打個比方來說明這個觀點:某本程式設計書,就好比是一本英語詞典或者文法手冊,退一步,再加你一本經典範文,把這三樣東西搞好就能精通英文了,就達到英語的中進階水準了,鬼也不信的謊話!

PHP和英語一樣,是不能創造的, 也是不能速成的,涉及那麼多的軟體技術和網際網路技術,那能有大力丸吃?

PHP和英語一樣,是有方法可依的,什麼是方法?就是一種遵循的原則,這個原則的核心就是學習優秀源代碼,有品質地積累到一定的程度。也就是熟讀唐詩三百首的理論

三百首,其實是“很多首”的轉義,就是要多,“熟讀”強調了品質标準,不能走馬觀花,要紮實,“唐詩”代表經典,表示你不能眉毛胡子一把抓,要取用精華。

PHP 中的“唐詩”在哪裡?就在優秀的架構裡,同樣實作一個功能,架構上升到了理論的高度,集中了世界上優秀PHPer的集本智慧,拿一個來用,先不要看它的源代碼,把它一步一步掌握得很熟練,用到你的應用程式中,這樣你的系統就不再是一堆爛肉而是有骨胳支撐了。用架構中包含的好的對象方法去實作所有的功能,比比自己寫的和架構中的差距到底在哪裡?認真地用這個架構寫上幾個系統,比如電子商務,部落格,論壇,CMS,在學習和使用的過程中,碰到不會的,不了解的,抓一本“字典”來用用(字典就應該是這麼用的,而不是光拿本字典來背)。

   把架構用到爛熟了,就到了看看葫蘆裡賣的什麼藥的階段了,打開來,細細地研讀,分析,這個時候,你就處在編寫PHPer應用程式這個群體的上層了,如果有興趣成為編寫架構群體中的一員,這時才是你的新的起點。如果不願意做制造工具的人,你也應該了解支撐架構“優秀”名聲背後的技術,否則是不能把架構的功能發揮到極至的。

在此也要給國内正在制作或将要制作架構的人提個醒:第一,編寫你們的架構時,要尊重開源的遊戲規則,要取之有道;第二,要在架構中使用别的優秀成果,以使你的架構更強健。現在國内的架構很強調易用性,但是健壯性呢?在發明了很多看似時髦的新技術名詞時,是否想到會否太偏離整個PHP技術的大家庭呢。