奇迹私服 《那些年啊,那些事??一个程序员的奋斗史》??13 - norains的专栏 - 博客频道 - CSDN.NET为什

同样,当我们习惯性的想给一个树节点的icon属性指定一个图片路径,来改变节点的图标,这在我们需要根据节点内容决定图标时很常用。但我们却会发现无法找到这样的API。正确的做法是派生一个新类,重写getIconClass方法去改变节点的CSS Class,再通过CSS来指定节点的图标。这实现了表现层的完全分离。

表面上看,这些架构和模式,增加了开发难度。而实际上,它却增加了代码的健壮性和可维护性。在这样一个实际开发代码只占整个项目时间10%的没有银弹的时代,架构才是提升整个软件质量的关键。良好的架构,可以大大降低整个项目的风险。而从Dojo中,我们能够潜移默化的学习到Ajax应用应该如何去设计。

一个稳定、可扩展、可维护的架构是所有高质量应用的基石。如果所有人都按自己的思路随心所欲的写代码,那就不会有那么多软件方法学,设计模式的存在。Dojo在一定程度严格规定了这样的开发规则,这也是很多人难以上手的原因。

树形结构是各种开发最常用的一个组件,其本质是:一种数据表现视图,负责处理用户交互(逻辑)和内容展示(表现),不存储任何数据。Dojo中的树完全符合这样的本质,所有数据的存储和对数据的操作都是通过专门的DataStore来实现。

以典型的数据,逻辑,表现的三层架构为例,来看看Dojo中树(Tree)是如何设计的:

这也揭示了本博客的目标:帮助大家用好Dojo这个优秀的Ajax框架。

很多时候,最好的选择就是自己最熟悉的工具。但如果恰好这个最熟悉的工具又是一个强大的工具,那将事半功倍。当你需要去开发一个长期的或者大量使用Ajax的应用,Dojo将是最好的选择。

既然能被众多著名IT公司支持,Dojo必然有它的独特之处,那就是:架构。

段伏枥连包也顾不得放,连忙往房间走去。房门没有锁,是开着的,只见刘思敏盖着被子,躺在床上,传奇外传sf,不停地发出痛苦的呻吟。

“啊!你怎么了?”

“……”

“喂?”

显然刚开始的问话刘思敏并没有听到,这时候才反应过来,有气无力地应了一声:“哦……你……回来……了……”

“怎么回事?”段伏枥很急切地问。

“我……肚子……疼……”

“啊?有没有看医生?要不要我给你买点保济丸?”

“不……不是这个啦……”

“那是啥?”段伏枥疑惑不解。

“我……我……那个……那……来了”刘思敏显然不好意思,吞吞吐吐,蜀门私服

“那个?哪个啊?哦……那个啊……”段伏枥终于反应过来,刘思敏所说的“那个”指的是“哪个”了。

“能不能……帮……我……到楼下……嘉旺……打一份……粥?我……一天……没吃……东西了……”

“什么?一天没吃东西了?”段伏枥只要饿上一两个小时,就会全身发抖,听到刘思敏说已经一天没吃东西,那还了得?转身就要往楼下走。

“等等……再……帮我……”

“嗯?”段伏枥停下了脚步。

“买点……那个……卫生巾……”

什么?卫生巾?让一个大男人去买卫生巾?如果是在平时,段伏枥肯定毫不犹豫就拒绝了;可是今天,看着刘思敏可怜兮兮的一副要死不活的样子,又怎能下狠心拒绝。没办法,段伏枥只好含糊地说了声“好”就下楼了。

进到白石洲最大的超传奇外传私服,在卫生巾陈列架前不远,破天一剑sf,段伏枥停下了脚步。难道,就要这样走进去?直接拿了就走?咦?那不是还有人嘛,要是我一个男人进去,她们不好意思怎么办,魔兽私服,还是等一下吧。犹犹豫豫,欲进又止,只是这幅摸样在超传奇外传私服保安眼里,显得是那么鬼鬼祟祟。于是,旁边的保安就一直盯着段伏枥。段伏枥显然也发现了保安的异样目光,算了,反正也要买的,直接进去吧!

段伏枥一狠心,头也不回走进陈列卫生巾的陈列架。突然,段伏枥才意识到一个非常严重的问题:满满两个陈列架的卫生巾,品牌也琳琳满目,究竟要买的是哪一种?!

段伏枥正在苦恼的时候,传奇外传sf,导购大妈发现了他的身影,走过来,很热情地问道:“破天一剑sf子,你要什么牌子?”

大妈,冤枉啊,不是我要用啊,我是帮人买的。段伏枥内心暗暗叫苦,但又不能表露出来,该怎么办呢?所幸他脑子灵光,之前网站上看过的事例浮上心头:“要远足,买一点放在鞋子里垫脚的,免得磨破皮了!”

不知道是不是之前有人也使用过类似的伎俩,或是确实有不少男人买来做垫脚之用,导购大妈听了丝毫不觉得奇怪,反而更加热心了:“哦,这样啊!奇迹sf子,我给你推荐一个牌子吧!”

然后不容分说,带着段伏枥来到陈列架的另一端,很兴奋地介绍说:“你就拿这个牌子的。一方面它瞬吸功能很好,另一方面它比较薄,放到鞋子里不会感到垫得很高。并且你看这手感,很不错!特别是两翼的粘性,非常牢,保证你走路的时候不会掉!”

段伏枥已经涨红了脸,但想到反正自己也不知道选什么牌子,不如就听听这导购大妈的推荐吧。他拿起看起来比较小的一包,头也不回地往收银台走去。

