|
作者:hopesoft
出處:http://www.51ajax.com
一、前言
自去年開始,AJAX一下成了關注的技術熱點,各種AJAX框架迅速的發展了起來,其中又分為客戶端AJAX架構,服務器端AJAX架構等,其中DojoToolkit做為一個優秀的客戶端AJAX架構,被越來越多的人所關注,學習。自去年開始,AJAX一下成了關注的技術熱點,各種AJAX框架迅速的發展了起來,其中又分為客戶端AJAX架構,服務器端AJAX架構等,其中DojoToolkit做為一個優秀的客戶端AJAX架構,被越來越多的人所關注,學習。
二、Dojo簡介
作為早期的開源AJAX架構之一,Dojo開始于2004年9月,網址是 http://www.dojotoolkit.org,由JotSpot的Alex Russell所領導。
Dojo是一個開源的JavaScript工具包,本身預置了很多模塊,可以實現完整的輕量級窗口組件及很多功能。Dojo的包加載機制(Package System)可以實現動態加載所需模塊,而且用戶可以編寫自己的Dojo擴展模塊,有很好的靈活性。
三、技術特點
1.文件結構
Dojo目前最高版本號是0.3.1,它的文件主要由一個包含主要功能的核心代碼文件(Dojo.js)和眾多的Javascript文件組成。使用時可以根據包機制,動態載入所需模塊。
根據核心代碼包含模塊的不同,又細分為以下多個版本:
?AJAX版本:可以創建帶有AJAX應用程序,集成復雜的可視效果,并使用事件模塊。
?Widget版本:包括與小器件實現松散耦合的 HTML 和CSS 模板能力,提供明確分離的樣式、內容和邏輯。
?Event and I/O版本:包括事件模塊及I/O模塊
?Event版本:包括事件模塊
?Kitchen Sink版本:該版本包括整個工具集合
以上版本分別適用于不同的場合。用戶也可以根據自己的需求重新構建自己的核心代碼文件,只包含自己常用的模塊,以避免頻繁動態加載常用的模塊。
2.程序結構
Dojo官方的定義中,將Dojo稱之為Toolkit(工具包),不是Framework(只是Framework的一部分),也不是Library(在Library之上又加了一層封包系統)。Dojo包括了Javascript本身的語言擴展,以及各個方面的工具類庫,和比較完善的UI組件庫。
如下圖:(原地址http://manual.dojotoolkit.org/WikiHome/DojoDotBook/Book16)

從圖中也可看出,Dojo的設計結構非常合理,且擴展性非常強,能夠不斷增加新的功能,且保證程序高效的運行。
四、官方資源
Dojo的官方網站有以下資源,可以幫助我們很快的熟悉Dojo的結構,當然,因為Dojo有豐富的功能,要完全掌握還需要在實際開發中逐漸掌握。
1. Dojo手冊(The Dojo Manual)
網址:http://manual.dojotoolkit.org/
系統地介紹Dojo的機制,使用方法,示例代碼等
2.Dojo郵件列表(The Dojo Mailing Lists)
可以討論交流在使用Dojo中遇到的問題,或希望改進的建議
申請加入地址:http://dojotoolkit.org/mailman/listinfo/dojo-interest
查看存檔:http://news.gmane.org/gmane.comp.web.dojo.user
3.Dojo錯誤跟蹤系統(Bug Tracking)
網址:http://trac.dojotoolkit.org/
可以提交有效地發現bug,提交bug,以便能夠及時地消除Dojo中的bug
4.代碼倉庫(The Dojo Subversion Repository)
網址:http://trac.dojotoolkit.org/browser
可以很方便地獲得最新版本的Dojo程序包
5.The Dojo Wiki
網址:http://dojo.jot.com/
Dojo Wiki的內容類別相對比較豐富,涉及到Dojo的各個方面。
6.IRC
聊天室地址:irc.freenode.NET
7.Dojo程序包中附帶的Demo程序
提供了8大類近30個Demo程序,可以在實踐中更快地掌握Dojo的用法。
提示:推薦加入Dojo的郵件列表,并仔細研究示例代碼,這樣能更快地掌握Dojo的使用方法。
五、發展前景
1.技術層面
與其它AJAX框架相比,Dojo設計的包加載機制(Package System)和模塊化(Libraries)的結構,能保持更好的擴展性,提高執行性能,減輕了用戶開發的工作量,并保持一定的靈活性(用戶可以自己編寫擴展)。
2.市場層面
Dojo現在發展迅猛,得到廣泛的支持,并成立了Dojo 基金會 , IBM 、AOL 、SUN這些大公司和WebWork、Tapestry、Open Laszlo等開源團隊都是dojo基金會的成員,雄厚的后盾保證了Dojo可以持續的發展下去。
3.開發團隊
在Alex Russell的領導下,Dojo的開發團隊有著強大的開發能力,從目前版本提供的功能、質量及更新的速度我們就可以看出來了。另外近期Dojo將會發布0.4.0。
4.用戶群體
由于Dojo出色的設計,越來越多的AJAX專家及新手加入到了Dojo的開發者中,這些開發者也會相應地動Dojo的發展。
5.學習資源
Dojo官方網站有著豐富的學習資源(見“官方資源”一節),可以幫助人們更快地掌握Dojo,減少學習成本。
六、結語
Dojo可以幫助開發人員開發大型的AJAX項目,并有助于構建健壯的代碼,節省開發時間。Dojo背后強大的支持后盾也可以保證持續不斷的補充新功能,有助于我們脫離低層重復的工作,專注于在此基礎上進行開發。
JavaScript技術:AJAX架構之Dojo篇,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。