BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Flash Builder 4.5中的编码工作效率增强

| 作者 Sameer Bhatt 关注 0 他的粉丝 , Sreenivas Ramaswamy 关注 0 他的粉丝 发布于 2011年5月4日. 估计阅读时间: 13 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

Flash Builder 4.5 以 Flash Builder 4 发行版为构建基础,为代码编辑环境引入了各种改进功能,它们有助于在编写 Flex 和 ActionScript 代码时提高工作效率。

了解可以使用哪些工具以及何时/如何调用它们是提高编码工作效率的关键所在-通过阅读本文,您将了解这一发行版包含的新增功能并在编码时立即使用它们。

我们将重点介绍以下 Flash Builder 4.5 功能:

  • 代码模板
  • 元数据代码完成
  • 覆盖实现方法
  • 快速助手,如文件/工作区中重命名、组织导入、转换为字段、指定到变量、拆分变量声明
  • 从使用生成一个本地变量、字段、方法、类、接口和事件处理函数
  • 自定义代码生成可用于更改 Flash Builder 生成的代码
  • CSS 改进

要求

其他必需产品

Flash Builder 4.5 发行版

注意:Adobe Labs 目前提供早期预览发行版下载-Flash Builder 4.5 和 Flex 4.5 SDK 的最终发行版将于 5 月初提供下载。

必备知识

熟悉 Flex 和/或 ActionScript 3

代码模板

比如,您定义了 Array 类型的变量并希望编写一个 for 循环以遍历该 Array 中的元素。您现在可以让 Flash Builder 4.5 为您生成这个 for 循环而不必自己键入所有代码。要这样做,您只需键入“fori”并按“Ctrl + 空格键”即可(请参阅图 1)。

使用模板插入的 For 循环

图 1.使用模板插入的 For 循环

代码模板允许您使用内容助手(Ctrl + 空格键)自动插入常用代码模式。代码模板基于上下文,涵盖从 ActionScript 中的 for 循环到 MXML 中的 WebService 标记。Flash Builder 4.5 随附 100 多个预定义的 ActionScript、MXML 和 CSS 模板:

  • ActionScript-包、类、for 循环、while 循环和 try-catch 块等
  • MXML-Button、DataGrid、HttpService 和 WebService 等
  • CSS-Button、DataGrid 和 @font-face 等

您可以依次打开“首选项”>“Flash Builder”>“编辑器”>“代码模板”>“ActionScript/CSS/MXML”查看并编辑预定义的模板(请参阅图 2)。

代码模板首选项页

图 2.代码模板首选项页

您可以为常用编码模式定义新模板,导入/导出代码模板,从而在小组环境中共享一组一致的模板。

自定义代码生成

除了创建自己的代码模板,许多情况下 Flash Builder 也会为您生成代码-事件处理函数、函数和 getter/setter 等。现在,您可以使用模板自定义 Flash Builder 生成的代码。您可以依次打开“首选项”>“Flash Builder”>“编辑器”>“代码模板”>“Flash Builder”查看并编辑这些模板(请参阅图 3)。

代码生成模板

图 3.代码生成模板

您可以编辑模板,导入/导出模板,从而在小组环境中共享一组一致的模板。

要自定义事件处理函数模板,使生成的命名空间为 private 并且处理函数名称为 componentName_on_event,您可以修改事件处理函数模板(请参阅图 4)。

事件处理函数模板

图 4.事件处理函数模板

生成的事件处理函数如图 5 所示。

生成的事件处理函数

图 5.生成的事件处理函数

元数据代码完成

