Flex框架代码解读感受:一群技术专家写出的脏代码

来源:互联网 发布:如何在淘宝上卖话费 编辑:程序博客网 时间:2024/05/16 09:59

目前正在解读Flex框架代码,有一些感受:

1. Flex的每个版本都在不断地对非常基础的框架功能做着改动。

     比如说程序最初启动时候的进度框。这应该是最基础的框架功能之一,改来改去说明一个问题:Flex框架从来没有被认真地整体规划过。

2. Flex框架利用FlashPlayer的执行特性,比如帧的跳转,帧事件的监听等,自然地,代码有不易读懂的客观因素。但是,实在是太难读懂了。

    大量的用于条件判断的标志变量充斥其中,又在不同的代码片段中对这些标识进行赋值。

    不同的类之间有时相互保有对方的类成员变量。可以猜测有些设计是为了解耦,但是不能为了解耦而解耦,明显存在相关依赖关系的类之间没有必要解耦。

    解耦的结果只是带来代码结构的混乱,代码可读性大幅下降。

    我不认为没有更好的框架设计能够实现Flex框架的功能。

3. 没有很好的代码规范。

    条条大路通罗马,为了实现统一个功能,可以有很多种编码方式。代码风格不统一是Flex框架的一个败笔。

    比如这篇文章里提及的类成员变量的访问方法就很特殊: http://blog.csdn.net/tiangej/article/details/7342581

4. 由编译器生成的源代码文件(参见 http://blog.csdn.net/tiangej/article/details/7345629  中的“事前准备”部分)中存在垃圾。

    例如生命的局部变量被赋值之后就再也没有被用上


Flex框架是ActionScript语言面向应用程序(RIA)而开发出的非常充满创意的产品。

是很多ActionScript优秀工程师的智慧的成果,揭开了ActionScript应用的新应用领域。

宏观上,其方向性的引导作用是巨大的。

但是在微观上,整体结构的设计、代码的风格上又存在着显而易见的遗憾。

 

有人说美国的软件工程师很聪明,总能有很好的创意开发出新奇的东西。而作为团队,开发出的软件产品其代码又是非常混乱的。

微软产品的源代码据说就惨不忍睹。

这些都是谣传,未必真是这样。

不过你看过Flex框架代码吗?你是否有和我一样的感受?

 

 

原创粉丝点击