众说纷纭的Flex框架Mate

Mate是由AsFusion在2008年6月创建的一个基于标签的Flex框架。自从InfoQ报道了Flex社区对其发布的反应后,Mate得到了Flex开发者的注意。当前很多人都想知道相比于已有的其他框架如Cairngorm和PureMVC,Mate如何适应于Flex RIA开发。

TechPer的Java开发者Per Olesen在其博客上发表了一篇博文,谈到了Mate的优缺点。

根据Olesen所述,Mate的优势在于:

Mate是个Flex框架,这意味着它不会隐藏或者抽取对Flex apis的访问。其通信机制基于通常的flex事件,很大程度上要靠Flex apis完成。这是它与Cairngorm相同的地方,但是与PureMVC的区别就很大了。
Mate使用了依赖注入(DI),这是我所喜欢的一种编程模式,在进行Java开发时我就常常应用该模式。通过使用Mate,mxml的视图定义变得非常简单和干净,其中只包含视图代码。这是它与PureMVC相同的地方,但与Cairngorm却又不一样了。

大体来看,Olesen很喜欢Mate并认可其对Flex的继承。但是Mate的有些东西Olesen却并不喜欢,他说:“后台有一些东西太具魔力。Mate有个叫EventMap的东西,用来包装应用。EventMap都是通过XML实现的。XML编程很快就会令你身处困境。我讨厌它!”

Olesen还发现Mate中有段代码亟需改进。

来自威尼斯Rapture公司的John Blanco在“太多魔力”问题上与Olesen产生了分歧。他说:

Mate是一个框架;因此我们不可能在短短的5分钟内就能掌握好它,这也是不现实的。
还有,如果你不喜欢编写XML的话,你就不必非得使用HTTPServiceInvoker。这是由你的项目决定的。你可以只用MethodInvoker,而且能够轻松模拟Cairngorm的Command以及PureMVC的Command和Mediator。

但是Olesen回应到:

EventMap是Mate的一个非常重要的概念和组成部分。该框架的很多内容都是以EventMap为中心的。大家也都这么认为。这是该框架的 意图。如果你打算使用Mate,你就应该了解EventMap的概念。它是Mate的重要内容应该会有助于你。这可能吗,我表示怀疑。

查看英文原文:Flex Framework Mate, the Good and Bad

你可能感兴趣的:(众说纷纭的Flex框架Mate)