1. 程式人生 > >一個方法實現一個單一的功能:one method one function

一個方法實現一個單一的功能:one method one function

一個方法實現一個單一的功能?one method one function

大部分情況下,這都是可以實現的!每個方法程式碼行基本上不要超過一屏,特殊情況例外。這玩意真是隻可意會,不可言傳。你看著辦吧。

1 幫助你理清思路,鍛鍊邏輯思維能力。

想象一下,如果你能將一個大的功能分拆成一堆方法,每個方法都各司其職,是不是能夠鍛鍊你的大腦?一個大的難題都是可以分拆成更小的單元,然後加以實現。

拆分成方法以後,重用程式碼、重用邏輯就更容易實現了,讓你少寫一些邏輯相同但程式碼不同的函式。

再拔高一下,想象一下,假設你是一位軟體架構師專家,你是不是需要很熟練的將一個超級複雜的系統,拆分成一個個小功能,再將每個小功能,拆分成一個個類和方法。

如果說,你沒有大局觀加上邏輯推理,那你估計要冒虛汗了。

從工程學角度上說,軟體工程還不夠成熟,而那些建築學、機械製造這些工程都已經是非常成熟了。軟體和機械製造很類似。

將一個功能比作造一輛家用汽車,那麼汽車的每一個零件就像是一個方法、一個函式。

假設你寫了一個方法,好比是一個螺絲帽,寫的好的話,標準制定好,讓大家都知道這個螺絲的存在,那麼整個車都可以用這一個螺絲,這樣是不是節省了很多時間?

如果你要調整螺絲的色澤、粗細等,只要整車都適用,那麼,修改螺絲帽也是一件很容易的事情。

這也同樣鍛鍊你的統籌規劃、設計的能力,容易培養你的大局觀!

如果你對整輛車的各個零件都無比了解、熟悉!那麼你的思路自然更清晰,它可以讓你站的更高,看的更遠。

可以讓你有能力做更加有挑戰性的工作。比如這時,讓你設計製造一輛跑車,再讓你製造卡車、飛機......也許這一切都不是夢。

總結:沒有清晰的思路,沒有邏輯推理,你還寫什麼程式碼啊,^_^

2 封裝模組化

將一個個相對獨立的函式、類做一個封裝,相對獨立,留有介面。這樣的好處更是顯而易見!

在以前,你會經常看見汽車大修,發動機都拆開了修理。以前能找到故障汽車毛病出在哪都是個大麻煩。但是現在呢?現在你見過汽車大修嗎?

現在講究封裝模組化。汽車哪個地方壞了,直接換模組。比如發動機壞了,拆了換新的。

模組化把複雜的邏輯封裝起來,將來要更換哪個模組,哪個模組需要優化,哪個地方出問題了都將一目瞭然。

人類正是靠著這種功能拆分、模組封裝手段,來做出規模更大的事情。

人的大腦記憶是非常有限的,一般就7個以內,再多就需要藉助工具、影象了。

為了記住更多的東西,擁有更大的能力,人類發現了一個類似框架的東西!

自古以來,人類憑藉豐富的經驗,將複雜的細節做一系列的模組封裝,忽略細節,然後建立了無數個框架。

這些框架經過了無數實踐的考驗,不斷的優化。好的框架能夠幫助你快速做出快速準確的決策,讓你站的更高,看的更深、更遠。

當然也有更多的框架,因為過時、不夠成熟而丟棄。

軟體也一樣,將函式方法等很多細節封裝起來,變成類、包,再組裝成模組,這些模組就構成了一個或多個框架,萬變不離其宗!

統籌設計將一個大的任務做工作分解,一直分解到每一個函式!

那麼,你覺得,你是不是先從最小處開始做起,一個函式實現一個功能!