本节内容概述了在使用actionscript编程和创建使用程序的时候需求遵照的一些规则,以及如何使我们的程序代码更无效和具有更好的可读性,更方便调试使用程序。
把这节写在前面,也是为了让开始接触ActionScript编程的开发人员从一开始就养成好的编程和开发习惯。
1. 遵照命名规则
一个使用程序的命名规划必须保持分歧性和可读性。任何一个实体的次要功用或用途必须能够依据命名明显的看出来。由于ActionScript是一个动态类型的言语,命名最好是包含有代表对象类型的后缀。普通而言,名词_动词和描述词_名词之类的语法是最常用的命名方式,如:
影片名字:my_movie.swf URL实体:course_list_output 组件或对象名称:chat_mc 变量或属性:userName
方法和变量的名称应该以小写字母开头,对象和对象的结构方法应该大写。命名变量的时候使用大小写混和的方式,并且使用字母打头,还可以包含数字和下划线。
下面的一些命名是非法的:
_count =5 ;//首字符不能使用下划线
5count = 0;//首字符不能使用数字
foo/bar = true;//包含非法字符
另外,ActionScript使用的保留字不能用来命名变量。
ActionScript是基于ECMAScript,所以我们可以依据ECMAScript的规范来命名。如:
course_list_output = "foo"; //全部小写,使用下划线分割字串
courseListOutput = "foo"; // 大小写混和的方式
MAXCOUNTLIMIT = 10;
MyObject = function(){ }; // 结构函数
f = new MyObject(); // 对象
留意;良好的命名规范还可以使用Flash的代码提示功用。
2. 给你的代码添加注释
使用代码注释能够使得程序更清晰,也便于我们阅读。Flash支持的代码注释方法有两种: 单行注释,通常用于变量的说明
var clicks = 0; // variable for number of button clicks
多行注释,通常用于功用说明和大段文字的注释:
/* Initialize the clicks variable that keeps track of the number of times the button has been clicked. */ 一些具有特定意思的注释方法: // :TODO: topic 表明一个主题的开始 // :BUG: [bugid] topic 显示了一个BUG所在 // :KLUDGE: 表明下面的代码并不完善,可能存在问题 // :TRICKY:
通知开发人员下面的代码具有互相作用,修正之前请谨慎
3. 保持代码的全体性
无论什么情况,应该尽可能保证所有代码在同一个位置,这样使得代码更容易搜索和调试。我们在调试程序的时候很大的困难就是定位代码,如果大部分代码都集中在同一帧,问题就比较好处理了。通常,我们把代码都放在第一帧中,并且单独放在最顶层。如果在第一帧中集中了大量的代码,记得用注释标记区分,并在开头加上代码说明
// 视频语音聊天系统 // FCAVPresence组件 // Copyright ◎2002 Macromedia, Inc. All rights reserved. // 完 善: Liu21st, Liu21st@126.com //--------------------------------------------------------- 在独立的功用模块前面加上类似的标注: // 参数初始化 file://---------------------------------------------------------
4. 初始化使用程序
记得一定要初始化你的使用程序,init函数应该是你的使用程序类的第一个函数,如果使用面向对象的编程方式则应该在结构函数中进线初始化任务。该函数只是对使用程序中的变量和对象初始化,其它的调用可以通过事件驱动。 下面的例子可以说明如何进线初始化
function FCAVPresenceClass() { this.init(); } FCAVPresenceClass.prototype.init = function() { this.name = (this._name == null ? "_DEFAULT_" : this._name); this.prefix = "FCAVPresence." + this.name + "."; };
5.使用局部变量
所有的局部变量使用关键字var来申明,这样可以避免被全局变量访问,更重要的是,可以保证变量不被覆盖和混淆程序逻辑。例如,下面的代码没有使用var来申明,覆盖了其它变量。
counter = 7; function loopTest() { trace(counter); for(counter = 0; counter < 5; counter++) { trace(counter); } } trace(counter); loopTest(); trace(counter);
输出结果为: 7 7 0 1 2 3 4 5
6. 创建对象时使用原型添加方法和属性
免责声明: 本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。