技术点滴
来源: BlogBus 原始链接: http://www.blogbus.com:80/blogbus/blog/index.php?blogid=6781&cat=6 存档链接: https://web.archive.org/web/20040719081857id_/http://www.blogbus.com:80/blogbus/blog/index.php?blogid=6781&cat=6
技术点滴 几年的软件研发做下来,接触的技术,零零碎碎加起来,居然手指不够数了。不少东西,是帮工程部门解决完就扔一旁。弃之可惜,何不借这网络一角,留下一点记忆?遂有此Blog。 分页: [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] 最后页 AS2里get/set的用法 -[Rich Internet Applications] 时间: 2004-07-06 16:00 这里有说明文章: http://www.kirupa.com/developer/oop2/AS2OOPClassStructure6.htm 从代码来看是最容易理解的 // in Account.as class Account { private var currentOwner:String = "none"; function Account(name:String){ currentOwner = name; } function get owner():String { return currentOwner; } function set owner(name:String):Void { currentOwner = name; } } // in Flash movie var myChecking:Account = new Account("Terry"); trace(myChecking.owner); // Terry myChecking.owner = "Terry's son"; trace(myChecking.owner); // Terry's son Account的私有变量currentOwner是不能被直接访问的,为此,需要有getting和setting方法。AS2里有两个新关键字get/set就是用来做这件事的。get owner()/set owner(name:String)等于是创建了一个可以被访问的变量owner(就是函数名),然后就可以对这个变量owner直接进行get和set了。 老实说,我不是很明白为什么要引进这两个关键字。直接通过getter方法和setter方法访问不就可以了?嗯,是不是Flash开发者比较习惯用变量名的方式来使用?由于写惯了Java,我觉得这样的使用方式就很足够了: function getOwner():String { return currentOwner; } 对于get/set,并不要求get method和set method使用同一个函数名,当然,函数名不能与已有的变量名相同。 linrun 发表于 16:00 | 阅读全文 | 评论(1) | 引用(Trackback0) Flash ActionScript 2.0 Unit Test -[Rich Internet Applications] 时间: 2004-06-23 10:42 程序开发而没有Unit Test,未免有点说不过去,所以最近考虑在Flash ActionScript2 里边引进Unit Test。关注了一下这方面的资料,找到三个实现的框架: 1、Robin Debreuil的ASUnit http://www.debreuil.com/FrameworkDocs/UnitTestingOverview.htm 2、iteration::two的As2Unit http://www.as2unit.org/ 3、Ali Mills与Luke Bayes的AsUnit http://sourceforge.net/projects/asunit/ ASUnit据说是因应J2EE开发人员的challenge写出来的,借鉴了JUnit的思想,可惜比较旧,还没有引进对AS2的支持,不予考虑。 AsUnit――见鬼,居然用大小写来区分名称――相当新,5月才发布了第一个beta版。这是一个Open Source项目。 As2Unit应该是在去年9月发布了0.1的版本,此后一直没有更新过,本身不是Open Source的,不过以swc形式发布的东西,找个解压缩文件解开,再找个ActionScript Viewer查看也就是了。 后两个我都试用了一下,最后决定先选用As2Unit,看中的是它比较简洁明了,而且有一篇说明文档――后者是关键,我实在没兴趣去看程序源码然后琢磨要怎么用。虽然AsUnit也有sample程序。在它出文档之前,我是暂不考虑了。 不过从架构上我还是比较看好AsUnit,而且As2Unit太久没有发布新版本,所以,如果在使用As2Unit时感到不足,我可能还是会转向AsUnit。 这就是让我选择了As2Unit的那篇文档 http://www.flashmagazine.com/html/863.htm 。它提供了以下的statements,可以满足一般的应用: assertEquals() assertTrue() assertFalse() assertNotNull() assertNull() assertUndefined() assertNotUndefined() fail( userMessage:String ) 使用起来很简单,略微说明一下: 1、安装 把下载的as2unit.zip解开,把as2unit.swc拷贝到\Documents and Settings<USER>\Local Settings\Application Data\Macromedia\Flash MX 2004<LANGUAGE>\Configuration\Components目录下去 是你的windows用户名,是Flash MX所用语言 重新打开Flash MX,就可以见到增加了一个AS2Unit组件 2、至于使用,看看as2unit-samples就可以明白了:编写测试类,把测试类绑定到AS2Unit组件的Test Class属性去,同时在第一帧写上你的测试类的reference,这样Flash才能找到测试类。 使用中发现一个问题:怎么样可以分别编写测试类,然后一次测试呢?看起来它好像没有TestSuite,麻烦,我本来以为有的。 无论如何,先用用看再说。 linrun 发表于 10:42 | 阅读全文 | 评论(0) | 引用(Trackback0) 很棒的Flash app网站 -[Rich Internet Applications] 时间: 2004-06-19 17:13 Grant Skinner的个人网站 http://www.gskinner.com/ ,站点本身就是用其FlashOS2实现的,可以看到效果相当的好。在有几个project,摘要如下: FlashOS2 FlashOS2 is the successor to FlashOS by Grant Skinner. It is a collection of assets that are encapsulate, reusable, and have documented APIs. FlashOS2 allows for very rapid online application development, as it manages common elements like menus, menu bars, windows, dialogs, tooltips, file management, settings loading, asset loading, content display, screen management and more. gModeler http://www.gskinner.com/ gModeler is a free online UML diagramming and documentation tool, targetted at developers working with ECMA 262 languages such as FlashMX's Actionscript, and Javascript. In addition to it's diagramming capabilities, it exports HTML documentation, FlashMX XML documentation (for the Action Panel and Reference Panel) and stub code (class code). 在我点了Flash里的链接进入gModeler的html页面之后,立刻开始后悔――果不其然,我点后退键回到前边的flash页时,又重新下载一次-_-我的网络现在很慢啊,这也是我常说的Flash应用带来的使用体验并不愉快的表现,有没有人做过Flash里类似IE工具栏的东西?我想ban掉IE工具栏和IE功能键是必要的,同时需要一个取代的东西。Flash本地缓存的策略我想也该去查一查才行。 gPhotoFader我没能打开,PathFinder只是好玩而以,Games没有仔细看。 总之,先记下来。 linrun 发表于 17:13 | 阅读全文 | 评论(0) | 引用(Trackback0) Rich Internet Applications -[Rich Internet Applications] 时间: 2004-06-17 10:44 把原来的Flash MX一栏改成Rich Internet Applications,听起来响亮多了吧?所谓新瓶旧酒,就是如此了。 做Flash app,最头痛的是怎么跟人讲…… 路人甲:“最近在做什么?” 林润:“Flash。” 路人甲:“哇,这么有兴致!” 林润:“工作安排啦……” 路人甲:“咦,这么凄凉?” 林润:“……” 这样的对话当然是带点夸张,不过由于Flash的动画功能已经深入人心,其形象,也就固化成为高级玩具,似乎只属于designer,而不会有developer问津。 ――必须声明,我这里没有任何贬低designer的意思,那些超炫的功能,很可能刮尽developer的每一滴脑汁都想象不到的。 事实上,Macromedia已经不断在为Flash转型,Flex就是很重要的一个尝试。以致于有资深Flash designer抱怨连连,认为MM太偏心了。而MM在这方面提出的最重要的概念,就是Rich Internet Applications。 那么什么是RIA?中国RIA研究与开发论坛的Azure写了这样一篇简介 http://www.riacn.com/bbs/showthread.asp?threadid=18 好像是翻译的,所以读起来挺拗口。简单的说,就是目前基于浏览器的应用带给用户的使用体验太糟糕,所以有必要改进。改进的方式,是: 1、基于HTTP不变,基于浏览器不变 2、易用、更良好的互动,通过增加界面元素的方式实现 3、把更多的操作以及数据放到客户端,至少,不用改个数据项就要提交一次。 说得再直白点,以C/S时代的client为坐标轴的一极,以3层时代的client为坐标轴的另一极,RIA就处在两者的中间。世事就是如此,一下子跳到极端,然后再慢慢往回走,探索一个真正令人舒服的中点。 有人列举了RIA的实现方式 http://www.riacn.com/bbs/showthread.asp?threadid=995 ,可说五花八门,MM的Flash,Java的Applet、WebStart,M$的Smart Clent……还有ActiveX、WebForm、Delphi,以及更多形形色色的解决方案: http://www.bindows.net/ http://webfx.eae.net/ http://thinlet.sourceforge.net/ http://www.cortext.co.il/ http://www.laszlosystems.com/ http://www.convea.com/ http://www.canoo.com/ulc/ 谁能胜出?我不知道,至少,在现阶段,没有一种技术给我带来真正舒适的使用体验,包括Flash。 Ps.Bus把一个分类的内容转到另一个分类的功能很好,应该加分。 linrun 发表于 10:44 | 阅读全文 | 评论(0) | 引用(Trackback0) Flex的安装 -[Rich Internet Applications] 时间: 2004-05-01 13:58 前两天终于把Flex拿到手――我最近才发现,原来Flex在中国已经散播得到处都是,这……大伙的热情也太高了吧。 因为没有时间,所以只是简单的安装了一下看看。把安装时一些可以注意的点说一下,当然,是写给熟悉Flash而不熟悉Java的朋友的。如果熟悉J2EE应用,那装Flex全无难度可言。 1、安装时有两种模式,一种是输入注册码,单独安装Flex;一种是安装trial版,会自动把JRun也装上去,以后再用安装目录下的一个工具完成注册。建议只熟悉Flash的按后一种模式装,据说装完开始目录里还会增加链接,省心省事。不过我没试过,我用的是第一种。 2、安装完后,到安装目录下,如D:\Program Files\Macromedia\FLEX,可以看到三个war文件,其中flex.jar就是我们需要的服务端Flex应用了。不过,作为体验,不用这个,把另一个samples.jar复制一下。 3、跑Flex需要服务器,可以用JRun,这个是明显有先天的优势。直接把samples.jar放到想启动的服务器目录下,再启动该服务器就ok了。由于现在不是在公司的机上写,所以没办法给出目录。启动后,访问 http://localhost:8101/samples 就可以。根据实际情况把“8101”改为你实际使用的端口号。 4、当然,我还是更喜欢用Tomcat。安装同样简单,把samples.jar放到tomcat_home\webapps目录下,启动tomcat就ok了。简单得不得了,对吧?访问 http://localhost:8080/samples ,左边有一项Flex Code Explorer,是做得相当不错的MXML代码浏览器。通过对比实际生成Flash显示和作为源码的MXML文件进行学习,应该是一个很好的途径。在Tomcat下可能有些功能需要进行设置上的修改,因为没有深入,以后再说。 5、最后,编辑器方面,基于Dreamweaver的brady正在开发,for Eclipse的两个插件也正在开发,所以,可视化的开发工具暂时没有。不过,基于MXML进行开发,是直接写XML代码,所以,只要一个记事本就足够了。更好一点的工具建议用editplus,设置一下:(a)在tools->prefences面板里,选择settings&syntax,(b)add一个file types,Description填入MXML,file extension写上mxml,syntax file选择editplus目录下的xml.stx。这就有了一个可以高亮显示的编辑器,相当不错,需要的话,还可以定制自己的mxml syntax file,根据xml.stx进行修改就行了。至于调试,根据riacn那边的说法,自带的调试器慢得可以杀死人,不知实际情况如何。 需要更多信息可以看看riacn的Flex开发专区 http://www.riacn.com/bbs/showforum.asp?forumid=6 ,还可以。Flex的开发有一份必备的文档: http://download.macromedia.com/pub/documentation/en/flex/1/devflexapps.pdf ,建议下载。 以上就是我前几天“研究”了一小时Flex的“心得”,凭记忆写下来的,应该没错,呵呵。 题外说一句,难得五一假期,所以打算就一项技术认真研究一下。两个选择:Spring Framework或Flex。最后决定还是看Spring,毕竟这个我工作里要用到,而Flex更多只是兴趣。――其实,最关键的原因是,这趟回家什么东西都没带,而下载Spring比下载Flex可是容易得太多了。还是开源项目好啊。 linrun 发表于 13:58 | 阅读全文 | 评论(0) | 引用(Trackback0) 分页: [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] 最后页 分类 首页 一路走来 翻译文章 Spring Framework Rich Internet Applications 对软件开发的思考 blog about blog 日历 2004 年 7 月 Sun Mon Tue Wen Thu Fri Sat 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 最后更新 翻出一份两年前的笔记 XMLBuddy能用了 电脑作诗机 不务正业ing booso.com 最受关注的Eclipse Plugins Lomboz 3rc2和Eclipse3 AS2里get/set的用法 《变味的分布式计算》后话 存档:Java设计模式使用率爬行榜 最新评论 林润 : 我估计你会看到这. 6e : 我是6e,booso.co. 林润 : 嗯,我这边也能用. seno : 我xmlbuddy的就可. 林润 : 我已经半个月没得. vvpv221 : 好想有一个能有这. vvpv221 : 好想有一个着牙膏. 林润 : 嗯,看来不是完全. 林润 : 嗯,我在正式版里. seno : 类似于Delphi和C#. 存档 2004/01/18/-2004/04/29 2004/04/30/-2004/06/08 2004/06/09/-2004/07/01 我的链接 独角兽的天空 寸心知