上个星期,我写了些关于我在使用Library项目时遇到的问题,及解决这些问题的方法。有位读者回复到:
"听上去似乎有三种理由不要使用FLEX。"
我承认我本打算随意回答说,Flex中的许多内容需要你付出更多精力,而不仅仅只是你表面所看到的,所以如果你这么轻易就打算放弃,你可能应该选择另外一份工作。但是在深入思考之后,我决定谈谈我的一些想法:为什么使用库很重要。
在程序之间共享代码
我们使用library项目的主要原因是我们需要有至少两个代码的变量。随着每隔变量的要求发生变化,基本代码的差别会越来越大。如果我们把公共源码放在库项目中,能够保证类似的源码将能够彼此支援。
保持相关问题的独立性
我们可以肯定库源码可以支持多种项目的一个原因是,库源码不能直接引用使用它们的项目源码。这就意味着,主项目代码可能改变,但不会影响库中源代码。
如果必要,你就要针对库代码计划API,这也就意味着,如果你决定从库换到其它一些代码,你知道,你不会发现"潜伏中"的一些未预料到的依赖关系。
你会惊讶的发现开发者基于Singleton Pattern写代码有多么容易,这个平台从他们所在的任何地方提供了他们想要的任何源码(或者作他们的代码想要做的任何改变)。以我经验来谈,这使得代码很难维护,部分代码的小小变化会破坏到看上去不相关的其它代码部分。如果你在团队里有这样的队员,请你把部分代码存放在库中,以免此人制造一些降低代码可维护性的因素进去。
测试驱动的开发
在不同项目中可以共享代码资源的一个结果是,我们可以拥有一个应用来测试库代码。测试驱动开发是一个独立的项目,不过在我看来你的单元测试不应该和主程序代码放在一个文件夹里。库让您可以把单元测试内容放在一个单独的文件夹中,并且仍然可以在主程序里进行测试。另外,我打算做一个视觉组件的安装参考。我发现如果不需要启动整个程序的安装引导程序,只需要加载一部分我想要的东西的话,会很方便的把代码放在一起。小项目编译起来更快,能够把整个环境缩小到一个你想要解决的问题。完成后,接下来的开发者们可以用这个安装参考来作为个向导。
下载速度
如果你提交的不止一个基于网络的Flex程序,你可以把库资源放在swf的外部,并且配置为执行期共享库(RSL's)。一旦RSL下载到用户缓存中,当用户用到您的其他应用时就不需要再次下载了。这可以节省下载时间,使得用户能更快的与您的应用交互。
分享到:
相关推荐
通过学习这个“Flex皮肤专题”,开发者不仅可以掌握Flex的皮肤设计技术,还能提高应用的视觉吸引力,提升用户体验,同时,这也将有助于开发者更好地利用Flex库资源,提高开发效率。对于想要深入Flex开发或者改善现有...
"Flex万年历记事本"是一个使用Flex技术实现的项目,它结合了日历功能和记事本特性,为用户提供了一种方便的方式来管理和记录日常生活中的事务。 在Flex源码中,我们可以期待看到以下几个关键知识点: 1. **MXML与...
二、使用Flex Drag-and-Drop库 1. 拖动源组件:拖动操作的起点,通常是一个可交互的UI组件,如`List`、`Button`等。要启用拖放功能,需要在组件上监听`mouseDown`事件,并调用`DragManager.doDrag()`方法启动拖动。...
在这种情况下,我们讨论的是如何使用Flex库来处理这种文件类型。Flex是一种基于ActionScript 3的开源框架,用于构建富互联网应用程序(RIA),尤其是与Adobe Flash Player或Adobe AIR兼容的应用。 标题“读取shp的...
本项目聚焦于使用Flex API,一种基于Adobe Flex的开发框架,来实现军标箭头库的构建。这涉及到Web GIS应用的开发,以及如何将军事符号标准(例如北约军标)与地图服务相结合。 首先,ArcGIS Flex API是由Esri公司...
Flex 和 JSP 结合使用是一种常见的前端与后端交互方式,它允许开发人员...综上所述,Flex 和 JSP 的结合使用为构建动态、交互的 Web 应用提供了一个强大的平台,开发者可以通过熟练掌握这种技术来提升应用的用户体验。
解压后,打开Xcode项目,这里通常包含一个或多个目标,如FLEXLoader,它是用于加载FLEX库的可执行文件。 接下来,我们需要配置FLEXLoader。这包括设置设备(确保是越狱设备),并编译FLEXLoader。编译完成后,生成...
3. **Flex组件库**:Flex提供了大量预先构建的UI组件,如Button、Label、TextArea等,开发者可以通过这些组件快速搭建应用的基础框架。在这个记事万年历应用中,可能会用到Calendar组件或者自定义的日历组件。 4. *...
在Flex中,我们不能直接使用HTML的`iframe`标签,但可以通过Flash Player的API和Flex组件库来实现类似的功能。 2. **使用NativeWindow API** Flex提供了一个`NativeWindow`类,可以创建和控制独立于应用程序主窗口...
- Mavenizer会生成一系列的pom.xml文件,这些文件描述了每个Flex库的依赖关系和构建信息。 - 在你的Maven项目中,添加这些新的Maven库作为依赖。 - 最后,通过Maven的生命周期命令进行编译、测试和打包操作。 5....
本文介绍了如何使用Flex和Bison在Linux环境下生成Parser,包括安装Flex和Bison、使用Flex生成词法分析器、使用Bison生成语法分析器、使用iconv命令转换编码等内容。掌握这些知识点,对于理解编译原理和生成Parser...
在IT行业中,编写标准的Flex库项目是一项至关重要的任务,特别是在构建可复用和可维护的用户界面组件时。Flex是一种基于ActionScript的开源框架,主要用于创建富互联网应用程序(RIA)。下面将详细介绍如何进行Flex...
总结,使用Flex 4.5开发Android应用程序可以借助其强大的UI组件库、良好的编程模型和对原生API的访问能力,实现高效、跨平台的移动应用开发。虽然现在Flex可能不再是主流的Android开发工具,但了解其工作原理和优势...
1. **Flex基础**:首先会介绍Flex的基本概念,包括什么是Flex,为什么使用Flex,以及Flex的应用场景。这将帮助你理解Flex在RIA开发中的重要性。 2. **ActionScript与MXML**:ActionScript是Flex的主要编程语言,而...
1. **添加引用**:在Flex Builder或使用命令行编译时,将SWC文件添加到类路径或库路径中。在Flex Builder中,这可以通过右键点击项目->属性->Flex Build Path->Library Path来实现。 2. **导入类**:如果SWC中包含...
用户还可以通过项目设置的Flex Build Path添加更多库文件或使用不同版本的Flex SDK。 使用TWaver Flex时,需要在应用程序的XML命名空间中引用TWaver库,即添加`xmlns:tw=...
2. **图表示例项目(demos)**: 这些示例项目展示了如何在Flex中使用Flare库创建各种动态图表。它们可能包括: - 基础图表:如简单的条形图、饼图等,用于展示基本的图表实现。 - 动态效果:如数据更新时的平滑过渡...
本教程基于Flex官方文档,旨在为开发者提供中文版的详细学习指南,帮助理解并掌握Flex的核心概念、组件、布局、事件处理以及数据绑定等关键知识点。 1. **Flex简介** Flex是基于ActionScript 3.0和Flash Player或...
《Windows下词法分析分析器Flex和语法分析器Bison的使用详解》 在计算机科学领域,词法分析和语法分析是编译器设计的重要环节。Flex和Bison是两个强大的开源工具,分别用于词法分析和语法分析,尤其在Windows环境下...