再思考如何给Flex程序瘦身,如何提高swf运行性能

2024-04-03 09:32

本文主要是介绍再思考如何给Flex程序瘦身,如何提高swf运行性能,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

**以下皆为个人判断,仅供参考。

 

1、 Flex程序为什么这么胖?

 

(1)、可视化组件个体体积大

     “作为一个框架,我要尽可能提供多功能的通用型组件。我无法预知在你的特定应用中你需要什么功能,不需要什么功能,所以索性把我能够想到的功能都提供给你。”

     于是每个可视化组件都很大。

     在你的Flex开发的RIA应用中,是否用到了框架提供的全部功能,比如说动态换皮肤,换样式,国际化?

 

(2)、自动生成的隐形代码

      元数据标签是告诉Flex编译器如何自动生成特定类型的代码,并编译代码。

      元数据的存在简化了一部分代码的编写,提高了生产力。

      但是被隐藏的自动生成的代码无法干预(优化),无论是代码体积和运行性能都可能存在“负面”效应。

      我们在特定应用中“定制”的一些实现方式、方法很可能要比框架提供给我们的更合适。

 

2、Flex程序为什么运行不是很快?

(1)、ActionScript语言本身就不是用于计算用途的语言。

(2)、它又是解释型的运行方式,速度又慢上一拍。

(3)、FlashPlayer的画面渲染方式耗资源,影响性能

(4)、Flex可视化组件功能太多,体积大

 

3、如何瘦身,如何提高运行性能?

(1)、给Flex可视化组件减肥:

              重新为特定项目自定义可视化组件,去掉不用的功能。

              说起来容易做起来难。技术难度是一方面,有限的时间和有限的资金投入是主要的限制。

              *Flex框架、SDK在贡献给开源社区后,能否让Flex框架从根儿上适合于“定制”,是值得期待的。

(2)、在掌握确切证据后,不用Flex元数据标签之类的东东,用“特定”的方式满足“特定”的需求,从而为程序瘦身,提高运行性能。

 

<注>:通过和Flash做出的程序作类比,可以知道:Flash做出的RIA程序体积比Flex小很多,运行也很快。

            可以推测,同样是ActionScript的底子,Flex也能变得小一些,快一些。

 

 

 

这篇关于再思考如何给Flex程序瘦身,如何提高swf运行性能的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/872539

相关文章

Python如何使用__slots__实现节省内存和性能优化

《Python如何使用__slots__实现节省内存和性能优化》你有想过,一个小小的__slots__能让你的Python类内存消耗直接减半吗,没错,今天咱们要聊的就是这个让人眼前一亮的技巧,感兴趣的... 目录背景:内存吃得满满的类__slots__:你的内存管理小助手举个大概的例子:看看效果如何?1.

Redis中高并发读写性能的深度解析与优化

《Redis中高并发读写性能的深度解析与优化》Redis作为一款高性能的内存数据库,广泛应用于缓存、消息队列、实时统计等场景,本文将深入探讨Redis的读写并发能力,感兴趣的小伙伴可以了解下... 目录引言一、Redis 并发能力概述1.1 Redis 的读写性能1.2 影响 Redis 并发能力的因素二、

Java终止正在运行的线程的三种方法

《Java终止正在运行的线程的三种方法》停止一个线程意味着在任务处理完任务之前停掉正在做的操作,也就是放弃当前的操作,停止一个线程可以用Thread.stop()方法,但最好不要用它,本文给大家介绍了... 目录前言1. 停止不了的线程2. 判断线程是否停止状态3. 能停止的线程–异常法4. 在沉睡中停止5

如何用java对接微信小程序下单后的发货接口

《如何用java对接微信小程序下单后的发货接口》:本文主要介绍在微信小程序后台实现发货通知的步骤,包括获取Access_token、使用RestTemplate调用发货接口、处理AccessTok... 目录配置参数 调用代码获取Access_token调用发货的接口类注意点总结配置参数 首先需要获取Ac

Golang中拼接字符串的6种方式性能对比

《Golang中拼接字符串的6种方式性能对比》golang的string类型是不可修改的,对于拼接字符串来说,本质上还是创建一个新的对象将数据放进去,主要有6种拼接方式,下面小编就来为大家详细讲讲吧... 目录拼接方式介绍性能对比测试代码测试结果源码分析golang的string类型是不可修改的,对于拼接字

在VSCode中本地运行DeepSeek的流程步骤

《在VSCode中本地运行DeepSeek的流程步骤》本文详细介绍了如何在本地VSCode中安装和配置Ollama和CodeGPT,以使用DeepSeek进行AI编码辅助,无需依赖云服务,需要的朋友可... 目录步骤 1:在 VSCode 中安装 Ollama 和 CodeGPT安装Ollama下载Olla

基于Python开发PDF转Doc格式小程序

《基于Python开发PDF转Doc格式小程序》这篇文章主要为大家详细介绍了如何基于Python开发PDF转Doc格式小程序,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 用python实现PDF转Doc格式小程序以下是一个使用Python实现PDF转DOC格式的GUI程序,采用T

解读docker运行时-itd参数是什么意思

《解读docker运行时-itd参数是什么意思》在Docker中,-itd参数组合用于在后台运行一个交互式容器,同时保持标准输入和分配伪终端,这种方式适合需要在后台运行容器并保持交互能力的场景... 目录docker运行时-itd参数是什么意思1. -i(或 --interactive)2. -t(或 --

mysql线上查询之前要性能调优的技巧及示例

《mysql线上查询之前要性能调优的技巧及示例》文章介绍了查询优化的几种方法,包括使用索引、避免不必要的列和行、有效的JOIN策略、子查询和派生表的优化、查询提示和优化器提示等,这些方法可以帮助提高数... 目录避免不必要的列和行使用有效的JOIN策略使用子查询和派生表时要小心使用查询提示和优化器提示其他常

pycharm远程连接服务器运行pytorch的过程详解

《pycharm远程连接服务器运行pytorch的过程详解》:本文主要介绍在Linux环境下使用Anaconda管理不同版本的Python环境,并通过PyCharm远程连接服务器来运行PyTorc... 目录linux部署pytorch背景介绍Anaconda安装Linux安装pytorch虚拟环境安装cu