開發框架,構件,組件非常地多,而且,趨勢是越來越多,特別是在java中。當然也不是說其它平臺的少。而特別是框架越來越被神化了,似乎用之解決一切問題,不用就要敲壞鍵盤。對于老衲這樣的打字員來說,還是很愛惜自己的鍵盤的。
框架為什么會被神化?首先,框架是N種項目同類型代碼、思想的提煉。它當然可以解決很多問題。比如java世界的Spring,Struts,Hibernate,Java EE;dotnet的ADO.NET Entity Framework,MVC,企業庫,NHibernate,NBear;Ruby的ROR等等。而框架被神化的另一點就是言必稱框架。不用框架就不是一個好架構,不用框架則后期維護就一定會出現問題。
而世上往往浮躁的人要多于踏實的人,用框架只管“怎么用?”,而不管其它的問題。以至于出現問題時,就無法解決。導致的問題,一般也不至于引起項目崩潰,但是很多項目出現版本脫離管理或者暫時混亂是肯定的。
特別是對于老衲這樣的菜鳥來說,更加吃力了。學習框架吧,但是一個完善的框架必然是起碼好幾百K的代碼,而且框架的代碼都是接口來接口去,看得是云里霧里,再抽根煙就更加形象了。不學習吧,總感覺很心虛,好像在造豆腐渣工程一般。
而且一般的問題介紹框架都是猛講配置,講原理的相對來說就比較少,梳理代碼的就更加少了。這弄得老衲都不敢用啊,出了錯,找誰去啊?這就是看著心癢,就是不敢下手。這就是一個惡性循環了,不敢去用,而不用呢又沒辦法懂,反正高手們也都不講詳細。狠下心的,過了橋了,沒下決心的還在河邊等。
但是學也無從學起啊,剛搞java的,直接學框架那可是比跳樓還有難度。dotnet的還好一些,比較配置相對簡單一點。
那來搞清楚什么是框架?那是一個復合代碼重用,設計重用,也可能有分析重用的一個東西。框架也是用初學者從書本上看到的那些個簡單語句關鍵字開發出來的。比如,java里的jsp、serverlet、javabean看似過時了,但是Spring,Struts這些東西的基礎還就是那些東西,只是整合得非常好而已。這樣看,框架似乎也沒什么大不了的嘛,學學基礎,學學設計模式,自己也可以搞一個出來。
當然,實際上也沒那么簡單,開發一個框架要考慮各個層面上的問題。而這些東西了,就不去扯了。重要的是知道去學基礎的東西并不是一種倒退,不用框架頁未必開發不出好東西來。設計跟開發是兩碼事情,有些人可能覺得設計能力很牛了,拿到個項目就可以畫出個結構圖出來,分層分得很好。但是不一定能開發得出來。看過幾天UML估計都可以畫出那個圖,實踐那個圖的能力要比畫的難度大得多。
有時候經常想啊,嘗試去遭遇各種問題,再來學框架啊設計也許會更加深入一些。不遇到根本就不會產生那種共鳴,也就能背背書,背出來的東西不知道去哪里用。
?轉自:http://www.cnblogs.com/birdshover/archive/2008/11/26/1341568.html
?
很老的文章,現在再讀讀,很感觸。很有意思,各位覺得呢?