項目 | 內容 |
---|---|
做業屬於哪一個課程 | 北航軟件工程 |
做業要求 | 做業要求 |
課程目標 | 熟悉軟件編寫過程,鍛鍊編程能力 |
這個做業如何幫我實現目標 | 閱讀基本構建的理念,加深理解 |
工程師應該在實際工做中不斷學習和不斷成長,根據本身的狀況選擇在哪一個方面追求「專和精」,在哪幾個方面達到「知道就好」的水平。git
· 不斷學習和不斷成長顯然是必要的,可是真的只須要根據本身的狀況來決定嗎?我的認爲須要結合多方面來進行決定哪一個方面須要追求到專和精,例如當今社會的熱點,以及目前的發展狀況等等。程序員
最好的編程語言是什麼,這是一個意見,並非事實,不要混淆。編程
· 最好的編程語言真的存在嗎?做者在書中提到Google公司認爲PHP不是最好的語言,所以有計算機的語言專家爲此發明了新的語言Go語言。可是另外一些專家以爲Go語言缺乏一些必不可少的元素,達不到登堂入室的要求,因此對於軟件工程來講,是否只存在最合適的語言,而不是最好的語言?架構
結對編程中駕駛員和領航員的角色要常常互換,避免長時間緊張工做致使觀察力和判斷力降低。app
· 這是最讓我感到疑惑的問題,對於已分配好的工做,好比駕駛員和領航員,兩人對於本身的分工已經有了獨到的看法和進步,造成了屬於本身的思惟模式和解決問題的方式,那麼互換角色真的可以作好對方的工做嗎?在計算機領域難道不該該更難以互換?如何理解對方的代碼和思路,這須要花大量的時間進行溝通交流,互換角色是否真的有必要?編程語言
函數最好有單一的出口,爲了達到這一目的,可使用goto。分佈式
· 目前在學習歷程中,全部編寫的程序中,goto函數應該是沒有使用過的,可是並無影響程序的運行或者是效率下降的表現。goto函數和單一出口是不是必要的?有何突出的優勢?函數
可以對一個問題創建模型的確很是好,可是咱們不要忘記軟件開發的目的是要經過寫代碼解決用戶的問題。微服務
· 做者在書中舉例,說有公司對客戶的問題建好了模型,可是不知道如何去實現。所以咱們如何將一個優秀的模型,經過寫代碼的方式表現出來,解決用戶的需求和問題。在我看來建模的難度和代碼實現的難度都是很大的,如何將這兩個工做很好地銜接起來呢?書中沒有提到具體作法。學習
· 做者在書中提到了不少創新的例子。在現實生活中也有,例如風靡一時的諾基亞手機,就是由於沒有創新的科技來吸引顧客,最後落到被收購的下場。可是對於目前咱們所學的知識來講,幾乎都是一些舊的基本知識,確實基本知識是十分重要的,基礎能力也是逐漸培養的,可是並無接觸到一些前沿的創新理念,這是爲何?
· 軟件一詞最先出如今1953年Richard R.Carhart的研究備忘錄中,也有人說是同年圖靈提出的。但第一次做爲術語出如今論文中是在1958年,John W. Tukey撰寫科學文章時使用。
· 在1968年的德國的NATO會議上,提出了軟件工程的概念。
大師級人物Martin Fowler在他談論微服務的我的主頁上提到,微服務並無一個很是明確的定義。事實上有不少種分佈式系統的實現均可以被當作(或者說勉強當作)是面向微服務架構的。
--來自於百度百科
因爲這次bug太過嚴重,致使影響了用戶的實際體驗,咱們在這次更新前已殺了一個程序員祭天。
--某app的更新日誌
git:
優勢:1. 開源、處理速度快、靈活性高
2. 離線工做,完成後將代碼push到網頁上
缺點:必須和特定的編譯器相結合使用,例如dev 和code blocks好像就不能push到git上。
用戶量:網上統計的數據預計在3000萬左右,是最多的。
Mercurial
優勢:兼容性好,擴展性強,有便捷的快速指令
缺點:功能單一,效率低
用戶量:預計在50萬之內
Trac
優勢:系統完善性高,擴展性強
缺點:基本功能少,須要插件
用戶量:預計在200萬左右
Bugzilla 優勢:具備強大的搜索功能 缺點:國內速度慢,上傳文件步驟繁雜