1. 程式人生 > >讀《大道至簡》有感

讀《大道至簡》有感

迷茫 所有 自己 都是 人類 最有 語言 為我 人類社會

讀《大道至簡》有感

本書是在“思想方法學”這一軟件工程尚未涉足過的領域中的是實習之作。通過這本書,我終於更加透徹地理解我們軟件工程,乃至所有要編程的學科中的學習的道理和方法;更加透徹的理解了編程的精義;更加透徹的理解了程序員工程師的職責。

它開篇以愚公移山的古典作例講解了編程的精義,道出編程的根本:順序,分支,循環;告訴了我們首先編程=算法+結構。算法是對一個程序的邏輯實現的描述,而結構是邏輯實現所依附的數據實體。所以編程很簡單,除去那些先天智障或後天懶惰者,我想其余的任何一個嗯人都可以學會寫程序,只要開發人員將這個程序的算法設計出來了,把結構描述出來了,那麽程序就已經定型了。這其中很重要的一點就是:編程知識一種行為,而且語言只是一種工具。編程的第一要務是先把事情分析清楚,把事情之間的邏輯關系和依賴關系搞清楚,然後再去實現代碼。書中所言極是:積極地工作和勤於思考都要占時間。再者是語言,我們現在學了

CC++,已經能夠感覺出來,正如書中所言:任何一門的底層函數庫都是那麽的相似。並且他們都是依賴於操作系統。其實語言的差別就是在適用範圍上。有的可以精確到原子級,表達無窮之小;有的適合做圖形處理,它的底層函數書庫比其他語言可以快上十倍甚至數十倍。還有的適合做網頁,要用它做一個通訊薄軟件都將是史無前例的挑戰。成天討論那個語言好壞的人甚至可悲,不僅僅是他的一葉障目,更是被他大愚若智。所以語言其實很簡單的,我麽你要保持好的心態,努力學習各種語言,武裝自己。

人類社會的進步其實可以歸功於懶人,因為是懶人造就了方法。正如書中那一比較,愚公雖勤,但是卻是在一點一點地鑿山,進行移山;而受炒菜時無意發現的壘竈的鵝卵石被燒得爆裂開來

遇水尤甚,從而使他“積薪燒之”更快的鑿了山。我們學習了一年了,很多人都是很迷茫,不知道自己學了什麽。那是因為我們還沒有將自己學到的東西進行分類,歸納到我們自己的腦子的不同區域。我們要有自己的方法,做到高效率的完成每件事。

團隊是一個極其重要的集體,其特征是:主從、監督、責任。在軟件開發中,往往是一個團隊的相互合作,明確分工才完成最終的項目,在這個團隊裏我們不能一直埋頭幹,幹,幹,我們團隊每個人都需要思考,需要反思。團隊應該有團隊自己的靈魂,而這個靈魂是團隊的所有人都參與鑄造的,而且是印在每個人骨子裏的東西。靈魂並不是個架子,是一個團隊不可或缺的元素。一個項目是需要考慮很多方面的,需要和每個部門及時溝通,協調每個人的工作時間,作用等等,並且團隊的每個人都要朝著共同的目標前進,如果亂了,那麽這個團隊就是一盤散沙,很難完成什麽大項目,由此可見,一個團隊的精誠合作是多麽的重要。

編程語言是程序員與計算交流的語言,而不是與客戶交流的語言。在工作中,每一次與客戶交談需要保障每一次的溝通都是有效的,是有目的性的,要知道,平時生活中那些酒肉應酬並不是最有效的。如果僅僅是流於形式的溝通,那麽可能使項目不斷推翻和延遲。我們需要在正常人和盲人之間建立一種溝通的方式,既然盲人不能睜開眼睛,那麽你就閉上眼睛好了。後面還說到項目的維護問題,當然啦,一款軟件,一個操作系統,總有出錯的時候,所以項目的維護是必然存在的,開發者要為“項目維護”這種還不存在的角色留下一個對話的渠道,保證維護的進度。

編程的目的到底是什麽呢?應該是實現吧。實現才是目的。工程只是一種實現的途徑,也是給我們這些初學者的一個警示:為工程而工程的人,都迷失在了項目當中。工程不是做的,而是組織的。分工明確,步調一致才能共同完成這個項目。語言只是工具。過程伴隨工程而實現,解決的是過程中的角色間的關系問題;工程,對目標的描述和成果的檢測;工程出現的原因,軟件規模的不斷 增大,團隊及組織的重要性。

工具、方法與過程這三者是相互關聯的,所有問題都應該回歸到軟件工程的本體上來思考,而不要只註意一點點的小方面,如果只顧某一個問題,只從單一的角度看問題,那麽思維能力就會受到限制,你就很難適應去做一個大項目所以所有問題必須從整體看待。工程其實很簡單,不要把它做復雜。我們一定會通過這次學習之後,更加正確地高效地學習軟件工程!

讀《大道至簡》有感