您可以使用新的元数据代码完成支持输入元数据标记。当您在编辑器中的类、方法或变量定义附近输入“[”字符时,将显示元数据提示。将出现一个有效元数据标记列表,这些标记与类或 MXML 中的位置有前后关系。您可以从这个列表中选择要插入的元数据标记。如果未找到所需的元数据标记,只需再次按“CTRL + 空格键”就可以看到可用选项的完整列表(请参阅图 6)。

类级别的元数据提议

图 6.类级别的元数据提议

选择标记后,Flash Builder 将生成元数据标记和必需属性。您随后即可使用 Tab 键轻松实现从一个值到另一个值的导航(请参阅图 7)。

已插入事件元数据和必需属性

图 7.已插入事件元数据和必需属性

您可以使用内容助手在元数据标记中轻松输入类名和属性名。例如,添加 [Event] 标记时,您可以从项目中可用的事件类的完整列表中选择所需的事件类(请参阅图 8)。

事件元数据及事件类型的提议值。

图 8.事件元数据及事件类型的提议值。

您还可以使用内容助手插入可选属性。

Flash Builder 还支持第三方 SWC 提供的元数据标记,前提是它们中嵌入了必需的 metadata.xml 文件。

覆盖/实现方法

当实现类或自定义基类行为时,您需要频繁覆盖超类方法并实现接口方法。在 Flash Builder 4.5 中,您可以使用“源”菜单中的“覆盖/实现方法”对话框轻松完成这个任务。这个对话框将显示一个列表,其中包含活动类继承而来的类以及它实现的接口(请参阅图 9)。

实现 SampleInterface 的 SampleClass 的“覆盖/实现”对话框

图 9.实现 SampleInterface 的 SampleClass 的“覆盖/实现”对话框

您可以从各个超类选择要覆盖的方法,为每个接口选择要实现的方法。您还可以选择要插入方法的位置。Flash Builder 为选定方法生成代码存根。

快速助手

快速助手提供一个基于上下文的操作列表,帮助您完成日常编码任务。要调用快速助手,可使用键盘快捷键“CTRL + 1”,也可以从上下文菜单中选择“快速修正/助手”(请参阅图 10)。

用于变量的快速助手。

图 10.用于变量的快速助手。

下面讨论 Flash Builder 4.5 中引入的各种快速助手:

  • 文件中重命名-允许您在不打开对话框的情况下,对变量、方法、类和参数执行本地内联重命名。您只需调用这个快速助手,就可以开始更改选定元素。在您键入时,将重命名对文件中特殊元素的所有引用。
  • 工作区中重命名-提供打开“重命名重构”对话框的快捷方式。
  • 将本地变量转换为字段-允许您将本地变量提升为字段变量。将创建一个新的字段变量,并删除本地变量的声明语句。
  • 指定到变量-为表达式语句创建一个新变量。键入任何表达式并调用快速助手。将生成一个新变量,并创建表达式作为新变量的赋值语句。
    例如,要将一个函数调用指定到一个新变量,可将光标放在函数调用上,然后按“Ctrl + 1”。从显示的列表中选择“指定到变量”(请参阅图 11 和 12)。

“指定到变量”快速助手。

图 11.“指定到变量”快速助手。

“指定到变量”将创建新变量。

图 12.“指定到变量”将创建新变量。

  • 拆分变量声明-允许您将变量(包括初始化)拆分为变量声明和变量初始化。
  • 生成 getter/setter-提供调用现有“生成 Getter/Setter”对话框的简单途径。
  • 组织导入-允许您组织目前文件中的导入语句。
  • 插入导入-允许您为文件中使用的未知 Class/Interface 添加导入。

从使用生成

在编码时,您遇到过多少次以下情况:某个变量、方法、类或接口尚未定义,并且在未定义它们的情况下无法继续编码?“从使用生成”就是用于定义未定义项的。它为使用快速助手 (Ctrl + 1) 生成占位符存根代码提供了一个便捷选项。将使用橙色波浪线突出显示所有未定义的引用,这样很容易找出未定义项,然后使用“从使用生成”。

以下是不同的“从使用生成”选项:

  • 生成变量-键入要创建的变量名并调用快速助手。选择“创建变量”选项,将为您生成变量声明。如果您所在的表达式包含未定义项,您也可以使用这个快速助手。该选项还可以用于在其他类中创建实例变量。例如,如果 obj 是 MyClass 类型的对象,在 obj.property 上按“Ctrl + 1”将显示在类 MyClass 中生成实例变量属性的选项。该选项还可以用于在其他类中创建实例变量。例如,如果 obj 是 MyClass 类型的对象,在 obj.property 上按“Ctrl + 1”将显示在类 MyClass 中生成实例变量属性的选项。
  • 生成方法-与生成变量相似,您只需键入要创建的方法名并调用快速助手即可。选择“创建函数”选项将生成相应方法及所有必需参数(请参阅图 13)。与“生成变量”在其他类中生成实例变量的方式相似,该选项也可以用于在其他类中生成方法。与“生成变量”在其他类中生成实例变量的方式相似,该选项也可以用于在其他类中生成方法。

生成方法

图 13.生成方法

  • 生成类/接口-如果您尝试生成一个未知类型的变量,可调用快速助手,将提供一个创建类/接口的选项(请参阅图 14)。

生成类/接口

图 14.生成类/接口

  • 生成事件处理函数-在 ActionScript 中为组件添加一个事件处理函数现在变得很简单。键入
    component.addEventListener("EVENT_NAME", myHandler);然后调用快速助手。选择“生成事件处理函数”,将为您生成该处理函数(请参阅图 15)。

生成类/接口

图 15.生成类/接口

文档的 CSS 编辑增强。

除了我们讨论的代码编辑得到改进,Flash Builder 4.5 还为 CSS 代码编辑提供增强支持。

内容助手改进

在 Flash Builder 4.5 中,您可以使用下图所示的 ClassReference 标记中的内容助手将引用轻松插入类中(请参阅图 16)。

ClassReference 标记中的内容助手

图 16. ClassReference 标记中的内容助手

Flash Builder 4.5 为各种媒体查询元素提供代码完成支持(请参阅图 17)。

媒体查询支持

图 17.媒体查询支持

超链接

您可以使用下图所示的超链接导航到选择器或引用类的类(请参阅图 18 和 19)。光标悬浮时,按住 Ctrl 或 Cmd 键即可显示超链接。当光标位于 ClassReference 标记中的选择器或类名上方时,您也可以使用“导航 -> 打开声明”菜单选项。

导航到引用类

图 18.导航到引用类

选择器导航

图 19.选择器导航

后续工作

您已了解该发行版中可提高编码工作效率的新增功能,我们推荐您下载 Flash Builder 4.5(注意:Adobe Labs 目前提供早期预览发行版下载-Flash Builder 4.5 和 Flex 4.5 SDK 的最终发行版将于 5 月初提供下载。)亲自体验。要了解更多信息,请阅读以下文章:

您也可以阅读文章 Flash Builder 4.5 的新增功能,进一步了解该发行版中新增的其他功能。

Creative Commons 许可证
根据 Creative Commons Attribution-Noncommercial 3.0 Unported License* 授予本作品许可。

Flash Builder 4.5高级版试用版免费高速下载

查看原文:Flash Builder 4.5 中的编码工作效率增强

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT