flash 编程习惯 小结

把这节写在前面,也是为了让开始接触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"; // 大小写混和的方式
  BASEURL = http://www.flash8.net; // 常量使用全部大写
  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. 创建对象时使用原型添加方法和属性
  
  当我们创建一个对象的时候,应当使用原型方式来添加对象的方法或属性,使得该方法或属性能够被所有该对象或子对象的实体所访问。这种能够确保内存中每个函数只有一份拷贝。作为一般的规则,不要在构造函数中定义方法。下面是一个正确的例子:
  // Best practice for creating an object
  MyObject = function()
  { }
  MyObject.prototype.name = "";
  MyObject.prototype.setName = function(name)
  {
  this.name = name;
  }
  MyObject.prototype.getName = function()
  {
  return this.name;
  }
  下面这段代码是不可取的:
  // Less desirable practice for creating an object
  MyObject = function()
  {
  this.name = "";
  this.setName = function(name)
  {
  this.name = name;
  }
  this.getName = function()
  {
  return this.name;
  }
  }
  使用上面的方式在每个对象的实体被创建的时候都会实体重新复制每一个属性和方法,会加重系统的内存开销。
  7. 规范命名方式获取代码提示功能
  
  不再是需要定义类似 _mc 之类的命名才会显示代码提示
  但是需要使用as2.0的规范来书写代码,如:
  1 :
  var members:Array = new Array();
  然后我们在输入members. ,Flash 就会显示可用于 Array 对象的方法和属性的列表
  (关键是 members:Array 起的作用,其实我们在变量名称后面打:的时候自动会给出所有支持的对象的列表)
  但并不是要我们在使用面向对象编程的时候不需要注意命名规范了

(0)

相关推荐

  • flash 编程习惯 小结

    把这节写在前面,也是为了让开始接触ActionScript编程的开发人员从一开始就养成好的编程和开发习惯. 1. 遵循命名规则 一个应用程序的命名规划必须保持一致性和可读性.任何一个实体的主要功能或用途必须能够根据命名明显的看出来.因为ActionScript是一个动态类型的语言,命名最好是包含有代表对象类型的后缀.一般而言,名词_动词和形容词_名词之类的语法是最常用的命名方式,如: 影片名字:my_movie.swf URL实体:course_list_output 组件或对象名称:chat_

  • 给大家整理了19个pythonic的编程习惯(小结)

    Python最大的优点之一就是语法简洁,好的代码就像伪代码一样,干净.整洁.一目了然. 要写出 Pythonic(优雅的.地道的.整洁的)代码,需要多看多学大牛们写的代码,github 上有很多非常优秀的源代码值得阅读,比如:requests.flask.tornado,下面列举一些常见的Pythonic写法. 0. 程序必须先让人读懂,然后才能让计算机执行. "Programs must be written for people to read, and only incidentally

  • PL/SQL编程经验小结开发者网络Oracle

    正在看的ORACLE教程是:PL/SQL编程经验小结开发者网络Oracle.平时在PL/SQL中的编程中遇到一些问题,这里以问答的形式来进行把它们总结下来,以供大家分享. 1.当需要向表中装载大量的数据流或者需要处理大量的数据流的时候,能否使用管道提高处理效率? 管道函数对于改善并行查询的性能非常方便,它加快往表中加载数据的速度.管道函数的使用总结如下两点: 每当在查询里使用PL/SQL函数时,该查询将被序列化,即一个处理器只能运行一个查询实例,那么在这种情况下不可能使用并行查询(比如在数据仓库

  • 10条PHP编程习惯助你找工作

    过去的几周对我来说是一段相当复杂的经历.我们公司进行了大裁员,我是其中之一,但却体验到了其中的乐趣.我从来没有被开除过,所以很难不去想得太多.我开始浏览招聘板块,一个全职PHP程序员的职位很吸引人,所以我寄去了简历并获得了面试机会.在面试之间,我和其主要的程序员们在咨询电话中聊了聊,最后他们给我出了一套测试题,其中有一道很耐人寻味. 找出以下代码的错误之处: <?function baz($y $z) { $x = new Array(); $x[sales] = 60; $x[profit]

  • 养成良好的C++编程习惯之内存管理的应用详解

    开篇导读    虽然本系列文章定位为科普读物,但本座相信它们不但适合新手们学习借鉴,同时也能引发老鸟们的反思与共鸣.欢迎大家提出宝贵的意见和反馈 ^_^ 在开篇讲述本章主要内容之前,本座首先用小小篇幅论述一下一种良好的工作习惯 -- 积累.提炼与求精.在工作和学习的过程中,不断把学到的知识通过有效的方式积累起来,形成自己的知识库,随着知识量的扩大,就会得到从量变到质变的提升.另外还要不断地对知识进行提炼,随着自己知识面的扩大以及水平的提升,你肯定会发现原有知识库存在着一些片面.局限.笨拙甚至错误

  • Python代码风格与编程习惯重要吗?

    Python代码风格 首先我们要以 PEP8 代码规范为标准,但也无需完全遵守.例如:一行不能超过 79 个字符等. Python模块模板 模块开头指定编码格式 模块文档注释,展示模块的信息,信息内容自己决定,如: Author,作者 Desc,模块描述 Date,创建时间 有一个 main() 函数 有一个程序主入口 if __name__ == '__main__': #!/usr/bin/python3 # -*- coding:utf-8 -*- # @Author: Hui # @De

  • 详解c++良好的编程习惯与编程要点

    1.以良好的方式编写C++ class 假设现在我们要实现一个复数类complex,在类的实现过程中探索良好的编程习惯. Header(头文件)中的防卫式声明 complex.h: # ifndef __COMPLEX__ # define __COMPLEX__ class complex { } # endif 防止头文件的内容被多次包含. 把数据放在private声明下,提供接口访问数据 # ifndef __COMPLEX__ # define __COMPLEX__ class com

  • Python asyncio异步编程常见问题小结

    目录 一.asyncio编程简单示例 二.asyncio编程常见问题 三.报错原因及解决方案 今天继续给大家介绍Python相关知识,本文主要内容是Python asyncio异步编程常见问题. 一.asyncio编程简单示例 首先,我们来看一段简单的Python asyncio异步编程代码,相关代码如下所示: import asyncio async def fun(): print(1) await asyncio.sleep(2) print(2) return 3 async def m

  • JavaScript开发人员的10个关键习惯小结

    随着新技术的不断发展,JavaScript已经不再仅仅只是一个网络语言.现在,我们能够看到很多使用JavaScript来构建基于本地浏览器的Web应用程序的手机,同时也有非常多的灵活的Web应用程序,如Trello.基于JavaScript打造的应用程序在世界上已经非常流行了. 目前,JavaScript仍然是一门比较容易使用和处理的编程语言,很多人把它当做要学习的第一门编程语言.作为一名JavaScript程序员,有几个关键的习惯是必须要养成的,它可以帮助你成为一名优秀的JavaScript开

  • 国外PHP程序员的13个好习惯小结

    也就是本文列举的这13个PHP编码好习惯,如果你有更好的建议,欢迎在本文后面的评论中发表,我这个人是喜欢求知的1.使用select从相同的数据库查询信息时,使用一个join语句一次性整齐地获取你需要的所有信息,而不要写多个mysql_query/while/mysql_fetch_array语句. 2.如果你在多个文件中调用了一个数据库连接,创建一个connection.php文件保存你的连接变量,在需要的地方将这个文件包括进来. 3.对于小型项目,将你所有的函数写在一个文件中,如果是大型项目就

随机推荐