標籤:
回顧這個項目,我將其分為四個階段:(一)、熟悉需求、畫圖、設計資料庫,將三層登入改為七層;(二)、增刪改查各敲一條線;(三)、剩餘功能的設計;(四)完善系統。現在再看這段曆程,很奇怪我在第一和第四環節上花費的時間佔了絕大部分,也更深刻地感受到了設計軟體不僅僅是敲好代碼這麼簡單。
經曆了兩次驗收,第一次師傅狠批了一次,回頭又修改了一個星期,第二次驗收通過,下面從這幾個角度來對這次機房重構做下總結:
一、細節
所謂“細節”,從需求分析開始,好多方面如果沒有別人指出來,自己很難發現問題所在,具體體現在以下一些方面:
(1)介面表單風格是否統一、邊框的寬度,字型是否統一用相同的格式、大小……,每個子表單彈出來的位置是否一致?
(2)Msgbox是否都有相關的標題?表徵圖是否會因為每次提示內容不一樣而改變?選擇的按鈕是否也會因為需要而變化?
(3)文字框是否什麼時候都能夠輸入?輸入長度是否有限制?就像註冊“卡號”,MaxLength如果設定為9,那麼有沒有最低位的限制,要從0~999999999嗎?還是考慮結合實際情況從100000000~199999999呢?
(4)下機之後提示的下機資訊是否可以在幾秒之後自動消失呢?
(5)DataGridView是否每次能載入出HeadText?是否每次沒有最後一行空行呢?
(6)各個資料表之間是否有約束?還是每張表都是獨立的表資訊可以隨意更改?資料表欄位是否會有冗餘?
太多的細節問題,我想,這些細節在機房合作之前,很有必要解決掉的。
二、邏輯
即使本著全心全意為人民服務的思想去做,僅僅憑著個人的力量,想要一次做好一個系統,很難,有些問題覺得自己考慮很周到,但是還是會漏洞百出。這就需要後期不斷的找人來幫忙點系統了,每次發現一個問題,更應該是興奮,發現了自己邏輯上的不足,才能下次做的更好。
(1)如果把一般使用者當做“學生”來看,那麼一般使用者在下機的時候是否能夠輸入別人的卡號下別人的機子呢?
(2)正在上機的卡,有沒有想過這個時候不能退卡呢?一旦可以,這將是一個致命的bug啊,公司得為此虧損多少錢。
(3)突然間停電後,正在上機的使用者該何去何從?
(4)一張卡登出之後,究竟這個卡還能不能被別人複用?是否可以啟用?
(5)到底是一人對應一張卡還是一人可以有多張卡?各自有什麼優缺點?
(6)上機過程中,金額快要不足時是否會有提醒?
在邏輯上,自己犯了上面中的一些問題,也有和別人交流之後自己做的很好的邏輯處理過程,邏輯這塊,認準了就去做了,切記改來改去,最後四不像。
三、代碼
這塊師傅在驗收的時候也比較嚴格,通過這次系統,代碼的層次、結構,無用代碼的刪除,代碼精簡的要求,B層代碼中邏輯判斷的運用,讓我感受頗深。
其次,就是注釋,關於塊注釋、單條語句注釋、注釋中所要寫的內容、注釋與代碼的位置……我想在合作機房的時候,這些當時的問題都是我們的墊腳石。
四、思想
“思想上移、行動下移”,是這次重構最大的感受,從4月20號開始到6月12號,將近兩個月,時間雖然長了點,但是收穫真的是很大,這次相比上次的VB版本機房系統完全就是天上和地下,很重要的一點“交流”,有的點子就是在交流的過程中國突然間蹦出來的,交流過程中通過學習別人優秀的代碼,讓自己的代碼更加規範、與人交流時候,讓自己的邏輯更加清晰。
重構完了,現在電腦學起來越來越有勁了,加油!
機房重構---小結