從「凌波微步」到「道法自然」

2021-03-31 08:56:58 字數 1592 閱讀 3214

從「凌波微步」到「道法自然」(專家韓磊

2004-9-20 10:58:12)12人同意、20人反對

王詠剛的文章,曾經在《程式設計師》雜誌以「凌波微步ii」的專欄題目發表過多篇。其實這個專欄是其著作《凌波微步》的後續——蓋作者認為一本書尚不足道盡各種秘辛,故另闢疆土,繼續戰鬥。

聽說王詠剛與其兄長王詠武合著《道法自然——物件導向實踐指南》,不由得心中一驚——王氏作品,常因為「務虛」——一些讀者的看法,我對此並不贊同——而為人所詬病,寫這樣一本書,是否意味著某種意義上的「硬著陸」呢?再,物件導向是每位程式設計師耳熟能詳、甚至每天要幹的事情,這樣一本書,會不會讓人覺得是老生常談,絮絮叨叨不知所云呢?避「虛」就「實」,再加上乙個普通得不能再普通的題目,這本書的命運似乎就值得擔心了。

從博文公司拿到還沒有出版的《道法自然——物件導向實踐指南》,看完之後,有幾個感覺:

一、 不管是軟著陸還是硬著陸,這本書的確落到了實處。全程跟蹤解析乙個實際專案,描述過程中種種問題及解決方案,總結出應當遵循的原則……每一章節都是來自於實踐,也對專案實踐有指導性的意義。

二、 在回歸實踐的同時,作者眼界卻比《凌波微步》時更高了。我們每天都在將世界抽象為類,都在不停地建立物件,都在與繼承、介面打交道;在因為對這些技術運用自如時,往往會陷入偏執,執著於尋找「銀彈」——放之四海而皆準的物件導向解決方案。書中告訴讀者:物件導向領域充滿了辯證關係,開發者不得不在每乙個設計和實踐環節中仔細權衡,擇善而從。這句話可謂是貫穿全書的「書眼」,一語道破天機。的確,在專案開發過程中,每一階段都會面臨和做出選擇,誤入歧途的結果就是滿盤皆輸。可以說整個專案開發過程,就是不斷做選擇的過程:從需求分析到具體實現,從系統框架到乙個類的設計。沒有選擇的專案是不可想象的。

三、 如果說《凌波微步》是銷金斷玉的寶劍,那麼,《道法自然——物件導向實踐指南》就是一把黑黝黝實沉沉的重劍。所謂「重劍無鋒,大巧不工」,這把重劍讓我們看到王氏兄弟輕靈步伐後面的深厚功力和豐富經驗。那些不喜歡《凌波微步》的程式設計師讀者,大可在這本書中扭轉對作者的印象。俗語說得好:光說不練是假把式,光練不說是傻把式。前後兩本書,一說一練,形成了有趣的對比。

《道法自然——物件導向實踐指南》是作者經驗和理論的凝聚,雖然是講乙個專案,但聰明的讀者卻能從中悟出禪機來。我想要緊的是怎樣去讀這本書。書的開頭,作者就給出了「乙份關於本書的faq」,給出了具體的指引。我總結一下,再加上點自己的理解,大致如下——

一、 你需要有基本的物件導向知識和技能(也包括uml相關知識)。這本書不是入門讀物,不會教你怎麼扎馬站樁,對oo一無所知的朋友,應該先去補補課。

二、 你要做好被頓喝的準備。曾經見過許多以用物件導向語言開發的非物件導向程式,這些程式的作者,也許會被接連不斷的「頓喝」打擊得不知所措。

三、 善於模仿、善於總結。閱讀這本書的過程,如同在**別人練劍術。練劍者也許不會把每一招的訣竅和要點講出來,對整套招數的講解也許只停留在點到為止的層面。這時,如果你能一步一步跟著書中專案組成員去做,隨時思考,再從全域性角度返觀內照,才能悟到「劍法」之外的「心法」。

我會毫不猶豫地向每一位程式設計師推薦這本書。同時我也強烈期待作者的下一部著作。從《凌波微步》到《道法自然——物件導向實踐指南》,是從寶劍到重劍的轉變;下一本書,能否來一次徹底昇華,「枯枝斷木,無不遂心所用」,真正做到「道法自然」?想必這也是作者自己想去回答的問題吧。

STL 凌波微步

小z的體型實在是太胖了,每次和小d一起出門都跟不上小d的腳步,這讓小z很氣餒,於是小z跋山涉水,仿名山,遍古蹟,終於找到了逍遙派。掌門看小z求師虔誠,決定傳小z一套 凌波微步 這種腿法可以無視距離的行進,但缺點是只能走向高處,否則強行發功極易走火入魔。一天,練習 林波微步 的小z來到一處練武場,這裡...

《凌波微步讀後感》

讀了老師推薦的 凌波微步 之後感覺這本書寫得十分的有意思,這本書就像是開發過程中原始經驗的羅列。其中每一章節都涉及一些小案例,將我們開發軟體過程中所遇到的問題都描述出來,是軟體開發的警戒故事集。它也是錯誤的開發行為和正確的開發行為的彙總,足檢驗我們開發經驗是否豐富 開發技術是否熟練的實驗指導書。涉及...

wince軟鍵盤的凌波微步

在彈出的模式對話方塊中,如果有編輯框,需要自動顯示軟鍵盤進行輸入,並且自動調節軟鍵盤位置。如果不是編輯框,則應該關閉軟鍵盤,並設定到原始位置。繼承了cedit類,處理其獲得焦點和失去焦點的訊息 on control reflect en setfocus,onsetfocus on control ...