日本国产亚洲-日本国产一区-日本国产一区二区三区-日本韩国欧美一区-日本韩国欧美在线-日本韩国欧美在线观看

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

庖丁解羊--閑談編程思想(轉)

庖丁解羊--閑談編程思想(轉)

更新時間:2022-04-26 文章作者:未知 信息來源:網絡 閱讀次數:

庖丁解羊

----閑談編程思想

作者:HolyFire

經過多年的編程,我發現編程的思想對一個程序員是至關重要的,以前拿到一個問題,馬上就開始考慮如何來一點一點把他用代碼來實現,于是啃啊啃啊于愁眉籠罩千辛萬苦下每完成了一點就欣喜若狂。編著編著發現這里不足,那里沒考慮到于是東補補西湊湊,異常蹩腳的完成了一個小程序,當時的感覺就像我完成了全世界,或許那個時代是我最開心的。

完成了四五個程序的我,開始發現我做了很多重復的勞動,于是乎開始做我的程序庫,編寫功能型模塊。想到了這些模塊只要寫一遍就可以受用無窮不禁得意洋洋,或許那個時代我是聰明。

當我寫了五六千行代碼的時候,我發現我寫的功能模塊已經記不清什么是干什么的了,而我已經習慣使用別人寫的比我好的模塊時,我開始迷茫,我做的一切究竟是為了什么。這時我開始研究別人的代碼,開始懂得什么是優化,什么是數據結構,什么是數學建模,我開始研究應用數學和軟件工程。這時我開始使用C++用類來寫程序,或許那個年代我是明智的。

當我寫了四五十個*.h和*.cpp后,開始發現我寫的類一點都不通用,無法再利用。我開始深入學習類以及面向對象,明白了繼承和封裝,這時的我才開始深深思考什么是重要的,于是我開始分析問題而不是一上手就開始編代碼。或許以前的我是個傻瓜^_^。

我足足花了三年多的時間來浪費我的青春做了別人僅需一年的事情(當然著三年中我積累的經驗不可能是一年能做到的,但是對于編程上的修養,我浪費的時間已太多),如果你們沒有意識到這點,或許也會浪費很多時間。

分析能力對一個程序員來說是一個重要的屬性,它直接關系到你對事物的理解能力和組織能力,程序員做的工作就是將一個事物分解成數學元素然后重新組織在計算機里重現,所以如何處理事物是個要點。

我們了解一個事物并進行描述的時候,往往是先處理它的一部分,接著處理另一部分,然后等所有的部分都處理完的時候,具體的事物就重現了。比如給一個不知道山羊的人介紹山羊,如果你對他說山羊就是山羊,他是無論如何都不會明白的。如果你說山羊是一種有四只腳的腦袋上有兩只角,還有短短的尾巴,那他模模糊糊會有些形象在腦海里了,如果加上有絨絨的毛,可笑的胡子,咩咩的叫的食草動物,至少他不會和牛混淆起來,如果你能描述的更詳細更好,那他有九成知道山羊是什么樣子了,當他看見山羊的時候就會立刻明白。對于什么都不懂得計算機你不用說明什么,但是要是別人或者幾年以后的你自己能看明白你的文檔,詳細的說明是必須的。而從上面的過程看來,將事物分成小塊來處理是個好辦法,我們把這個過程叫做劃分。當然劃分是可以繼續下去,將劃分的小塊繼續劃分直到不能劃分為止。當然要對一只山羊劃分需要一個對山羊有著全面了解的人,所以劃分你的問題的時候要對問題有全面的了解。看上去這對一個還沒有了解這個問題的人是一個矛盾,劃分一個事物有助于了解這個事物而要很好的劃分卻需要對事物充分的了解。于是我們要有所改變,要改變的是我們的做法。我們先粗略的了解問題,然后粗略的劃分一下,將劃分的模塊再粗略的了解一下,然后將它粗略的劃分,等到都成為不可劃分的小塊時,我們再來組織它。而且這個時候,我們對問題已經有全面的了解了,這時候我們將小塊的重復部分扔掉(一般一定會有重復的部分),然后將這些小塊重新將問題組合起來,想一下將一只大卸八塊的山羊組合起來,哈哈,一定是活不過來了,不過有羊肉吃也不錯。如果你很順利的組合起來了,表示你很好的劃分了這個問題而且了解的很透徹,以后的事將會一帆風順,你這時腦袋里一定充滿了解決這個問題的方案,已經躍躍欲試了。不要急,聰明的人會仔細的將劃分的過程多看幾遍,重組的方法多試幾種,這不但對以后和編程有好處,也是更好解決方案的起點。

