《構建之法》第一章讀後感

2022-03-28 01:57:42 字數 2906 閱讀 7156

1.1 軟體 = 程式 + 軟體工程

構建過程,構建不僅僅是cc和link命令,乙個複雜的軟體不但要有合理的軟體架構,軟體設計與實現, 還要有各種檔案和資料來描述各個程式檔案之間的依賴關係,編譯引數,鏈結引數等等。

有些程式要配置不同的介面, 執行在中文,英文或其他語言的作業系統上;有些程式還有32位版本,64位版本等. 這是源**管理的問題也叫配置管理。

我們還有一系列的工具、流程、和文件來保證程式的正確性,這些工具,流程應該達到很高的質量,才能保證開發出來的軟體的質量. 這就是軟體質量, 具體的驗證過程叫做軟體測試。

讀懂已有的程式,了解程式的設計,這叫程式理解。

團隊的新老成員一起修復各種各樣的問題,這叫軟體維護,或者服務運營。這一系列過程就是軟體的生命週期,在這一週期中,有人得負責軟體專案的管理。

乙個好的軟體,即使功能和同類軟體區別不大,但卻會讓人感覺非常好用,這就是軟體的使用者體驗。

軟體還要處理不同語言、不同地區的使用者對介面和功能的不同需求,這叫軟體的國際化和本地化。

1.2軟體工程是什麼

軟體工程是把系統的、有序的、可量化的方法應用到軟體的開發、運營和維護上的過程。

人們在開發、運營、維護軟體的過程中有很多技術、做法、習慣和思想體系。軟體工程把這些相關的技術和過程統一到乙個體系中,叫軟體開發流程。

1.2.1軟體的特性

·複雜性

軟體可以說是人類創造的最複雜的系統型別。大型軟體有超過百萬行源**,上萬的不同的檔案。

·不可見性

軟體工程師能直接看見源**,但是源**不是軟體本身。

·易變性

軟體要不斷改變,正確修改軟體是一件困難的事情。

·服從性

軟體不能獨立存在,他總是要執行在硬體上面。

·非連續性

許多軟體系統沒有連續的特性,有時輸入很小的變化,會引起輸出上極大的變化。

1.2.2軟體工程與電腦科學的關係

電腦科學中的理論研究部分,大多可以從形式上證明,與數學、離散數學、數學邏輯密切相關;電腦科學中與實踐相關的部分,都和資料以及其他學科發生關係。

軟體工程的研究目標中都有「人」出現,這些「人」可以是專案需求的提供者,可以是軟體的開發人員,還可以是軟體的使用者。

電腦科學和軟體工程的不同側重點

電腦科學

軟體工程

發現和研究長期的、客觀的真理 

短期的實際結果(具體的軟體會過時)

理想化的 

對各種因素的折衷

確定性,完美,通用性 

對不確定性和風險的管理,足夠好,具體的應用

各個學科獨立深入研究,做出成果 

關注和應用各個相關的學科的知識,解決問題

理論的統一

百花齊放的實踐方法

強調原創性

最好的、成熟的實踐方法

形式化,追求簡明的公式

在實踐中建立起來的靈感和直覺

正確性可塑性

1.2.3軟體工程的知識領域

生命週期

軟體需求、軟體設計、軟體構建、軟體測試、軟體維護

專門領域

軟體配置管理、軟體工程管理、軟體工程過程

理論基礎

計算基礎、數學基礎、工程基礎

1.2.4軟體工程的目標----創造「足夠好」的軟體

使用者滿意度bug:使用者在使用時發現了軟體的很多問題,影響了使用者使用軟體的效率。

軟體流程的質量bug:軟體團隊和開發流程的問題太多,導致團隊成員無法互相協作,按時交付軟體。

1.3練習與討論

2.1) 通過讀軟體工程師的成長,乙個程式需要不斷更新進步,這也要求程式設計師需要不斷學習新技術才能不被市場淘汰,有什麼比較有效的方法提公升我們的能力?

2)我們應如何制定自己的職業生涯規劃?

3)通過讀需求分析,我在實習中發現公司的客戶可能會提出一些難以實現的需求,我們是否可以拒絕?

4)通過讀it行業的創新,創新就是做和以前不一樣的事,能做成也是一件不容易的事,我們如何提高自己的創新能力?

5)通過讀團隊和流程,在團隊中每個人的職責不同處理問題的方法也不同,我們怎樣才能統一意見,避免吵架?

3.主要使用的軟體:games王者榮耀,tools有道翻譯官,operating systems ios

分析games王者榮耀

通過廣告,朋友推薦成為使用者,目標是盈利,通過充值購買****盈利

發現bug及時維護更新,通過不斷創新玩法與同類競爭。

構建之法讀後感第一章

作為乙個程式設計師,首先需要了解的是事情是我們編寫的軟體服務的物件是使用者,所以我們必須堅持以使用者的使用方便程度來評判你寫的程式是否完美。當然,沒有十全十美的程式,但是只要使用者使用方便我們就說這個程式是完美的。所以,使用者才是軟體的核心。軟體的結構是什麼,沒有具體的解釋。但是可以確定的是,軟體 ...

構建之法讀後感(一)

構建之法是除了大道至簡我讀的第二本有關軟體的書籍。從中都得到了很多上課程式設計的技巧和懂得了各種道理。沒讀這本書之前,以為這本書中都是一些大道理,然而這本書運用生動幽默的語言去打動讀者,作者將自己的感觸和對於軟體工程的理解寫到書本上,更加能夠幫助我們理解這本書和軟體工程。並不太懂軟體工程的概念,只是...

《構建之法》讀後感(一)

構建之法 它很通俗的將軟體工程闡述清楚。讀過之後,對於工程有了一定的認識,乙個工程,它與我們現在所學的通過寫 實現一件事情,實現乙個專案是不一樣的,現在所學所做的這些,還遠不及工程這個概念,實現乙個工程,需要完整的team,team中每個成員,軟體工程師需要有一定的個人能力及職業素質等等。而我現在所...