sshong发表于2007年12月8日 13:12:00 更新于2007年12月8日 13:12:00
1.数据抽象(data abstraction)
永远都不要随便的为成员变量添加一连串的get/set,这不是数据抽象,这是懒惰和缺乏想象力的表现。
2.多态(Polymorphism)
3.设计模式(design patterns)
设计模式是面向对象设计的方法论,就像快速排序、二分查找对算法一样。选择正确的合适的设计模式去实现一种新的面向对象设计。
4.标准模板库(the standard template library)
STL包含三个主要的构件:容器(container)、算法(algorithms)、迭代器(iterators)
5.引用是别名,不是指针!(re...
标签:无分类:C++阅读:4337评论:0阅读全文
sshong发表于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...
标签:无分类:RIA阅读:4509评论:0阅读全文
sshong发表于2007年11月4日 13:11:00 更新于2008年3月21日 19:20:00
  核心原因:C不支持重载,而C++支持!
  在c++中,为了支持重载机制,在编译生成的汇编码中,要对函数的名字进行一些处理,加入比如函数的返回类型等等.
  而在C中,只是简单的函数名字而已,不会加入其他的信息.
  也就是说:C++和C对产生的函数名字的处理是不一样的. 两者生成的目标符号表不一样!
  如函数
void foo( int x, int y );
  该函数被C编译器编译后在符号库中的名字为_foo,而C++编译器则会产生像_foo_int_int之类的名字(不同的编译器可能生成的名字不同,但是都采用了相同的机制,生成的新名字称为“...
标签:无分类:C++阅读:3747评论:0阅读全文
sshong发表于2007年11月4日 10:08:00 更新于2008年3月21日 19:22:00
假定有一个父类fruit,其有几个子类分别为orange、apple,传统的情况下,如果要用fruit指针指向其几个子类来实现动态性能,必须如下代码:
fruit* p=new orange();
当子类很多,而且命名复杂时,我们并不确切的知道子类的名称。或者原先的我们只是在fruit类的构造函数中传递一个type,并没有派生出相应的子类而现在由于某种原因需要用到派生子类时 ,我们就可以用到Factory模式了。
其核心思想是封装创建具体子类的实现!
如下图1和图2所示。两个之间的差异是在图2的思路中在factory只是提供创建对象的接口,具体实现创建哪...
标签:无分类:CodingArt阅读:4569评论:0阅读全文
sshong发表于2007年6月17日 23:48:00 更新于2008年3月21日 19:22:00
package声明
package name{}
package类似于现实的文件目录系统,最顶层的package是工程所在文件夹,如果类是定义在最顶层的包里面,则无需特别声明包的名称
package{}
package example {}
package example.subpackage {}
通常,包的命名以小写字母开头,是以域名相反的顺序来定义,如sshong.gnway.net通常把所有类都写在net.gnway.sshong包中,而examplecorp.co.uk则把类写在uk.co.examplecor...
标签:无分类:As3&Flex阅读:3378评论:0阅读全文
sshong发表于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比特整数),用来提速整数运算;
新增 * 类型标识,用来标识类型不确定的变量,通常在运行时变量类型无法确定时使用。...
标签:无分类:As3&Flex阅读:3625评论:0阅读全文
sshong发表于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...
标签:无分类:As3&Flex阅读:6528评论:2阅读全文
sshong发表于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...
标签:无分类:As3&Flex阅读:3007评论:0阅读全文
sshong发表于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...
标签:无分类:As3&Flex阅读:3101评论:0阅读全文
sshong发表于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...
标签:无分类:As3&Flex阅读:2977评论:0阅读全文
共210篇日志 第19/21页 下一页 上一页 尾页 首页
联系我
博客订阅