估计这导购大妈还意犹未尽,望着段伏枥的背影,以更大的分贝喊了一句:“蜀门sf子,那个牌子真的很不错。你用过了之后,觉得不错,记得回头再买啊!记住,我们的牌子是安尔乐!”

大妈,你嫌我还不够丢脸是吧?喊那么大声,不是所有人都知道了。段伏枥脸上火辣辣的,感觉整个超完美国际sf的目光都被这声音给吸引了,全部往他的方向射来。

付完款,段伏枥赶紧地跑出超奇迹私服。没走几步,隐隐约约,身后似乎还传来那导购大妈的声音:“喂……传奇世界私服子……!那个……安尔乐……拿错了……”拿错?不都是妇女用品吗,难道还有男人用品不成?你是故意让我丢脸是吧?哼,才不上当呢!段伏枥主意打定,赶紧加快了脚步。

这时候,又发现一个很郁闷的问题。刚刚出来前,已经将背包放到屋子了,而现在穿的裤子,只有后面一个口袋,虽然买的这包卫生巾体积是比较小,但这裤子后面的口袋更小,是绝对无法装入兜内的。尝试了几回,死命地塞,最后段伏枥还是放弃了,直接手拿——也就是说,必须要用手拿着这卫生巾,再到嘉旺去打一份粥!

段伏枥连哭的心都有了,但有什么办法?总不能将这卫生巾藏在哪里,然后再去买粥吧?没辙,只好皱着眉头走进了嘉旺。正如预想的一半,在前台点单时,买单小姐看到段伏枥冒汗的右手抓着一包不大不小的卫生巾,不由地向他投向惊讶的目光。

看啥看?还嫌老子脸丢得不够大啊?赶快买单,我好拿粥走!只不过段伏枥的如意算盘还是落空了,平时很快就能上的粥,今天却异常的慢。而恰好又是下班时间,人非常多,只有门口一个位置。于是一副非常有趣的情景映入每个进入嘉旺的人的眼帘:一个猥琐的男人,右手抓着一包卫生巾,坐在餐馆的门口迎宾!

有句成语叫度日如年,可对于此时的段伏枥来说,却是度秒如年。这时候,一个妈妈带着一个小女孩走进了嘉旺,小女孩看到了坐在门口的段伏枥,自然也看到了手中紧握着的卫生巾,不由地对着妈妈问到:“妈妈,这个叔叔手里拿得是不是卫生巾啊?……”小女孩的声音比较尖,虽然被妈妈喝断,但整个嘉旺的人都清清楚楚听到了,无论是之前知道的,还是不知道的,目光齐刷刷地向段伏枥投过来。这一下,段伏枥脸更红了,抓着卫生巾的手也不由地缩了缩。

好不容易这打包的粥上来了,段伏枥赶紧逃离这地方,飞一般地往出租屋跑去。当段伏枥将粥和卫生巾交到刘思敏手上时,本以为一切就这么结束了,可是没想到,人算不如天算啊!

“咦……不……不对啊……”

“什么?”什么不对?段伏枥迷惑了,这不是你要喝的白粥,以及你要的卫生巾嘛?是不是牌子不对?段伏枥赶紧应一声:“哦,我不知道你想要什么牌子,所以随便挑了一个。”

“不是……这个是……护垫……不是……不是……卫生巾……”

啥?护垫?卫生巾?什么和什么?

“护垫……是……平时……用的……卫生巾……是……是……那个来……的时候……用的……”

米西米西!还有这区别?怎么不早说?这不是坑爹么?!

“能……不能……再……帮我……买……一次……?”

啥?这丢脸的事情还要再做一次?但望着刘思敏那无助的眼神,没办法,段伏枥只好默默地转身下楼,再向超诛仙私服走去。突然才想起为什么超诛仙私服导购大妈后来大嚷拿错了,原来当时一阵激动,并且想着大包拿着不方便,所以没仔细看就抓了一包小的就跑,原来拿的是护垫啊!想到等一下那导购大妈热情的大嗓门:“魔域sf子!你刚刚拿的是护垫,看准了,这才是真正的如假包换的卫生巾!”突然间,段伏枥觉得背后不由地冒起一阵阵寒意。

显然,这个Tree很难用。要创建一个树,我们首先得学会DataStore,熟悉它的API;还得知道如何从Dojo的Tree去派生新类来重写方法,这又要去了解整个Dojo的类的继承机制。很多人开始抱怨,Dojo真难用。但其实只要前进一步,就会海阔天空。

by Nate,2010-6-12

奇迹sf为什么选择Dojo之前,我们看看哪些人已经选择了Dojo:

从熟悉到习惯之后就会发现,Dojo的门槛其实并不高。

Dojo支持者

公告栏里写到:Dojo的高门槛一旦跨过,必将别无所求。含义有二:第一,Dojo难学;第二,Dojo很强大。

因此,当我们习惯性的想用Tree.addNode(text)这样的方法去增加一个节点时时,却发现方法不存在。而正确的做法是:通过DataStore来增加一条数据,Tree会自动的更新数据的变化到界面。修改删除节点也是同样的逻辑,甚至节点的按需载入(Lazy Load)也是DataStore的逻辑,而不是Tree的。这实现了数据层的分离。


上一篇: 后面也未必有来者开始了解到网通传奇私服1.85这个人腾如果国家不批准相应的产能即使投资逻辑没有
下一篇:下面没有链接了