由招熟而漸悟懂勁

記得當初跟隨老師學太極拳時,老師常跟我們講忽靈勁,看老師表演得出神入化,但刻意去練卻怎麼也得不到要領。老師只教我們先學完整套拳架再練勁,等我們練完的拳架以後才發現,在我們招式熟悉後,體會到放鬆,勁道就自然出來了。正如太極拳論所言:由招熟而漸悟懂勁,由懂勁而「階」至神明。軟體設計開發,又何嘗不是如此。

軟體開發就如同練拳一樣,程式實作就相當於招式,一招一式好像是理所當然;但設計技巧如何,因人而異,面對相同問題,每個人可能會有不一樣的設計手法,程式寫得愈多,對設計愈有不同的體會,如果你對程式如何解決問題沒有深切的體認,很難設計出彈性及功能兼具的系統。所以以個人的心得來說,業務流程、演算邏輯及程式語言的技巧是招式的運用,而內化的領域知識、OOAD 的分析設計原則、封裝、抽象化乃至於 Pattern 的運用則是心法的展現。這兩者互相反覆搭配、增長。

招式的變化在於個人平常願意動手作及努力練習的心得;心法的流露則是懂得在特定的時機及場合採用適合的招式來因應、兩者相互配合才能開發出良好的軟體系統,設計實作系統原來和練功夫一樣。「階」字巧妙地說明了心法的加深是需要經驗不斷累積的,每個人會有不同的觀點,所以為避免陷於受限知識框架下,適當的社會化的交流是必要的。「相觀而善謂之摩」,透過相互溝通不同的觀點,以不斷地超越軟體設計開發的招式與心法。

Please follow and like us:
分類: 設計原則, 軟體開發。這篇內容的永久連結

在〈由招熟而漸悟懂勁〉中有 3 則留言

  1. 自動引用通知: 同人的生活派對 » 類別設計演化論

  2. 自動引用通知: 同人的生活派對 » 好的設計源自於紀律

  3. 自動引用通知: 同人的生活派對 » 程式設計的基礎

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。