当前位置:首页 » 编程软件 » 提高as编译速度

提高as编译速度

发布时间: 2022-09-07 04:16:14

⑴ FLASH AS版本问题

从macromedia大刀阔斧对As1.0进行改革到AS2.0,这一段过程看上去还算长一些,从flashmx到flash mx2004到flash 7.2再到flash8. 它们的核心actionscript都是as2.0.在flash8刚刚发布不长时间,macromedia又紧罗密鼓的推出了flash9预览版,大家都已经知道了Adobe发布的预览版可以对AS3.0进行编译,而As3.0经过测试它的速度可以说要比之前的as2.0快10倍.拿着as3.0与As2.0相对比,虽然有些东西看着面熟,但它看上去就象是重写的一种新语言一样.还有随之推出的adobe的Flex 2.0 builder. Flex sdk.让许多人一时不知所措,面对着as3.0和flex 2这么强的吸引力如何选择.

当然这里可能会有不同的情况出现,就拿我来说,我已经了解了As3.0无论在哪一方面都要超出As2.0,也想花时间去研究去学习As3.0,但还要面对每天不断的As2.0与As1.0夹杂的工作,是深入as2.0还是学习新的as3.0? 就如同明知道flash8可以实现的功能.但确是不能去使用它,因为客户是不同意输出flash8的.这看起来是件挺尴尬和郁闷的事情.相信有许多人会与我有同感.针对此发表一下个人的观点:

个人观点:

1.如果你刚刚开始学as.那么建议你从As3.0变量,循环等等基础学起.不需要再想什么as2.0,as1.0了.

2.对于老的designer.如果已习惯了在时间线上编程,那么我认为能熟练使用as2.0,就已足够,因为不管flash的版本怎么变,它都会向下兼容.虽然as3.0也可以在时间线编程,可能你会发现你以前用的gotoAndPlay().loadMovie()等等都不在有效了,如果在公司内部有as3.0的开发人员,那不好意思,你还是需要了解As3.0的一般编程,以便与as3.0开发人员配合.

3.如果你是一个纯的,狂热的flash开发人员,那么你需要做的就是迅速转型,快速的从as2.0转移到as3.0上.如果你想再深入一步学习flex 2.那你可能还要学到java. asp.net. wbservice等等.呵呵,看上去要挺累啊.

ps:”这山望着那山高”,谁都想学最高级的,最有用的.那什么时候才是个头啊.一个原则,用最少的时间学自已最能用的上的.

⑵ flashcs4中,as2.0和3.0有什么区别

其实上述二位说的都不全面,第二位还是错误的.
应该这样说,AS2.0与AS3.0是在不同虚拟机上执行的不同类库,编程的机制应该是相同的,语法结构也相似,AS3.0是真正的面向对象的编程语言,而AS2.0虽然也支持面向对象的编程,但不是真正意义上的面向对象的编程,最主要的是AS2.0的所有类都不是真正意义上的封装类,在编译时都是以动态类的状态存在.这给类的安全性造成了很大的不确定性.而AS3.0正是在发现了AS2.0的这些不足,才重新设计了类架构及类组织,但考虑到AS2.0的应用历史,还是保留了其应用,毕竟应用的人群不同,一些美工人员还是喜欢AS2.0,所以AS3.0就完全与AS2.0独立,AS2.0由AM1虚拟机来执行,AS3.0由AM2虚拟机来执行.因此它们是不兼容的.可以这样说,AS3.0更简单,功能更强大,更严谨.效率也更高.更适合大型应用程序的开发.而这些也只是一小部分的区别而已,详细的你可以查找相关的Adobe官方介绍.

⑶ 程序编译总要很长时间,怎么提高效率

采用模块化开发, 不开发的就不引用, 这样可大大加快编译速度.

我们项目目前约70W行代码, 纯AS, 但开发各司其职, 最后统一builder

⑷ Android studio怎么创建Android虚拟机

操作步骤如下:

1、首先需要进行打开一个Androidstudio的应用的程序,进入到了Androidstudio界面中之后,进行点击Androiddevices的按钮。

6、这样就会创建成功了一个devices的选项,如果要进行点击启动一个虚拟机,点击actions中播放按钮,如果要进行删除,进行点击下拉菜单中之后,弹出了下拉的菜单,“delete”的选项。

⑸ 如何使用Android Studio开发/调试Android自带系统应用

开发调试环境: Ubuntu 14.10,openJdk 1.7,Android Studio 1.0.2,android-5.0.1_r1源码
由于AS是基于IntelliJ IDEA开发的,所以本文也适用于IntelliJ IDEA
一、修改Android Studio(以下简称AS)的内存配置

因为在导入源码时需要消耗大量内存,所以先修改IDEA_HOME/bin/studio64.vmoptions(x86的机器修改studio.vmoptions)中-Xms和-Xmx的值。文档中使用的是748m, 可自行修改。
二、配置AS的JDK、SDK
在IDE中添加一个没有classpath的JDK, 这样可以确保使用源码里的库文件

