今天,我是想說一下,關于書的最后一章的那個文本編輯器的實例。呵呵,有讀者認為設計的過于復雜了,其實我也這么認為。不過,我并不否定在最后一章插入這么一個“復雜設計”的實例。
首先,這是一本書。書的內容要求連貫,前后一致。這本書的內容其實都是圍繞一個主題,就是“如何構建良好設計的代碼”,前六章基本都是理論的描述以及很抽象的例子,比如:可樂管里放汽油,呵呵。沒有一個實在的實例,讀者看完全書都一定還是云里霧里,原先懂的就懂,原先不懂的,還是不懂。有了實例,讀者至少對那些理論有一些“落實”的感覺。
其次,或許對于實際應用來說,這個實例的代碼設計過于復雜了。要實現一個文本編輯器,其實不用那么麻煩,呵呵。這種應用,代碼規模一般也就在一千到兩千行左右,真的要換個編輯器組件,重寫一個也不費事。不過,問題是,這個實例還是在書上的,也就是作為一個教具,它的作用不僅僅在于一個示范,而更在于能讓讀者留下“設計”的印象。因此,“設計”的痕跡就很重,矯枉必須過正。
另外,我認為,專業程序員的成長會分為三個階段:
1、初級,特點:偏重實現,以能實現功能為榮,以此成就感作為前進的激勵
2、中級,特點:隨著代碼量的積累,想重用以前寫的東西,開始關注設計,崇拜設計,以自己的程序中使用了很炫的設計技巧為榮
3、高級,特點:從“崇拜”設計開始回歸,能夠輕易構建出較好設計的代碼,但不會走火入魔,為設計而設計
《Delphi高手突破》名稱雖然為“高手突破”,但其實并不是寫給上述的高級或者中級程序員的(書名是出版社指定的,我也沒法,不過你也可以把“高手突破”理解成“成長為高手的畢竟之路的突破點”)。而是寫給那些還著重于實現功能的初級程序員的,至少,我是想指出一個提高的方向。
最后,就是書的篇幅有限,不可能做一個很龐大的應用來作為實例,至少在這本書里是不合適的。中國程序員還是窮的多,書寫厚了,買的人少:)。我寫這本書的初衷,也還只是希望能給像我曾經一樣迷茫的程序員帶來一些幫助,喚起某種意識就行了,真要深入學習、研究,一本書絕對不夠的。如果你有了這樣的意識,可以買大部頭來看。
新聞熱點
疑難解答
圖片精選