Tag Archive for SDK

Robotlegs是什么?

上个月在M童的提议下,终于开始使用一个框架了,开始了解一下Robotlegs是什么?

Robotlegs 是一个用来开发Flash,Flex 和 AIR 应用的纯 AS3 微框架。它的核心是一组模块化的工具集以及界面集,用来信息沟通任务,减少重复的代码编写,以及管理应用程序中的依赖注入。除了这些核心工具集以外,Robotlegs还提供了一个比较规范的MVC+S(Model模型,View视图,Controller控件和Service服务)实现,来帮助开展工作。

一个典型的Robotlegs MVC+S应用程序包含以下几个部分:

  • Context,实际上是一套自展机制,用来初始化Robotlegs所使用的依赖注入以及各种核心工具,一个应用程序是可以有多个 context 的,这对想要加载外部模块的应用程序很有用,因为在一个 context 里的 actor 只能在他们的 context 定义的范围之内相互通讯,所以在一个模块化的应用程序里,不同context 之间的通讯是完全可能的。

 

  • Controller & Commands,Controller 层由 Command 类体现。Command 是用来执行应用程序单一单位工作的,无状态的,短生命周期的对象。Command 用于应用程序各层之间相互通讯, 也可能用来发送系统事件. 这些系统事件既可能发动其它的 Command, 也可能被一个 Mediator 接收,然后对一个 View Component 进行对应这个事件的工作。Command 是封装应用程序业务逻辑的绝佳场所。Command 应该只在处理框架事件时被执行, 而不应该被任何其他框架 actor 实例化或执行。

 

  • View & Mediators,View 由 Mediator 类体现。继承 Mediator 的类管理应用程序中的 View Component 与应用程序中的其它对象之间的信息交流。一个Mediator 将会监听框架事件和 View Component 事件, 并在处理所负责的 View Component 发出的事件时发送框架事件。这样开发者可以将应用程序特有的逻辑放到 Mediator, 而避免把 View Component 耦合到特定的应用程序。

 

  • Model ,用来在 model 层对数据进行封装并为其提供 API。Model 会在对数据模型进行某些工作之后发出事件通知。Model 通常具有极高的便携性。
  • Service,一个 service 层的 Service 用来和“外面的世界”进行通讯。 Web service、文件存取或者其它任何应用程序范围之外的行为对 service 类都很适合。Service 类在处理外部事件时会广播系统事件。一个 service 应该封装和外部服务的交互且具有非常高的便携性。

Robotlegs 使用Flash的原生事件用于框架 actor 之间的通讯。 自定义事件类通常用于此用途,虽然使用现有的 Flash 事件同样可行。Robotlegs 不支持事件冒泡。使用自定义类允许开发者通过给事件添加属性来为框架 actor 之间通讯所用的系统事件提供强类型的负载。

所有的框架 actor 都可以发送事件:Mediator、Service、Model 和 Command。Mediator 是唯一接收框架事件的actor,Command 是在对框架事件的处理中被触发,一个事件既可以被一个 Mediator 接收, 也可以触发一个 command。model 和 service 不应该监听和处理事件,这样做会把它们紧耦合到应用程序特有逻辑而降低潜在的便携性和复用性。

ActionScript Project引用mx.effects

在Flash builder 4.1中,建立了一个SlideSample的ActionScript Project,想import mx.effects.Effect,但是当前工程中,SDK并没有加载framework.swc,手动在Library path中Add SWC,俺机器的路径为“D:\Program Files\Adobe\Adobe Flash Builder 4\sdks\4.1.0.16076\frameworks\libs\framework.swc”,如此这般,可以很成功的引入mx.effects中的效果。

应用编译后,发现报错:Resource Path Location Type Unable to resolve resource bundle “core” for locale “en_US”.等一堆的Error。

接着手动在这个工程的Library path中Add SWC,“D:\Program Files\Adobe\Adobe Flash Builder 4\sdks\4.1.0.16076\frameworks\locale\en_US\framework_rb.swc”。

嗯,到此,终于成功的使用了Flex中的效果。

备受折磨于SDK

从Flash Build beta1到beta2改变了好些东东,因为对它有无限的期待,呵呵,我开始了beta2的跟随过程…

从自带的SDK到4.0.0.12589,应该是一个蛮有意思的改变,因为List用的比较多,所以感觉它也是一个总爱变化的类,在年后,下载了4.0.0.13875,依旧类的命名空间有些改变,主要是指mx类的,同时发现design模式对于Skin的支持很是不好,故而很是期待什么时候能出正式版本呢..或是比较好的SDK..

一路走来..感觉有些不容易..嘿嘿..

哦,2010

实在不好意思,又面对了,新的一个年的数字,呵呵,没笑出来。

今天又出去狂逛了一天,好似总离不开吃的,南锣鼓巷,王府井,西单,当然,见的最多的就是人了,感叹中国就是很奇妙。

新的一年,工作中知道的太少,是不是应该在这儿骂骂M童呢?嘿嘿,只怕他会老郁闷,谁让我自己啥也没有学呢。。不过。。依旧还是怪在他的身上吧,让自己快乐些。

应该有些计划吧,让自己更加迷茫些,反正总也计划不出地,这就是我,啦啦,可以得意的。

装完Gentoo后,再也没有装其他的任何东东,因为不知道如何进行了,Flex4的SDK依旧在改的过程序,只怕目前用它写的东东,又要进行大的调整,生活就是这样子,反复折磨,Trouble is a friend。