【翻译】SWF结构规范第四章:显示列表(六)
RemoveObject
RemoveObject标签从显示列表移除指定的角色(在指定的深度)。
所支持的最小文件版本是SWF 1。
RemoveObject
字段 类型 注释
Header RECORDHEADER 标签类型=5
CharacterId UI16 被移除角色的ID
Depth UI16 角色的深度
RemoveObject2
RemoveObject2标签从显示列表移除指定深度的角色。
所支持的最小文件版本是SWF 3。
RemoveObject2
字段 类型 注释
Header RECORDHEADER 标签类型=25
Depth UI16 角色的深度
ShowFrame
ShowFrame标签通知Flash Player显示列表中的内容。影片在单独的每一帧间是暂停的。
所支持的最小文件版本是SWF 1。
ShowFrame
字段 类型 注释
Header RECORDHEADER 标签类型=1
【翻译】SWF结构规范第四章:显示列表(五)
ClipEventFlags
CLIPEVENTFLAGS序列指定一个事件处理器运用于的一个或多个精灵的事件。SWF 5以及更早的版本中CLIPEVENTFLAGS占用2字节,SWF 6之后占用4字节...
(more)
【翻译】SWF结构规范第四章:显示列表(四)
ClipEventFlags
CLIPEVENTFLAGS序列指定一个事件处理器运用于的一个或多个精灵的事件。SWF 5以及更早的版本中CLIPEVENTFLAGS占用2字节,SWF 6之后占用4字节...
(more)
【翻译】抽象工厂在as2.0中的运用
来自www.design-nation.net
原文在这里:http://www.design-nation.net/en/archives/000411.php
我毕竟是中学文化水平,有一些地方翻译的不正确,希望朋友们指出:)
抽象工厂模式实例:
抽象工厂(abstract factory)属于创建型模式。它提供一个接口来创建一系列相关联的对象,而不用具体指定它们的类...
(more)
工程目录结构及命名规范(三)
第一部分
第二部分
客户端层级目录结构:
ClientName\TYPE_ProjectName
顶层目录由ClientName开始,该名称没有空格,允许使用下划线(_),该目录下有TYPE_ProjectName文件夹(由“_”分开),类型总是区分大小写的,而工程名不能含有空格或下划线。这样每个人稍微看一眼就能找到正确的文件夹。
(more)
工程目录结构及命名规范(二)
第一部分
-PROJECT_FILES-目录的结构以及命名规范:
一个好的结构中,文件夹的命名应该是清晰的,这样的文件夹组织结构应该介于内部和客户端通讯之间。这样就可以减少错误和不必要的努力。团队每个成员的责任就是确保事物时刻处于组织中并被正确的分类,不应该在以后或被其他什么人闲置不用。这个系统就是针对下面这些常见问题而设计的,并且很大程度的基于那些常见的想法,应该解决下面的问题:
1、我需要上载最新结构,但是我不知道需要什么或不需要什么。
2、最新的文件在哪里?我需要尽快将这些文件发送到客户端!
3、我想更新规范文档,但是我在哪里可以找到最新的规范文档?
4、最新的修订过的质量评估数据表在哪里?我想添加新的注释。
5、哪个是最新文件?是PSD还是ZIP?他们的文件名都相同!
同时这个系统还有以下好处:
1、确保每个人都在使用最新文件或更新最新文件
2、只对必需文件和文件夹进行存档和恢复。
3、客户端工程交付CD仅包含最终文件,因此更新文件时就可以排除其他的文件的干扰
[翻译]工程目录结构及命名规范(一)
转载请注明原文地址和作者!
原文地址:
http://www.ivantodorov.com/blog/?p=24
作者:
Ivan Todorov
第一部分:
无论你是一个自由软件开发者,还是大公司的一名员工,你的组织能力和命名习惯会直接影响客户对你的认识。你命名的文件名是否保持一致并且具有良好的可预知性?你花费了多少时间在更新那些错误和不用的文件上?其他同事多长时间会跑来问你一次“最新的一个文件在哪”?我们是否应该有一个相关的系统排除干扰和减少错误?
在这篇文章中我分享了BLITZ的工程组织管理和命名惯例方面的经验,不使用那些版本控制软件。如果你对版本控制感兴趣,请关注我的空间,我将会在近期发布文章一步一步的讲解利用SubVersion进行多用户版本控制。
请到http://www.ivantodorov.com/blog/wp-content/050826/BLITZ_ProjectNamingAndOrganizationalGuidelines.zip下载文档。
该zip文件包含一个工程文件夹模板的完整的“文件服务器共享”结构,就像我们在这里讨论的一样。还有一篇word格式和pdf格式的文章和一个额外的模板,请将它们提取出来,剩下的空文件夹为我们所示例的文档结构。
文件服务器: \\SERVERNAME
通过VPN登陆到网络或直接在站点上连接到空间的电脑都可以访问文件服务器。可以通过在浏览器内访问\\SERVERNAME或开始菜单>运行>打开: \\SERVERNAME来访问服务器。
下面是对每个共享和它的用途的简要描述:
-Branding_&_Identity-
包含你公司的logo,风格指导,商标,标识和销售材料。
-Company-
HR相关和其他公司文件。
-Creative&Technical_Resources-
开发团队使用的图片和连接
-Installs-
不同程序的安装文件
-IT-
信息工程部需要的文件,驱动和文档
-Portfolio-
这几年里完成的所有工程的总和
-Project_Data-
工程管理所需的工程数据,包含法律协议,工作进度表和声明,还有预算。
-Project_Files-
包含技术团队使用的工程文件,比如Photoshop文件,Flash文件,文档和客户资源。
-Stock_Content-
包含一些资源,比如那些被公司购买并拥有的照片。
-Texture_Maps-
包含图像地图和3D以及设计团队使用的贴图。
翻译:封装改变
原文地址:http://www.design-nation.net/en/archives/000574.php
作者:Cesar Tardaguila
什么改变,封装什么
不要让你自己重复做一件事情,当你重复得写一段相同的代码时,你正将你自己推入一个墙角。
看看下面的例子:
我正在开发的应用程序使用了UI组件。那是一个MVC应用程序,视图完全是从应用程序的逻辑中抽象出来的。
这里有很多视图(View)(很多数据需要通过不同的形式展示出来),因此我为每个视图单独建立一个类。
每一个视图都加载一个包含有该视图所需的图形和交互的元素(button, datagrid等),所有的视图都继承自同一个类并且实现了事件分派(event dispatching),同时也就产生了许多重复的代码。这也是不要继承自movieClip的原因之一,另外一个原因我并不想在这篇文章中讨论,总之我们不应该让它继承自MovieClip。
(more)
【翻译】A situation where we shouldn't extend movieclip
我们不应该(让自己的类)继承mc类一种情况
我们可以为库中的任何一个mc元件分配一个AS2.0的类,如果这个类继承自MovieClip,当你加载(attach)这个元件,你将得到该类的一个实例,你也可以不加载它,只需要在设计阶段把它放到场景中,当时间线达到这个MovieClip所在的帧该类就得以实例化(materialize),当你建立一个接口的时候这将是非常有用的。你只需放一个mc就可以得到一个类的实例。
(more)
【翻译】继承(Inheritance)
在OOP中多个类之间常常是继承的关系,这样一个类就可以借用(或者说继承)另一个类的属性和方法。实际上继承仅仅是技术意义上的让一个类可以使用另一个类的代码。
inheritance是一个专有名词,中文多翻译做继承。含有实现代码复用的意思。它使得程序员在类的层次上概念化(conceptual)一组类。在生物领域,继承指的是一种现存生物传递一些东西到另外一种生物上的过程。你可能听到别人说,你继承了你母亲的眼睛和你父亲的鼻子,虽然你看起来并不完全像他们。在OOP中,继承有与之类似的含义,它使一个类看起来很像另外一个类,但这个类仍然有自己的特性。
我们在本章的最后将会讨论继承的优点和其它代替继承的方法,在"The Theory of Inheritance"这部分。但是首先我们需要学习建立继承的语法。
(more)
【翻译】Accessor Methods[存取方法]_局部变量
实例属性同类的实例相关联,类属性同类相关联。而只要对象存在,那么类属性和实例属性就存在。但有些时候我们需要一个临时的变量,局部变量(本地变量)就是这样一个在方法或者函数调用期间临时存放数据的容器。当方法跟函数结束执行,他们就会被自动删除。(函数嵌套是此规则的例外,我们会在后面的章节继续介绍)
(more)
【翻译】Accessor Methods[存取方法]_概述
因为这部分比较多,所以捡有用的翻译:)
对于实例属性,定义为private是一种很好的符合OOP思想的习惯。这意味着他们不能在类之外被访问(具体不说了,参考之前翻译的文章吧:)。如果需要在类之外访问私有属性,我们需要使用存取方法(Accessor Methods)。他返回一个属性的值或者设置一个属性的值。
(more)
4.4.1.2 管理参数/属性命名冲突
当一个实例属性或者一个类属性与方法参数同名,参数优先。
方法中引用的是参数,而不是与参数或者方法同名的属性。但是我们仍然可以通过this来访问方法。比如下面的setHeight( )方法有一个height参数,它与height属性同名..
(more)
【翻译】利用this关键字引用当前对象
在方法定义中,你可能经常希望引用调用这个方法的对象——这就是所谓的当前的对象(current object)。考虑代码b.getArea(),当这段代码执行,它通过b对象调用getArea方法。但是在getArea方法的代码的内部并没有一个类似b这样的变量。那么我们该如何在方法的代码中引用当前的对象呢?在方法中使用当前的对象,我们使用this关键字。你可能会问,我们是否还可以把对象引用当作方法的一个参数,来达到目的,我们确实可以那么做,但是使用this关键字帮助我们保持良好的封装性,排除了对外部的类的需要对对象内在需求的影响。通过this引用当前的对象,允许一个对象引用它自己,而无须额外的参数,因此代码也更加清晰。
(more)
EAS2.0中关于intrinsic修饰符的解释
instrinsic修饰符用来分配一个已经编译好的类,而无须给出类的代码。比如内置类(内置flashPlayer中)。一个类定义时被instrinsic修饰,那么就不能有方法内部的代码跟属性值,这种类的定义只是具体定义了方法名跟数据类型,为的就是编译时的类型检查(type checking)
(more)