1.教材第2章 2.1程序員
個人問題是關於編寫好程序軟件中的單元測試,教材上說單元測試應對模塊內全部重要的控制路徑設計測試用例,以便發現模塊內部的錯誤,單元測試應該準確、快速地保證程序基本模塊的正確性。算法
問題:編寫好一個程序軟件已經很費時了,爲何還要對其進行單元測試?編程
答:由於它浪費了太多的時間,因此一旦編碼完成,開發人員老是會迫切但願進行軟件的集成工做,而單元測試須要時間,會推遲了對整個系統進行聯調工做啓動的時間。在實踐工做中,進行了完整計劃的單元測試和編寫實際的代碼所花費的精力大體上是相同的。可是一旦完成了這些單元測試工做,不少bug將被糾正,在確信他們手頭擁有穩定可靠的部件的狀況下,開發人員可以進行更高效的系統集成工做。這纔是真實意義上的進步,因此說完整計劃下的單元測試是對時間的更高效的利用。所以,我認爲對於程序員來講,若是養成了對本身寫的代碼進行單元測試的習慣,不但能夠寫出高質量的代碼,並且還能提升編程水平。要進行充分的單元測試,應專門編寫測試代碼,並與產品代碼隔離。我認爲,比較簡單的辦法是爲產品工程創建對應的測試工程,爲每一個類創建對應的測試類,爲每一個函數(很簡單的除外)創建測試函數。函數
2.教材第4章 4.3佈局
個人問題是關於代碼設計規範,教材上說通常所寫的程序會被不少人使用,而且程序員還須要調試修改本身的程序,因此須要規範一下代碼的設計。單元測試
問題:既然代碼設計規範不光是程序書寫上的格式問題,並且牽涉到程序設計、模塊之間的關係、設計模塊等等方面,並且有很多內容與具體程序設計與語言有關。那麼咱們如何利用函數來規範代碼設計?測試
答:由於現代程序設計語言中的絕大部分功能都在程序的函數中實現,因此對於函數,須要「只作一件事,而且要作好」。因此結合教材應和資料,我認爲要儘可能避免在系 統初始化時運行過多的代碼。(1)選用控制結構只准許一個入口和一個出口。編碼
(2)程序語句組成容易識別的塊,每塊只有一個入口和一個出口。spa
(3)複雜的結構應該用基本控制結構進行組合嵌套來實現。設計
(4)語句中沒有的控制結構,可用一段等價的程序段模擬,但要求該程序段在整個系統應先後一致。
(5)嚴格控制goto語句,僅在下列情形纔可以使用。1.用一個非結構化的程序設計語言去實現一個結構化的構造。
2.在某種能夠改善而不是損害程序可讀性的狀況下。
3.教材第5章 5.3
個人問題是關於軟件開發中的開發流程,教材上說軟件開發流程即軟件設計思路和方法的通常過程,它可以提升軟件開發、運營和維護的效率,以提高用戶的滿意度,軟件的可靠性和可維護性。
問題:開發軟件,編寫程序須要投入不少精力,只有按照必定合理的開發流程才能合理安排好人力、物力,而且在最短期內又好又快的完成開發。那麼咱們應該採起哪一種開發流程,從而得到最大的益處?
答:從前寫程序就是拿了題目想一會就開始編寫,寫不出來就改寫其餘人的代碼,跟教材中提到的「寫了再改模式」同樣,沒有太大的實用價值。可是在真正的項目開發中,開發的軟件是須要面向大衆的,此時便須要一個有實際用戶、解決實際需求的軟件。結合教材,我認爲來發出一個又實用價值的軟件須要通過:1.進行業務建模;2.對開發人員和用戶進行需求分析;3.設計軟件的功能;4.編寫程序實現算法而且調試運行;5.進行測試和系統維護;6.提交程序。
4.教材第8章 8.3
個人問題是關於軟件開發前對用戶進行的用戶需求調查,教材上說用戶需求分析指在系統設計以前和設計、開發過程當中對用戶需求所做的調查與分析,是系統設計、系統完善和系統維護的依據。
問題:軟件開發的過程,就是「用戶最須要的東西」在這一鏈條中傳送、轉換、實現、扭曲或丟失的過程。對於這樣一個軟件開發過程當中重要的環節,咱們應該如何對進行用戶調查?
答:進行用戶調查有多種方法,好比成立焦點小組、與客戶進行深刻面談、卡片分類、問卷調查等等。結合教材和實際,我認爲對用戶進行問卷調查可以合理且全面的對用戶的需求進行分析,從而可以使開發者更好的分析用戶需求,設計出更好的程序。雖然用戶問卷看似容易但其實還須要必定的方法。第一,是肯定要收集的資料和信息;第二,是要根據問卷的調查方式肯定調查的內容;第三,是要決定問題形式;第四,要選擇問題的用語;第五,決定問題的前後順利;第六,要調整問卷的版面佈局;第七,試着進行調查;第八,對問卷修訂並最終定稿。
5.教材第16章 16.3
個人問題是關於IT行業的競爭,競爭一直是每一個行業都要面臨的問題
問題:對於IT這樣一個更新快速的行業是必備的,競爭就很爲激烈了,爲了能過在競爭中取得優點,咱們應該瞭解影響產品競爭力的因素有哪些?
答:影響產品競爭力的主要因素有:1.產品行業的因素:這是影響產品發展的最重要的因素,產業發展的成長期能給產品提供巨大的助理,相反的若是是在一個產業的衰 落期進入這個產業,那麼就會面臨巨大的發展阻力;
2.公司和市場因素:公司在目前目標用戶中的號召力,公司現有市場的能力以及現有市場打開新領域的能力;
3.產品的價值因素:產品給用戶帶來的價值;
4.團隊執行因素:根據產品特性的不一樣,商業模式的不一樣,團隊的戰略也會不同。