現在我們來解剖一只山羊,如果你愿意還可以細分,動物愛好者請回避。

山羊

-> 腦袋

-> 軀體

-> 四肢

-> 尾部



腦袋
軀體
四肢
尾部

-> 五官
-> 胸
-> 兩只前肢
-> 尾巴

-> 胡子
-> 腹
-> 兩只后肢
-> 絨毛

-> 絨毛
-> 背

-> 骨架

-> 骨架
-> 內臟




-> 絨毛




-> 骨架





五官

-> 耳朵

-> 眼睛

-> 鼻子

-> 嘴巴



內臟

-> 心

-> 脾

-> 肝

-> 肺

-> 胃

-> 腸

-> 腎



前肢
后肢

-> 腳
-> 腳

-> 絨毛
-> 絨毛

-> 骨架
-> 骨架



最后我們得到的是:

山羊 腦袋 軀體 四肢 尾部 腦袋 五官 胡子 絨毛 骨架 軀體 胸 腹 背 內臟 絨毛 骨架 四肢 兩只前肢 兩只后肢 尾部 尾巴 絨毛 骨架 五官 耳朵 眼睛 鼻子 嘴巴 內臟 心 脾 肝 肺 腎 胃 腸 前肢 腳 絨毛 骨架 后肢 腳 絨毛 骨架

去掉重復的部分:

山羊 腦袋 軀體 四肢 尾部 五官 胡子 絨毛 骨架 胸 腹 背 內臟 兩只前肢 兩只后肢 尾巴 耳朵 眼睛 鼻子 嘴巴 心 脾 肝 肺 腎 胃 腸 腳 腳

最終的不可劃分的子模塊:

胡子 絨毛 骨架 胸 腹 背 尾巴 耳朵 眼睛 鼻子 嘴巴 心 脾 肝 肺 胃 腸 腳

現在我們將它重新組合一下,是不是很簡單的就完成了。而且我們需要處理的東西并不多。現在我們來用數學元素來描述一下

胡子: 數量不多的多種形狀的輪廓,有各種顏色

絨毛: 非常多的多種形狀的輪廓,有各種顏色

骨架: 多種形狀的輪廓,有一種顏色

胸: 某形狀的輪廓,有一種顏色

腹: 某形狀的輪廓,有各種顏色

背: 某形狀的輪廓,有各種顏色

尾巴: 某形狀的輪廓,有各種顏色

耳朵: 最多兩個的某形狀的輪廓,有各種顏色

眼睛: 最多兩個的某形狀的輪廓,有各種顏色

鼻子: 最多一個的某形狀的輪廓,有各種顏色

嘴巴: 某形狀的輪廓,有各種顏色

心: 某形狀的輪廓,有一種顏色

脾: 某形狀的輪廓,有一種顏色

肝: 某形狀的輪廓,有一種顏色

肺: 某形狀的輪廓,有一種顏色

胃: 某形狀的輪廓,有一種顏色

腸: 多種形狀的輪廓,有一種顏色

腳: 多種形狀的輪廓,有各種顏色

現在我們又得出了數量、輪廓和顏色這個三個元素,他們是所有元素都有的共性,我們找到了組合山羊的最小劃分,雖然在科學上這不是正確答案,但粗略地表達一只山羊這已足夠。好,雖然歷時不多,我們在腦海里已經解決了這個問題。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

主站蜘蛛池模板: 在线看av网址| 福利片在线观看免费高清视频 | 草逼综合| 国产一区二区三区播放 | 四虎在线网址入口2022 | 欧美在线播放一区二区 | 97免费在线观看 | 日本道色综合久久影院 | 日本一级在线播放线观看视频 | 啊片在线观看 | aa级毛片毛片免费观看久 | 欧美aaaaaabbbbb| 在线不卡国产 | 欧美一级片毛片免费观看视频 | a级高清毛片 | 亚洲不卡在线视频 | 自拍三区播 | 日本特黄一级片 | 青青草视频官网 | 免费网站www网站免费 | 久久99国产一区二区三区 | 免费观看www | 中文字幕永久免费视频 | 伊人tv| 免费成人高清 | 九色九色九色在线综合888 | 精品日韩欧美一区二区三区在线播放 | 在线视频人人视频www | 韩国三级在线观看我不卡 | 男生擦进女人下身全视频国产 | 视频日韩| 日韩精品成人a在线观看 | 日日摸天天添天天添破 | 另类欧美亚洲 | 精品一区二区三区在线观看视频 | 日产2021一二三区 | 亚洲国产精品综合久久久 | 91精品视频在线看 | 浮力地址永久浮力免费 | 国产在线观看第一页 | 女人被男人躁的女爽免费视频 |