翻譯:worldheart
盡量采用關系數據庫
采用關系數據庫系統用於持久性
因為關系數據庫系統很常見
通過實踐證明過的
被標准化
可維護
健壯
並且很好的被第三廠商提供的工具支持
盡管對象數據庫更適合於基於對象的系統
但第三廠商提供的工具
比如報表系統
數據倉庫系統
並沒有提供很好的支持
另外
對象數據庫管理系統沒有關系數據庫系統成熟
所以它設計出的系統可移植性差
最後一點
掌握的關系數據庫專業人員也多於了解對象數據庫的人員
使得項目更容易展開
規范化關系數據庫
規范化關系數據庫的時候不要去考慮對象模型
因為對象模型是短暫的
而數據是持久的
換句話說
很可能存在這樣一種情況
即你的關系數據庫會比你的面向對象應用的生命周期多於
幾年
一個通過正常規范化的數據庫可以和任何系統有很好的兼容性
不只是面向對象系統
數據庫可以被多種客戶訪問
並且它的生命會比創建該數據庫的系統更長久
購買報表系統
不要自己開發
不要去開發自己的報表系統
因為這樣的開發費用成本特別高
而且很少做得有商業報表系統好
用於查詢關系數據庫管理系統
以HTML的形式給出結果
所見即所得的開發方式
日程安排等的報表產品已經有商業軟件
大部分自己開發的報表系統都達不到預期的效果
最終都被商業產品所取代
用戶界面推薦用HTML
通過Servlets或者JSP生成的HTML用戶界面比用Java Applets或者具有圖形用戶界面的應用程序更容易開發
更快的市場響應能力以及更容易維護
JavaScript和Applets用於加強用戶界面
但一般情況下除非沒有其他的途徑最好不要用
圖形用戶界面給客戶提供了更多的選擇余地
但圖形用戶界面的復雜性給項目成本
維護
開發帶來了不可忽視的問題
另一方面
用JSP生成的HMTL界面的開發周期更短
更容易維護
另外
HTML界面可以越過防火牆
防火牆在B
B和Internet應用中是一個很嚴重的問題
靈活性和性能的考慮
我們在開發系統之前
需要權衡獨立於廠商抽象定義所提供的靈活性和特定廠商產品帶來的性能
一般情況下
特定廠商開發的產品的執行性能會比獨立於廠商抽象定義好
因為特定廠商開發的產品提供了更少的層和抽象
然而
它的靈活性會大打折扣
因為客戶一旦選擇了特定廠商開發的產品
這樣會使得用戶很難在不同用戶之間選擇產品的余地
掌握技術
技術的學習
研究是我們最為基礎的要求
僅僅理解技術是什麼和如何運用它們是不夠的
為了理解技術的適用范圍和局限性
軟件專業人員必須研究技術最底層的東西
比如
研究TCP/IP
操作系統
數據庫技術
編譯器等等
這樣將使得你在用具體的技術和什麼時候去用具體的技術過程中提供了很好的方式以輔助您的決定
聘請一位經驗豐富的架構師
軟件是一項開發代價昂貴
對於公司來講是巨大的投資的活動
然而我們經常把架構系統的職責交給了不稱職的人員
公司不會讓簿記員去處理IPO
也不讓值夜班人員起草法律條文
同時也不應該讓高級程序員架構他們的信息系統
我們需要在商界挑選出最好的架構師
聘請一位經驗豐富
成熟
在業界不僅有良好的聲譽而且過往業績很也好的架構師
一定要給優秀的架構師給豐富的薪水
通過這樣的方式
您將會避免失敗的架構
從而節省了比該架構師多
倍的薪水
.沒有萬能藥!無論是EJB
Servlets
CORBA
JMS
還是面向對象技術
他們不可能適合商業問題的各個方面
研究商業問題
理解技術
聘請一位經驗豐富的架構師
然後根據系統的需求選擇合適的技術
From:http://tw.wingwit.com/Article/program/Java/hx/201311/26429.html