1.關注《構建之法》的作者鄒欣老師的博客;
2.花二十分鐘寫一個能自動生成小學四則運算題目的“軟件”,要求除了整數以外,還要支持真分數的四則運算。將代碼上傳至coding.net,并將地址發布至自己的博客。
代碼地址:
https://coding.net/u/MJX1500802081/p/Demo/git/blob/master/%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B%E7%AC%AC%E4%B8%80%E6%AC%A1%E4%BD%9C%E4%B8%9A.cpp
3.在一周之內快速看完《構建之法》,列出你不懂的5-10個問題,發布在自己的博客。
問題:
(1)在看到《成長和代碼量的關系》時,作者提到代碼量和工程師的水平是線性的嗎?可是作者似乎并沒有給出明確的答案,但我希望能了解具體的關系。
(3)我在看第十章《典型用戶和場景》時,第二小節講到了USE CASE 用例圖,書中說了很多概念性的定義,但卻沒有具體的USE CASE用例圖的畫法,所以我想知道USE CASE用例圖具體的定義形勢以及畫法到底是什么樣的?
(4)書中第五章為我們軟件團隊的模式和開發流程,但我不明白團隊模式和團隊的開發流程有什么關系?是一種團隊模式就有一種開發流程嗎?
(5)在《用戶體驗》這一章中,說要情感設計,那么在設計一個程序的過程中,應該帶入什么樣的情感?
(6)在第十三章《軟件測試》中,我看到說“有錯不改“,為什么明明知道一個程序有Bug但卻不改?
4.軟件有很多種:包裝在盒子里的軟件、基于網頁的軟件、企業或學校或某組織內部的軟件、游戲、手機應用、操作系統、工具軟件,選取三種軟件,請分析它們各自的特點。
(1)這些軟件開發者是怎么說服你(陌生人)成為他們的用戶的?他們的目標都是盈利么?他們的目標都是賺取用戶現金么么?還是別的?
a.QQ:QQ作為我們這一代人用來交流的主要工具,覺得開發者的初衷并不想要盈利,而是想開發出一個可以方便人們交流的工具。
b.冰果消消樂:這是一款休閑益智的消除游戲,這個軟件開發者開發該軟件的最初想法應該就是想要盈利。
c.酷狗音樂:這是一款可以聽音樂的軟件,在其上面有數以百萬計的音樂,這個軟件的開發理由是想讓聽眾能有一個可以更好的享受音樂的平臺。
(2)這些軟件是如何到你手里的(郵購,下載,互相拷貝)
這些軟件都是通過在手機應用商城下載安裝到手機上的。
(3)這些軟件是如何處理Bug的?又是如何更新新的版本的?
這些軟件都是通過用戶體驗,用戶反映來處理Bug,然后通過內部更新,提醒用戶可以更新版本。
(5)同一類型的軟件之間是如何競爭的?
同一類型的軟件之間通過改善軟件的界面美觀性,軟件的實用性,還有用戶的下載量來相互競爭的。
(6)列舉你在使用上述軟件時觀察到的“特殊”現象,它們和硬件有什么不同?這些能說明軟件的某些本質特性么?
在使用酷狗音樂的時候,有些歌曲是不能下載的,但是在線聽過之后,可以在沒有網絡的時候在“最近播放中”聽。在硬件中,如果沒有下載,應該是不能夠在無網絡的情況下再次聽音樂,而在軟件中竟然可以做到。這可以說明軟件的不可見性。