初识Cairngorm microarchitecture~

花了大半天的时间,读完了Steven Webster 关于cairngorm微框架的几篇介绍,总结一下,印象最深的主要有三块,
1、全局唯一的ModelLocator加上DataBinding,简化了client model(或者说state)的管理及view的更新,可以避免硬编码更新view的痛和极大的不方便及维护代价,这需要合理设计各view compomnent使之支持完全绑定化;
2、FrontController加上事件机制(一个全局的事件管理对象),解耦了user gesture对具体动作(或者说command)的直接调用,这样也有利于清晰的划分用例,由user gesture派发的event说要想做什么(不需要知道怎么做),frontcontroller会分配具体的command去做事;
3、ServiceLocator加Command(或者应该说Command加ServiceLocator)解除了command实现与底层服务之间的耦合,这样command只需借用serviceLocator(间接借用,中间还有一层BusinessDelegate)去实现所需功能,具体通过那个服务(HttpService、WebService、RemoteObject)实现的由servicelocator处理,command会在与server交互后(成功和失败的处理)更新client state也即ModelLocator,这样会自然触发view的更新(1)
即使不用cairngorm微框架,其中许多好的实践还是可使用的,例如上面三点。

Cairngorm开发流程及调试点


当前PERTChart控件开发情况

~各种开发工具或者说平台虽说可以学习并应用,但其总有各自的特点处,加以了解再做进一步会好许多,在Flex应用开发上,通过Cairngorm可以了解其提倡的实践模式(其特点了),这样就可以把为其冠以其他平台的开发习惯的开发方式摒弃,采用更合适的了!

你可能感兴趣的:(Architecture)