并将其作为要使用的SDK的Java SDK。如下图

三、生成导入AS所需配置文件(*.ipr)
①编译源码(为了确保生成了.java文件,如R.java;如果编译过,则无需再次编译)
②检查out/host/linux-x86/framework/目录下是否有idegen.jar
如果idegen.jar不存在,执行:
mmm development/tools/idegen/

在5.0.1的源码中会生成res.java的文件夹,导致idegen.jar运行时抛FileNotFoundException,这是idegen的代码不够严谨造成的。
我的分享里有修改这个bug的patch,或者直接使用我分享的idegen.jar。
③执行
development/tools/idegen/idegen.sh

等待出现类似下面的结果:
Read excludes: 5ms
Traversed tree: 44078ms

这时会在源码的根目录下生成android.ipr和android.iml两个IntelliJ IDEA(AS是基于IntelliJ IDEA社区版开发的)的配置文件
Tips:
AS在导入代码时比较慢,建议先修改android.iml,将自己用不到的代码exclude出去.可以仿照过滤.repo文件夹的语法,如:
<excludeFolder url="file://$MODULE_DIR$/.repo" />
<excludeFolder url="file://$MODULE_DIR$/abi" />
<excludeFolder url="file://$MODULE_DIR$/art" />
这样在导入时就会跳过abi和art文件夹.过滤的越多,AS的处理速度就会越快.
④在AS中打开源码根目录下新生成的android.ipr

如果在导入时AS出现

