時間又跑到了第七學期,我們從第十周開始軟體過程管理的學習,說真的,上這門課之前根本連什麼是軟體過稱都不知道是什麼,連個基本概念都沒有,覺得這對一位本科生來說只是有點「專業掃盲」的意思吧。
給我們上課的是一位看起來非常憨厚、年輕的博士生,我的上一屆師兄就是他的第一屆學生,首先給我們講了以前傳統的結構化設計和現在的物件導向程式設計的區別以及物件導向程式設計的優點等等,區別的時候用的例子是:計算器,可以實現簡單的四則運算。傳統的結構化方法採用的是資料輸入,資料有效性驗證,計算各個功能的**都放在一起,看起來非常混亂,而且不方便重用和維護,不能向後相容,如果要實現更多的功能還必須修改**和重新編譯。而採用物件導向的思想,則把各個功能模組分別進行封裝,降低模組間的耦合性,實現的方案是:first ,將運算類定義為抽象類,然後由各種運算進行具體的實現,這樣可以方便以後功能的增加而不用修改原來的** ; second ,運用多型和工廠可實現具體的功能運算調運,各類各司其職,這樣做使現在的**也可以呼叫以後的**,只要在工廠進行宣告,同時很好的對資料進行了封裝。這些內容在程杰的「大話設計模式」裡也看到過,裡面介紹工廠模式的時候好像用的就是這個例子。不管怎麼說,覺得我們的doctor還是講的不錯的,只是口才還需加強,呵呵...
後來的幾節課他講了些軟體過程的概念,主要有幾個模型來度量軟體過程,而我們學校的教學大綱才用的是cmm(軟體能力成熟度模型)模型,也和我們聊了現在軟體業的概況,其中他聊了他和同學的一次聊天:我現在很害怕,我現在有個這樣的想法,我公司的那個軟體開發的流程都不是必須的,只有去掉那些軟體需求,分析,建模等等這些繁雜的開發過程,我公司的產品在市場上才有競爭力,因為這樣可以縮減我的開發成本,而沒有那些開發流程開發出來的軟體也能符合客戶的需求,我現在很疑惑。想的也是,現在的軟體開發,開發周期和資金的壓力越來越大,再加上it業的人家流動的頻繁,對一些中小型企業確實是一種嚴峻的考驗,而對一些有實力的企業,憑藉其成熟的開發模型和雄厚的經濟實力仍然可以平穩的發展,並且可以藉此優勢來向中小型的開發商施加壓力。採用軟體工程的思想進行軟體開發,cmm ,這些都是必不可少的。當然,這其中還有相當一段路程要走。
呵呵,這些都是個人的意見和想法,肯定會有本科生的稚嫩,歡迎各位不吝指正...
專案研發管理初涉
在上個公司很幸運,可以有機會擔任研發管理的工作,之前可以說是完全沒有這方面的經驗的,作為乙個初次涉及這方面的工作,之前也完全沒有理論指導的情況下,怎麼樣才能完成專案的開發工作,不至於使專案失敗呢?初到新公司,入去的第一步還要重新建立開發團隊。如果說從最初的團隊組建到之後的專案開發最難的是什麼的話,首...
初涉彙編《三》
在彙編 二 中我的說的問題,在這就不做回答了,因為乙個暫存器的來儲存資料肯定不夠用,因此,這些暫存器就可以提供空間。好了,這個彙編學習畢竟是我對彙編的個人的學習問題。現在我來說說彙編中後面的幾個標誌暫存器。標誌暫存器總共有9個,分別是cf,pf,af,zf,sf,tf,if,df,of 詳細解答,看...
初涉字尾陣列
以poj 1743為例。模板中的基數排序基於前向星。詳細證明過程詳見 演算法合集之 字尾陣列 處理字串的有力工具 非常不錯的一篇 include include include include include include include include include include inclu...