我的專案開發經驗積累總結
本人,學生,菜鳥級別,僅僅做過三個專案,積累了一丁點自己的經驗,現在釋出出來-----一是為了廣大前輩指正,二是希望自己能給入門者一點點有用的參考。(我會不斷總結積累然後不斷修正這邊文件的)
1. 熟悉業務流程:不斷地親身嘗試走業務流程
2. 劃分業務模組,把所有的流通的表單收集起來(用於後面資料庫設計)
3. 分析需求,劃分功能模組,並且進行每個模組資料流程走向,對應的頁面設計
4. 根據需求和蒐集的表單進行整合,然後設計資料庫:欄位的型別,適當長度,是否有預設值,恰當的註釋,是否null;但所有的必須欄位都提煉出來了,在根據
每個功能模組內部的資料流對資料庫的表進行適當冗餘(可以減少複雜查詢,以提高查詢效能)。
5. 分別對每個功能模組進行程式碼設計:
a. 根據資料流圖和設計好的頁面確立好VO(對應於一個頁面或者頁面中劃分的模組),PO,DAO(interface),ServiceHandler, ServiceHandler處理過程中用到的工具類utility, 以及Controller(Servlet)
b. 根據整體業務確立上面哪些物件類(VO/PO)是要存放在application/session中的(例如1.首頁等所有使用者都可以而且經常訪問的資訊應該在伺服器啟動時就存進去;2使用者登入後的部分個人資訊或者其他經常用到的資訊,應該在使用者登入時就把它們存放進session中)
由於專案有時候是多人負責不同模組的,所以在程式碼設計的時候,應該有一個總負責人將各個功能或者不同層之間的介面設計好,這樣就可以實現非同步開發(讓快的人先開發),更好的分工,更快的團隊整體開發效率了!!例如總負責人先定義設計出DAO的inteface並弄好實現類DAOImpl,然後呼叫者就可以先直接呼叫DAOImpl來開發自己負責的板塊;後面的話負責人在慢慢地新增程式碼到要實現類的成員方法中。
6. 接下來就可以整合這些設計好的程式碼了。當然在整合的過程中要注意演算法的設計(是否過於複雜?是否有更合理處理過程?)
7. 以上過程下面的每一步都是以上面設計好的內容為設計依據!所以上面的內容有設計瑕疵的話,就會影響下面的設計。A.假如業務流程都搞錯了的話,那麼第二步往下的都隨之而錯!!!整個專案都是不符合要求的,都是錯的!!B.假如功能業務模組/模組劃分不合理或不夠科學,就可能會導致下面的演算法設計極其複雜繁瑣,這樣不僅加大了開發難度更是增添了他人閱讀的難度降低了可讀性,進而增加了後期維護成本----也就是說整個軟體生命週期都是令人痛苦的!所以一個好的開頭是多麼的重要!!所以建議大家在做專案的過程中寧願慢點來細緻謹慎設計也不要為了追求開發進度而大意設計,這樣的後果只會令你更痛苦!!
8. 當然開頭的設計不可能做到完美或者說設計好就不再修改了。沒有設計(即使你很細緻了)能夠一步就到位的。所以開發過程中經常會出現回頭去更改設計的情況—這是無可避免的,也是為了令我們的設計更完善更符合實際的方法!
以上的我以後會不斷的完善之!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29900383/viewspace-1413021/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [專案積累]後端專案之Koa2經驗整理後端
- 日常專案經驗總結
- 《軟體專案經驗總結》
- 2年開發,我總結了7條經驗!
- 經驗總結--我的小程式開發和進化之路
- Android開發經驗總結Android
- iOS開發經驗總結iOS
- 我的刷題經驗總結
- iOS開發經驗總結2iOS
- iOS開發經驗總結3iOS
- Redis在專案中合理使用經驗總結Redis
- 開發中的一些經驗總結
- React專案從Javascript到Typescript的遷移經驗總結ReactJavaScriptTypeScript
- 實習專案開發總結
- 總結Django一些開發經驗Django
- Java反射機制開發經驗總結Java反射
- 小程式·雲開發 專案開發經驗分享
- Kotlin專案中 GlideApp 構建失敗經驗總結KotlinIdeaAPP
- 影像分類:來自13個Kaggle專案的經驗總結
- 微信小程式開發BUG經驗總結微信小程式
- angualr7專案開發總結
- 一年Node.js開發開發經驗總結Node.js
- 關於開發Python專案的心得總結!Python
- python專案開發例項書-關於開發Python專案的心得總結Python
- 專案---累積型快照事實表sqlSQL
- 技術積累——C++ 呼叫 python 專案C++Python
- T02 ExtractSubject 專案開發總結
- 2年經驗總結,告訴你如何做好專案管理專案管理
- 一個專案經理的切身經驗總結:測試用例可以被替代嗎?
- 小程式開發點滴積累
- 我的 2024 年終總結-3 年工作經驗的小白
- 「Vue實戰」武裝你的專案 - 開發經驗分享Vue
- 十年前在網易積累的工作經驗
- 大資料開發工程師的兩年工作經驗總結大資料工程師
- 8 年產品經驗,我總結了這些持續高效研發實踐經驗 · 研發篇
- 我的專案開發系統
- ThreeJs 3D 全景專案開發總結JS3D
- 工作經驗總結
- 軟體開發專案管理經驗分享:專案全生命週期管理專案管理