则建议按照其给定的解决方法来解决(网址:http://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit),具体内容如下图:

四、解决源码中跳转错误问题
①为当前工程设置正确的SDK和JDK

②设置'Moles'的依赖

先将所有依赖删掉,只留下上图'1'所指向的两个(注意:这里删除全部只是为了方便。如果确实用到了.jar,在将它们的路径添加进来就可以了.
如:5.0.1的ContactsCommon用到了geocoder-2.9.jar和libphonenumber-6.2.jar)
点击上图中'2'指向的'+'并选择上图'3'指向的'Jars or directories'选项,依次将frameworks和external文件夹添加进来.如:

其它版本的代码在添加frameworks时可能会显示成:

没有关系,只是显示问题,点击OK还是会把frameworks路径添加进去的.
如果还有代码跳转错误,请仿照上面的步骤将相应代码的路径或jar文件添加到其Dependencies标签页中即可.
五、DEBUG源码
我们可以通过给刚导入的工程在'Moles'中添加'Android Framework'来让AS将它作为一个Android工程,从而方便我们调试代码.

可以按照上图中'1'和'2'来添加Android Framework支持.

在代码中加断点,然后选择'Run'->'Attach debugger to Android process'或者直接点击下图所示的图标
在弹出的选择进程(Choose Process)对话框中,勾选显示所有进程,选择要DEBUG的代码所在的进程,点击OK即可.
六、其它
代码中很多地方提示Call requires API Level x.... 出现这个问题是因为AS将我们的工程当做安卓应用程序工程了,且源码中没有指定minSdkVersion.
我们只需在源码根目录加一个声明minSdkVersion的AndroidManifest.xml文件即可(分享了一个AndroidManifest.xml)。
也可以考虑使用build.gradle来解决该问题。

⑹ 关于Flex Builder3 编译程序效率问题

如果是web项目的话 你这个项目应该有个文件 叫 actionscriptProperties的文件 里面是一行行的mxml文件的 名称和路径,因为文件过多,你只要一保存任何文件 都要全编译 很浪费时间,你可以用<!-- -->的方式吧暂时不编辑的mxml注释掉 只留下你正在编辑的文件 速度就上来了

⑺ Android studio对笔记本电脑配置要求高吗

Android studio主要对电脑的cpu和内存还有硬盘要求较高,内存至少要在8G以上,我的8G有时在build的时候都会97%左右。cpu正常的就行,硬盘不要太老。内存的大小直接影响着编译速度和电脑的流畅程度。其他的没什么。AS在build的时候是真心卡,很吃内存。如果8G以上内存,加上固态硬盘,编译起来搜搜的~

sql server with as 能提高性能吗

使用WITHAS提高性能简化嵌套SQL


一.WITHAS的含义
WITHAS短语,也叫做子查询部分(subqueryfactoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会
被整个SQL语句所用到。有的时候,是为了让SQL语句的可读性更高些,也有可能是在UNIONALL的不同部分,作为提供数
据的部分。
特别对于UNIONALL比较有用。因为UNIONALL的每个部分可能相同,但是如果每个部分都去执行一遍的话,则成本太高,
所以可以使用WITHAS短语,则只要执行一遍即可。如果WITHAS短语所定义的表名被调用两次以上,则优化器会自动将
WITHAS短语所获取的数据放入一个TEMP表里,如果只是被调用一次,则不会。而提示materialize则是强制将WITHAS
短语里的数据放入一个全局临时表里。很多查询通过这种方法都可以提高速度。
二.使用方法
先看下面一个嵌套的查询语句:
select*fromperson.
(.CountryRegionwhereNamelike'C%')上面的查询语句使用了一个子查询。虽然这条SQL语句并不复杂,但如果嵌套的层次过多,会使SQL语句非常难以阅
读和维护。因此,也可以使用表变量的方式来解决这个问题。
SQL语句如下:
declare@ttable(CountryRegionCodenvarchar(3))
insertinto@t(CountryRegionCode)(.CountryRegionwhereNamelike'C%')

select*fromperson.
in(select*from@t)

虽然上面的SQL语句要比第一种方式更复杂,但却将子查询放在了表变量@t中,这样做将使SQL语句更容易维护,但又
会带来另一个问题,就是性能的损失。由于表变量实际上使用了临时表,从而增加了额外的I/O开销,因此,表变量的方式
并不太适合数据量大且频繁查询的情况。为此,在SQLServer2005中提供了另外一种解决方案,这就是公用表表达式(CTE),使用CTE,可以增加SQL语句的可维护性,同时,CTE要比表变量的效率高得多。
下面是CTE的语法:
[WITH<common_table_expression>[,n]]
<common_table_expression>::=
expression_name[(column_name[,n])]
AS
(CTE_query_definition)

现在使用CTE来解决上面的问题,SQL语句如下:
with
cras
(
.CountryRegionwhereNamelike'C%'
)

select*fromperson.(select*fromcr)

其中cr是一个公用表表达式,该表达式在使用上与表变量类似,只是SQLServer2005在处理公用表表达式的方式上有
所不同。
在使用CTE时应注意如下几点:
1.CTE后面必须直接跟使用CTE的SQL语句(如select、insert、update等),否则,CTE将失效。如下面的SQL语句将无法正
常使用CTE:
with
cras
(
.CountryRegionwhereNamelike'C%'
)
select*fromperson.CountryRegion--应将这条SQL语句去掉
--使用CTE的SQL语句应紧跟在相关的CTE后面--
select*fromperson.(select*fromcr)


2.CTE后面也可以跟其他的CTE,但只能使用一个with,多个CTE中间用逗号(,)分隔,如下面的SQL语句所示:
with
cte1as
(
select*fromtable1wherenamelike'abc%'
),
cte2as
(
select*fromtable2whereid>20
),
cte3as
(
select*fromtable3whereprice<100
)
selecta.*fromcte1a,cte2b,cte3cwherea.id=b.idanda.id=c.id


3.如果CTE的表达式名称与某个数据表或视图重名,则紧跟在该CTE后面的SQL语句使用的仍然是CTE,当然,后面的SQL语句
使用的就是数据表或视图了,如下面的SQL语句所示:
--table1是一个实际存在的表
with
table1as
(
select*frompersonswhereage<30
)
select*fromtable1--使用了名为table1的公共表表达式
select*fromtable1--使用了名为table1的数据表


4.CTE可以引用自身,也可以引用在同一WITH子句中预先定义的CTE。不允许前向引用。
5.不能在CTE_query_definition中使用以下子句:
(1)COMPUTE或COMPUTEBY
(2)ORDERBY(除非指定了TOP子句)
(3)INTO
(4)带有查询提示的OPTION子句
(5)FORXML
(6)FORBROWSE

6.如果将CTE用在属于批处理的一部分的语句中,那么在它之前的语句必须以分号结尾,如下面的SQL所示:
declare@snvarchar(3)
set@s='C%'
;--必须加分号
with
t_treeas
(
.CountryRegionwhereNamelike@s
)
select*fromperson.(select*fromt_tree)

⑼ android studio怎么运行安卓工程

在windows7操作系统下,在android studio按照如下步骤运行安卓工程,(必须开启一起模拟器或者使用真机)

1、创建一个没有错误的android项目,如下图:


⑽ 如何更新android studio

菜单栏,help–>check for update

热点内容
卖房解压担保 发布:2025-03-22 00:18:57 浏览:449
java打开页面 发布:2025-03-22 00:18:41 浏览:448
mt4ea源码 发布:2025-03-21 23:59:08 浏览:531
文件夹加密隐藏 发布:2025-03-21 23:56:24 浏览:16
setjava用法 发布:2025-03-21 23:54:59 浏览:181
spring配置的主要标签有哪些 发布:2025-03-21 23:54:57 浏览:173
python3range 发布:2025-03-21 23:42:56 浏览:346
安卓国外手机在哪个平台买 发布:2025-03-21 23:39:40 浏览:117
androidx86卡 发布:2025-03-21 23:38:06 浏览:804
linux限制访问目录权限 发布:2025-03-21 23:35:19 浏览:415