對機房收費系統的總結先告一段落。下面說下我從軟工到vb.net的感覺。
一、軟體工程
現在為止,還沒開始團隊開發,所以對文件的重要性體會的還不那麼深,但是可以明顯感覺到文件是有作用的了。
在軟體開發的過程中,軟工更多的擔任乙個管理者的立場,安排了開發的步驟。大家做事都是按照規定的步驟進行,敲的**規範化,對軟體的各個方面提出了可標量化的要求,以做出一款比較科學的軟體。
軟工給我更多的是乙個思想方面的認識,例如軟體的健壯性、可擴充套件、不可修改、**要規範等等。軟體工程最重要的產物就是文件了,在寫文件時,需要進行建模。
二、uml
uml圖是建模不可缺少的。uml圖的核心其實就是九種圖和四個關係。但是,如果沒有一種架構方式,那麼uml的類圖畫起來是恨吃力的:剛看完uml後畫圖,只能畫出來用例圖,但是當畫類圖時,根本不知道怎麼畫,只是簡單將人分了下類。但是在這次畫圖時進行了分層,那麼畫的圖就不一樣了。感覺最深的就是時序圖,我在畫時序圖時,總面部了去再去修改一下自己畫的類和其中的方法。通過分層,畫圖變的不糾結。
三、c#和大話
接下來我們學習了c#,學c#是為了看大話模式,也是為了讓我們適應從乙個語言到另乙個語言。
大話,最開始的感覺就是這本書寫的很好,裡面每個設計模式都附有uml圖。大話裡面的每種設計模式,其實都是在為軟體工程服務。軟體工程對軟體的要求,大家只是知道去盡量做,但是具體怎麼做,我感覺大話就是在這方面起到了不可或缺的作用。。
大話,講的不只是設計模式,更是一種對**不將就的思想。遇到重複的**,就要想是不是可以抽象出來,遇到需要重複的賦值,要想是不是可以寫成方法或函式。大話裡面每個小故事不就是這樣的麼——剛開始寫了乙個**,然後通過大鳥指點,然後小菜改,最後應用設計模式。我們的**不也該這樣麼?
不過我們的優點是,先進行uml圖進行設計,這樣在沒進行敲**前,就已經在考慮設計模式了,由此也可以看出來uml圖的重要作用——可以減少無用功。
四、vb.net
雖然沒有具體講語言上的只是,但是他講的東西我感覺可以用到任何乙個物件導向開發的語言中。在vb.net裡面也提到了軟體工程和uml圖
五、三層
三層,通過慢慢的了解,知道它可以將乙個軟體的**分為三層,並且這三層中可以任意替換其一替換而不影響其他兩層。但是回首我寫的卻發現並沒有做到這點。三層之間的引數傳遞,應該是只能傳遞實體類裡面的成員,而我在很多地方都傳了datatable,這樣在資料庫進行變動時,那麼bll層很有可能要動甚至可能會動到ui層。所以這點是在團隊開發中要改的地方。
用三層實現機房收費系統,結合了軟工的思想,用uml畫圖並且加入設計模式,文件的不可或缺也會在我們合作的時候慢慢體會。
總結 可以看出,軟體工程是中心思想,不論什麼工具、模式,都是在圍繞著軟體工程。軟體工程要求在各階段都應該落實到文件,文件與uml圖是相輔相成的。至於設計模式,則是實現軟體工程中所說的軟體要求的經驗總結。
軟體工程之軟體工程管理
乙個好的工程需要配套的管理體系,軟體工程也不列外。軟體工程就我的理解就是對軟體工程的各個階段都一定規範,俗話說 不以規矩,不能成方圓 而這個規矩就由管理來充當。乙個軟體工程管理需要軟體專案計畫 成本估算 進度計畫 風險分析和人員的組織形式 或調動 一 在軟體專案計畫中,專案的任務是研究專案的效能 功...
我的軟體工程之路(二)
引 上次寫了一篇 我的軟體工程之路 一 如果你沒看過,可以先去看看,名字後面掛了乙個 一 當然就意味著要繼續寫下去,所以這篇文章就應運而生了。兩個月的時間過去了,又緊鑼密鼓地學習了兩個月,我依然是個菜鳥,只是這個菜鳥不是菜得那麼離譜了 其實在完成三遍之前,我也不知道乙個系統做那麼多遍幹嘛。別著急,聽...
軟體工程之軟體工程的概述
最近在學軟體工程,但工程分為好多種,那麼怎樣認識這些工程,什麼是軟體?什麼是工程?軟體工程和其他工程的區別又是什麼?軟體 程式設計的最終結果是軟體。軟體是使用者與硬體之間的介面介面。使用者主要是通過軟體與計算機進行交流。軟體是計算機系統設計的重要依據。為了方便使用者,為了使計算機系統具有較高的總體效...