首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Linux 環境下的 Java 開發 (七):「亂花漸欲迷人眼」的開源框架

     編輯:Java 相關知識

前言

江南白衣在 2005 年 9 月於部落格提出:每個團隊都應有一個 Appfuse 風格的專案,用於示範團隊當前的架構框架與設計模式。這類專案好處眾多:提供共同的 Library Stack、可靠的程式碼藍本、確保模式與程式碼風格一致、加速知識傳播、方便新人融入、為試驗程式碼提供穩定環境。且須遵守鐵律:強制更新 (最新模式需重構至 MyAppfuse)、規範更新 (嚴格測試並撰寫更新記錄、移植文件)、強制 Copy Start (所有程式碼必須從 MyAppFuse 複製)。詳情請參閱江南白衣部落格。

2005 年後,各類 Full-stack 框架如雨後春筍,江南白衣自家框架演變為 SpringSide,也是我最愛的框架。我不可能了解每種框架,僅介紹近期引起我注意、讓我「有一點心動」的幾款。

SpringSide 2.0

目前版本為 rc1,但不影響使用,rc 版至正式版僅修復 Bug 不增新功能,可放心應用於專案。優點:

  1. 自動管理元件:只需下載 SpringSide all-in-one,無需四處尋找開源元件。提供優質 IDE 外掛,專案產生時自動建立目錄結構、複製指定元件並整合,無需修改任何設定檔,可將精力集中於業務邏輯。
  2. 清晰的程式碼結構:對多層架構分層明確,對 MVC 各層提供優良基礎類別,僅需擴展。擁有一致的程式碼規範,寫起來很舒心。對各層程式碼放置位置、元件設定檔寫法與存放位置都有指導意見,避免結構混亂。
  3. 完善的測試支援:DAO 層提供優良測試基類,Control 層與 View 層可用整合測試完成,並整合 Selenium 整合測試框架。使用 SpringSide 提供的功能即可輕鬆完成各類自動化測試,無需尋找額外元件或複雜 Mock 技巧。
  4. 全面詳細的中文開發文件。

Grails

最新版本 0.6,雖未出 1.0 但已大熱,源於 Rails 框架魅力。山風小子評價「一見鐘情、再見傾心」,我也很心動。優點:

  1. 使用動態腳本語言 Groovy:語法接近 C、Java、C#、JavaScript,以 {}、分號分隔程式碼。寫起來很有詩意,且動態語言優點在於大腦怎麼想程式就怎麼寫,不受靜態語言結構與資料類型限制。
  2. 採用「慣例優於配置」範例:若檔案名稱本身能說明用途,則無需在設定檔再次宣告。框架會檢視檔案名稱自行判斷用途。無設定檔,寫程式更舒服。
  3. 使用 Spring、Hibernate 等開源框架:以前學的知識不會白費。

《Grails 權威指南》即將出版,躍躍欲試。

OperaMasks

國人自行開發的基於 JSF 規範的開源框架,後台為金蝶。江南白衣是高手,金蝶是強公司,國內少數持續在 Java 中介軟體領域投入研發並有建樹的廠商。其應用伺服器為首個通過 Java EE 5 認證,現已加入 Java EE JCP 委員會。

優點:

  1. 全中文開發者社群與開發文件。
  2. 整合熱門 AJAX UI 框架 EXT,以 Tag 封裝良好,提供實現 AJAX 效果的 JSF 元件。
  3. 提供基於 Eclipse 的可視化開發 IDE。

ThinkPHP

非 Java 框架,而是 PHP 框架,讓我非常心動,甚至萌生放棄 Java 投入 PHP 陣營的念頭。主要兩點:國產、吸收了 Java 框架優秀思想 (MVC、TagLib、ORM、ActiveRecord 等)。主要從 Struts 結構移植改進,封裝 CRUD 與常用操作,在模板引擎、資料庫抽象層、快取機制、認證機制與擴展性方面均有獨特表現。對國內用戶更貼心:PHP4/5 完全相容、完全支援 UTF8 等。

結語

開源世界博大精深,我們如大海中一葉扁舟,不可能完全學會並使用所有框架,更何況與時俱進,精力有限。在眾多框架中,只要挑選一個徹底掌握,足以應付大多數開發任務。選哪一個?你是否也像我一樣挑花了眼?

此外,Asianux 3.0 推出,依經驗紅旗 Linux 將推出桌面 6.0、資料中心伺服器 6.0 與 Workstation 6.0,期待中。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved