构建并运行Flex应用——How Flex Works (一)

译者:Balan

原文:Building and running Flex applications (from 'How Flex Works', Adobe Flex 2 Help)

Flex是一种开发和运行环境,我们可以通过它创建富网络应用程序(RIA),这些程序使用Adobe® Flash® Player 9来传递更加直观和更富有交互性的在线体验。

Flex应用程序开发流程

以下是创建Flex应用程序的典型步骤:

  • 使用一组预定义的组件(表单,按钮等)定义应用界面
  • 将组件组织到用户界面设计中
  • 使用样式和主题限定视觉设计
  • 添加动态行为(比如应用各个部分之间的交互)
  • 如有需要,定义并连接数据服务
  • 将源代码编译为运行在Flash Player中的SWF格式文件

以上只是典型的开发流程;我们不必遵照精确的顺序操作。

Flex应用的元素

典型的Flex应用包含以下元素

Flex 框架

Adobe® Flex 2 框架包含所有我们构建RIA所需要的组件:  

  • 用来展示应用的容器
  • 用来从用户那里采集数据和管理用户界面的控制器
  • 大规模的数据绑定、格式化和验证特性
  • 事件驱动的开发模型,提供丰富的用户界面转换特性,例如effects和transitions

Flex框架含于一个共享组件库(SWC)内。

MXML

 

每个Flex应用至少要包含一份MXML文件,作为主应用文件。 MXML是一种实现了XML的标记语言。它专为创建Flex应用而设计,可以显示的定义使用标签的应用程序的结构。

ActionScript 3.0

ActionScript和JavaScript类似,都是ECMAScript的实现。ActionScript 3.0可以将动态行为添加到应用程序中:1,直接作为script块添加在MXML文件中;2,创建独立的ActionScript函数文件,再引入到MXML文件中。

CSS

视觉组件(buttons、list boxes等)中的样式属性(attributes)受组件属性(properties)的控制。举例来说,按钮(button)组件拥有字体族(fontFamily)属性,用作设定自身字体。样式属性受多种因素控制:主题(theme)、CSS文件中定义的样式、MXML文件中样式块(style blocks)定义的样式,或者在组件实例中设定的自身样式属性。

Graphic assets

和大部分应用一样,Flex应用包含各种各样的图形资源(Graphic assets),比如图标和其他图像。

Data

一些组件用作展示数据(比如combo box 或 data grid)。我们使用数组、集合对象、数据模型和外置XML数据源等等来为这些组件填充数据。

Flex应用如何编译、部署

所有这些元素的终点要么是编译成你的Flex应用,要么是连接到你的Flex应用,如下图所示:gs_concepts_4

Flex应用被编译为可以在Flash Player中的SWF文件。当源代码被编译为Flex应用程序时,也就被转换成了ActionScript类,之后又和图形或其他资源一起合并为SWF文件。运行的时候,Flex应用程序的SWF文件视需要而和外部库、服务和数据服务交互。

标准的Flex应用不需要服务端Flex服务。因此,在本地编译并从WEB服务器上的HTML页面发布给你的用户即可。

当然了,你可以使用Adobe® Flex Data Services 2,Cold Fusion Flash Remoting Service,或者其他的Java 和 J2EE服务来创建Flex应用,这时的Flex 应用从应用服务器中发布。(译者注:其实此时不是必须使用应用服务器)

MXML: Flex知识的起点

我们在MXML中用Flex组件定义用户界面。下面是一个作为主MXML应用文件的例子:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Panel>
<mx:TextArea text="Say hello to Flex!" />
<mx:Button label="Close" />
</mx:Panel>
</mx:Application>

如果你对XML熟悉的话,一眼就认出例子采用的格式了。MXML在前两行包含了版本、编码类型和命名空间信息;文件体(正文)部分则包含了内容。

所有Flex应用的内容部分都被包在<mx:Application> 这个父标签内,添加进来的组件被当作子标签。

这个例子创建了一个简单的"Say hello to Flex!" 应用程序。文本区(TextArea)和按钮(Button)组件都是通过标签声明的;文本内容和按钮名称都是标签的属性(Text和lable)值。

注意

MXML文件的每个标签都以mx开头,mx是专为Flex设计的名称。

编译并运行那个例子应用:

image

Flex程序就作为SWF运行在浏览器中了。

内容概要:本文介绍了个基于多传感器融合的定位系统设计方案,采用GPS、里程计和电子罗盘作为定位传感器,利用扩展卡尔曼滤波(EKF)算法对多源传感器数据进行融合处理,最终输出目标的滤波后位置信息,提供了完整的Matlab代码实现。该方法有效提升了定位精度与稳定性,尤其适用于存在单传感器误差或信号丢失的复杂环境,如自动驾驶、移动采用GPS、里程计和电子罗盘作为定位传感器,EKF作为多传感器的融合算法,最终输出目标的滤波位置(Matlab代码实现)机器人导航等领域。文中详细阐述了各传感器的数据建模方式、状态转移与观测方程构建,以及EKF算法的具体实现步骤,具有较强的工程实践价值。; 适合人群:具备定Matlab编程基础,熟悉传感器原理和滤波算法的高校研究生、科研人员及从事自动驾驶、机器人导航等相关领域的工程技术人员。; 使用场景及目标:①学习和掌握多传感器融合的基本理论与实现方法;②应用于移动机器人、无人车、无人机等系统的高精度定位与导航开发;③作为EKF算法在实际工程中应用的教学案例或项目参考; 阅读建议:建议读者结合Matlab代码逐行理解算法实现过程,重点关注状态预测与观测更新模块的设计逻辑,可尝试引入真实传感器数据或仿真噪声环境以验证算法鲁棒性,步拓展至UKF、PF等更高级滤波算法的研究与对比。
内容概要:文章围绕智能汽车新代传感器的发展趋势,重点阐述了BEV(鸟瞰图视角)端到端感知融合架构如何成为智能驾驶感知系统的新范式。传统后融合与前融合方案因信息丢失或算力需求过高难以满足高阶智驾需求,而基于Transformer的BEV融合方案通过统坐标系下的多源传感器特征融合,在保证感知精度的同时兼顾算力可行性,显著提升复杂场景下的鲁棒性与系统可靠性。此外,文章指出BEV模型落地面临大算力依赖与高数据成本的挑战,提出“数据采集-模型训练-算法迭代-数据反哺”的高效数据闭环体系,通过自动化标注与长尾数据反馈实现算法持续进化,降低对人工标注的依赖,提升数据利用效率。典型企业案例进步验证了该路径的技术可行性与经济价值。; 适合人群:从事汽车电子、智能驾驶感知算法研发的工程师,以及关注自动驾驶技术趋势的产品经理和技术管理者;具备定自动驾驶基础知识,希望深入了解BEV架构与数据闭环机制的专业人士。; 使用场景及目标:①理解BEV+Transformer为何成为当前感知融合的主流技术路线;②掌握数据闭环在BEV模型迭代中的关键作用及其工程实现逻辑;③为智能驾驶系统架构设计、传感器选型与算法优化提供决策参考; 阅读建议:本文侧重技术趋势分析与系统级思考,建议结合实际项目背景阅读,重点关注BEV融合逻辑与数据闭环构建方法,可延伸研究相关企业在舱泊体等场景的应用实践。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值