不知道是不是巧合Q今天一早便看到Blogjava有两关于AJAX感受的文章。而CSDN上这两天头版最显著的位|也发了一lؓMS Expression造势的文章,口风一致又满怀Ȁ情的预言AJAX迅速退场,RIA会迅速成Z。这些个qx专业写IT文章的技术专Ӟ也是有备而来Q打?Expression 2006最后的论战"的口P一心在CSDN推v再一个AJAX vs RIA论战的高潮。对q个话题其实我早憋了一肚子惌的,Z不喜ƢCSDN里U过于关注趋势的讨论Q咱们这主要是能参与一U开发的技术h员,我想在这里一定能更和各位XDJMq行更实际的讨论。小弟先在这谈几点陋识Q不妥的地方q希望大家指正?/p>
首先是AJAX vs RIA。表面上q是矛盾的焦点,而在我看来是不然。AJAX 技术的核心是XHTML和JavaScriptQ再加上CSS来做展现Q其实是传统开发方式的一个发展,q也是ؓ什么AJAX能这么快的被大家接收和喜Ƣ的原因。从某种意义上来_AJAX的目的正是要用传l的Web技术来实现RIAQCSDN的专家们把RIA和AJAX对立hQ是一个概忉|的pQ只有用ZAXML和MXMLq种XML布局的思想来实现的富客L才是RIA么? 退一步说Q难道基于XHTML布局不是ZXML布局的一U,Z么它不能在RIA中占有一席之圎ͼ
回头看看Q从XML开始普及的q代开始,׃断有出来宣判HTML的死刑,而事实是直到今天HTML依然是互联网的主。看看PHPQ也有类似的l历。ؓ什么是q样Q?我个人执著的认ؓq是因ؓ创造Internet内容的不是这些鼓Ҏ技术的专家Q而是q大的网民,是数以千万记的全世界普通的、甚臛_多是不入的半职业的E序员和普通的|民。一斚w对于其中的很多h用最的代h把内Ҏ到网站上Q能从网站上得到他们需要的反馈Q他们需要传l而基的HTMLQ或许将来小学生译֠里就会学HTML|页制作Q;另一斚w大量的只局限在PHP之类传统开发技术的E序员依然大量活跃在互联|上Q这些hq在Q互联网的大格局׃会变。只要HTML不会死,AJAX׃会死Q至XHMTL+CSS+JavaScript不会死,不但数年内不会,在很长的旉内都不会?/p>
现在我想亮明一下我的态度Q我喜欢AJAX的效果,但不喜欢AJAX的实现方式,我非常赞同CSDN那些人的看法Q基于XML布局的RIA异军突P“在WPF、FlashQApolloQ等RIA技术的Ҏ之下Q越来越多的Web应用同旉|传lWeb面和新的RIA UI。之后此消彼长,几年之内RIA成Z。?摘自孟岩的blog)?/p>
当然Q这些用来ؓMS造势的文章ƈ没有真正客观来介lRIA技术的现状Q一斚w我在前面说的AJAX技术ƈ不是站在RIA的对立面Q而是恰恰是达到RIA的一U方式;另一斚wRIA的持l发展、或是取得突破绝不会是因为Expression的横I出世。这ơWPF出来QCSDN的几文章都不同E度的认是跨时代的大事,或许?net开发h员是q样Q但对于我们Java开发者,很幸q,我们早就可以感受C他们q到的震撼和快乐了!
了解事情前因后果的h都知道,RIA发展已久QExpression不过是微软运用一贯的跟风模仿的手D늚另一个成果,基本是把MM的那一套弄C的^台里去,q不是什么有创造性的发明。在Java领域Q我们一直有都是生成SWF?开源的Laszlo + Javascript 和Adobe的MXML + Actionscript (Flex) 两套ZXML布局的优URIA体系Q此外还有Sun的基于java的JDNCQ加上AJAX来实现RIAQ我们有非常丰富的选择。这几种技术都l过了多q的发展日趋完善。尤其是FlexQ事实上Q半q甚至一q前它推?.0 beta的时候,CSDNq些专家有_的理由像现在q样Ƣ呼雀跃了。而微软,好像在明q二季度才会出Expression的正式的W一版,不折不扣的后来者?/p>
微Y来了Q作为后来者他毫无疑问会l用一贯的打压的手D去对付竞争产品Q市场洗牌是不可避免的。今q在Laszlo的压力下QAdobe已经在Flex2.0中将原来收费的Flex Data ServicesҎ了有条g的免费用,现在狼来了,Adobe来肯定q要有新的拉拢开发h员动?Ҏ们来说Ş势大好。RIA的趋势无需辩论Q现在的问题是作Z个JavaE序员,对于面对众多可选的实现RIA的\Q我们该走那一条?
我对Flexq行q一定的学习Q和Java良好的集成以及大量的现有的Flash制作人员Q我q是比较看好它的。希望深入用qFlex或是其他RIA技术的朋友能出来交指点啊Q?/p>
声明Q本博客中所有文章均为版d创,转蝲请保留作者信息,q注明出处?br />
- 人性化
- 质量W一
- 互相受益
- 从经角度出?/li>
- 不断提高
- 慢慢?(Baby stepsQ很多书L婴儿?
首先是这一版加入的几个新的 Widget: Clock, FilteringTable,ProgressBar。这些widget中比较重要的?FilteringTableQ?FilteringTable的加入是用来替换以前的SortableTableQ相比SortableTable, 它的新的Ҏ包括:
Multiple Column Sorting (number of columns settable, default is 1)
Sorting in place (non-destructive)
Per-column programmatic filtering
Add and remove rows on the fly
Update field values (with typing) on the fly
No restrictions on sorting on markup
从这个地址M验一下: http://archive.dojotoolkit.org/nightly/tests/widget/test_FilteringTable.htmlQ功能非常强大,可以直接从传q来的JSON对象中构造出列表Q动态的qo数据Q改变各个字D늚|可惜q个版本中还不支持分,列、行的拖拉的功能Q只能是期待下一版了。其他几个Widget也都非常的实用,dojo的官方网站上都有例子Q感兴趣的可以去找找?/p>
下一个是让h感到惊喜是新增的 dojo.charting ?dojo.gfx 包, dojo.charting 提供了一个基于Vector实现了多U图表类型的charting engineQ从demo上来看,非常不错哦! 可以从这个地址体验一下:
http://archive.dojotoolkit.org/nightly/tests/charting/test_engine.html
另外一个好消息是,从昨天dojo官方|站的新M看到 Greenplum ?SitePenQ两个技术型的企业) 宣布把他们的一些技术捐赠给Dojo?new charting engine。dojo.gfx是一个二l矢量图形的APIQ能自动的根据客h览器的类型决定用SVG或是VMLQ也很实用,比如新增加的Clock Widget是Zq个包实现的。这两个包的加入让我们有理由怿不远的将来,dojo必然会撑L图表的一片天!
然后?dojo.a11y 包,a11y 是accessibility的羃写,主要是加入对键盘按键Q快捷键Q的支持。官方网站上说的是在Dojo 0.4中只有一部分widget中已l加入了q方面的支持Q在0.5中会加入努力更多?/p>
国际化支持方面,q个版本?dojo.i18n 包做了不的改动Q加入了?collecting localized resources 的支持,提供了更多的date and time 的格式,此外对很?widget QDatePicker, TimePicker{等Q?也做了国际化的改q,不过DatePickerQTimePicker依然是丑陋无比。可以看到和dojo 0.3.1比,国际化的框架q没有很大的变动Q?q次主要是具体的q行一些完善?/p>
q有很多其他的包Q像 dojo.lfxQdojo.namespacesQdojo.html{等Q在q一版中也都得到了很大的提高Q详l一点的列表可以查看 http://dojo.jot.com/WikiHome/Release0Point4 ?/p>
?.3.1 ?0.4 几个月的旉里dojo便得到如此大的提高,ҎDojo|站上的公告Qdojo 0.4.1q几天也p发布了,在几个月后又要出0.5Q按照这效率Q想想一q后的dojoQ真是让人抓狂!