1.数据抽象(data abstraction)
永远都不要随便的为成员变量添加一连串的get/set,这不是数据抽象,这是懒惰和缺乏想象力的表现。
2.多态(Polymorphism)
3.设计模式(design patterns)
设计模式是面向对象设计的方法论,就像快速排序、二分查找对算法一样。选择正确的合适的设计模式去实现一种新的面向对象设计。
4.标准模板库(the standard template library)
STL包含三个主要的构件:容器(container)、算法(algorithms)、迭代器(iterators)
5.引用是别名,不是指针!(re...
发表于2007年11月24日 23:39:00 更新于2007年11月24日 23:39:00
昨天晚上下载了apollo的运行环境alpha2和flex builder3 beta2,从下载了一本livedocs_adobe_labs_air_1_devappsflex.chm,以及一本介绍alpha1的apollo_for_flex_pocketguide_031907.pdf,开始初尝试apollo的桌面RIA了。
奇怪的是apollo是项目名称,而adobe则美其名曰AIR,正好是RIA反过来。
这是今天用flex编写AIR的一点小心得:
1.新建flex项目的时候选择桌面程序,发布的时候需要数字证明,你可以使用Verisign or Thwate d...
奇怪的是apollo是项目名称,而adobe则美其名曰AIR,正好是RIA反过来。
这是今天用flex编写AIR的一点小心得:
1.新建flex项目的时候选择桌面程序,发布的时候需要数字证明,你可以使用Verisign or Thwate d...
发表于2007年11月4日 13:11:00 更新于2008年3月21日 19:20:00
核心原因:C不支持重载,而C++支持!
在c++中,为了支持重载机制,在编译生成的汇编码中,要对函数的名字进行一些处理,加入比如函数的返回类型等等.
而在C中,只是简单的函数名字而已,不会加入其他的信息.
也就是说:C++和C对产生的函数名字的处理是不一样的. 两者生成的目标符号表不一样!
如函数
在c++中,为了支持重载机制,在编译生成的汇编码中,要对函数的名字进行一些处理,加入比如函数的返回类型等等.
而在C中,只是简单的函数名字而已,不会加入其他的信息.
也就是说:C++和C对产生的函数名字的处理是不一样的. 两者生成的目标符号表不一样!
如函数
该函数被C编译器编译后在符号库中的名字为_foo,而C++编译器则会产生像_foo_int_int之类的名字(不同的编译器可能生成的名字不同,但是都采用了相同的机制,生成的新名字称为“...void foo( int x, int y );
发表于2007年11月4日 10:08:00 更新于2008年3月21日 19:22:00
假定有一个父类fruit,其有几个子类分别为orange、apple,传统的情况下,如果要用fruit指针指向其几个子类来实现动态性能,必须如下代码:
其核心思想是封装创建具体子类的实现!
如下图1和图2所示。两个之间的差异是在图2的思路中在factory只是提供创建对象的接口,具体实现创建哪...
当子类很多,而且命名复杂时,我们并不确切的知道子类的名称。或者原先的我们只是在fruit类的构造函数中传递一个type,并没有派生出相应的子类而现在由于某种原因需要用到派生子类时 ,我们就可以用到Factory模式了。fruit* p=new orange();
其核心思想是封装创建具体子类的实现!
如下图1和图2所示。两个之间的差异是在图2的思路中在factory只是提供创建对象的接口,具体实现创建哪...
发表于2007年6月17日 23:48:00 更新于2008年3月21日 19:22:00
package声明
package类似于现实的文件目录系统,最顶层的package是工程所在文件夹,如果类是定义在最顶层的包里面,则无需特别声明包的名称package name{}
通常,包的命名以小写字母开头,是以域名相反的顺序来定义,如sshong.gnway.net通常把所有类都写在net.gnway.sshong包中,而examplecorp.co.uk则把类写在uk.co.examplecor...package{}
package example {}
package example.subpackage {}
发表于2007年5月29日 17:56:00 更新于2007年5月29日 17:56:00
本文介绍了ActionScript 3 相对于 ActionScript 2 有哪些新的特性和改动。并在文章的最后一步步的教大家如何利用 Flex Builder 来编译并运行第一个 AS3 程序。语法方面的增强和改动:
引入了 package(包) 和 namespace(命名空间) 两个概念。其中 package 用来管理类定义,防止命名冲突,而 namespace 则用来控制程序属性方法的访问。
新增内置类型 int (32比特整数),uint(非负32比特整数),用来提速整数运算;
新增 * 类型标识,用来标识类型不确定的变量,通常在运行时变量类型无法确定时使用。...
引入了 package(包) 和 namespace(命名空间) 两个概念。其中 package 用来管理类定义,防止命名冲突,而 namespace 则用来控制程序属性方法的访问。
新增内置类型 int (32比特整数),uint(非负32比特整数),用来提速整数运算;
新增 * 类型标识,用来标识类型不确定的变量,通常在运行时变量类型无法确定时使用。...
发表于2007年5月29日 17:47:00 更新于2007年5月29日 17:48:00
一、You should bear in mind the following when applying namespaces:
You can apply only one namespace to each declaration.
There is no way to apply a namespace attribute to more than one definition at a time. In other words, if you want to apply your namespace to ten different functions, you mu...
You can apply only one namespace to each declaration.
There is no way to apply a namespace attribute to more than one definition at a time. In other words, if you want to apply your namespace to ten different functions, you mu...
发表于2007年5月29日 17:32:00 更新于2007年5月29日 17:33:00
一、When a package is created, the default access specifier for all members of that package is internal, which means that, by default, package members are only visible to other members of that package. If you want a class to be available to code outside the package, you must declare that class to b...
发表于2007年5月29日 17:09:00 更新于2007年5月29日 17:09:00
as2种,大家都熟悉的loadvars在as3种被淘汰了,取而代之的是正统的URLLoader.
与urlloader相关的类有一大摞,让我们从流程上来理解下。
首先要与服务器交换数据,必须要发送数据到服务器,然后服务器接收数据,最后服务器返回数据。
一、准备发送数据 利用URLRequest来定义如何连接,链接到哪里,传递些什么数据。
A.首先要知道服务器地址以及访问的页面,这些都通过urlrequest的url属性来定义。
譬如
var url:String="http://sshong.8866.org/chatroom.jsp";
var req:URLRe...
与urlloader相关的类有一大摞,让我们从流程上来理解下。
首先要与服务器交换数据,必须要发送数据到服务器,然后服务器接收数据,最后服务器返回数据。
一、准备发送数据 利用URLRequest来定义如何连接,链接到哪里,传递些什么数据。
A.首先要知道服务器地址以及访问的页面,这些都通过urlrequest的url属性来定义。
譬如
var url:String="http://sshong.8866.org/chatroom.jsp";
var req:URLRe...
发表于2007年5月29日 16:46:00 更新于2007年5月29日 16:46:00
1.不要有中文路径!实例不要与类名相同!
今天下午调试,因为我有一个元件叫login_win,我把它连接到了一个元件类也较login_win,并且我把该元件拖到主场景中,命名login_win,结果在主文档类老是出错,调了一下午都是这个错误Error #1046: Type was not found or was not a compile-time constant: login_win.
论坛上说flash9不支持中文路径,所以会导致flash无法导入包,报该错,我把这些文件都拷贝到d盘根目录下,还是出错,nnd,急了,结果把主场景里的login_win更名为Login_win...
今天下午调试,因为我有一个元件叫login_win,我把它连接到了一个元件类也较login_win,并且我把该元件拖到主场景中,命名login_win,结果在主文档类老是出错,调了一下午都是这个错误Error #1046: Type was not found or was not a compile-time constant: login_win.
论坛上说flash9不支持中文路径,所以会导致flash无法导入包,报该错,我把这些文件都拷贝到d盘根目录下,还是出错,nnd,急了,结果把主场景里的login_win更名为Login_win...
分类
琐碎文字 As3&Flex RIA UG English CodingArt C++ PHP Webserver E音乐盒 Unity3d C# JS&Html5 Tools mobile golang AI 最近发表
- claude code / codex的一些配置(2026年5月5日 17:38:10)
- 2026.5.5(2026年5月5日 17:27:39)
- js的锁以及异步调用相关(2024年11月30日 10:58:51)
- golang学习之函数/方法/接口(2022年1月6日 17:50:24)
- golang学习之零值(2022年1月6日 16:38:10)
- hello, 2018(2018年1月15日 22:47:25)
- 字体类型名词解释(2015年1月18日 11:29:14)
- 获取mysql表注释以及列注释(2014年11月13日 15:56:32)
- php连接ms sql数据库的一些问题(2014年9月15日 20:32:14)
- virtualbox虚拟网络:NAT&bridge桥接网络(2014年8月25日 22:51:35)
最近回复

浙公网安备33010802004887号