<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title><![CDATA[专注于Flash RIA与网络游戏开发]]></title>
<link>http://www.sujun.org/</link>
<description><![CDATA[06年至今从事Flash和Java的WebGame的工作。参与开发的作品包括棋牌，儿童社区，横版游戏，战棋游戏，策略经营以及MMORPG]]></description>
<language>zh-cn</language>
<copyright><![CDATA[Copyright 2005 PBlog2 v2.4]]></copyright>
<webMaster><![CDATA[sujun10@21cn.com(弃天笑)]]></webMaster>
<generator>PBlog2 v2.4</generator> 
<image>
	<title>专注于Flash RIA与网络游戏开发</title> 
	<url>http://www.sujun.org/images/logos.gif</url> 
	<link>http://www.sujun.org/</link> 
	<description>专注于Flash RIA与网络游戏开发</description> 
</image>

			<item>
			<link>http://www.sujun.org/default.asp?id=60</link>
			<title><![CDATA[《松本行弘的程序世界》读后感]]></title>
			<author>sujun10@21cn.com(弃天笑)</author>
			<category><![CDATA[书籍]]></category>
			<pubDate>Tue,28 Feb 2012 21:38:02 +0800</pubDate>
			<guid>http://www.sujun.org/default.asp?id=60</guid>	
		<description><![CDATA[内容属于个人观点。<br/>正如书的标题所言，所以书的内容的范围比较广。不过都是有围绕着ruby。<br/>基本上编程的一些基础东西都会讲到。算是比较基础的书籍了。<br/>虽然很多是在讲ruby，但是即时不好似ruby的程序员，看完可以也hi可以掌握到不少编程的基础知识。<br/>即使是已经有几年编程经验的人，看了这本书也是会有一定的收获。因为编程世界不仅仅是ruby。<br/><br/>其中个人最大的收获就是作为脚本语言要有脚本语言的思维。我本身是java程序员出身的。目前是同时写java和actionScript。<br/>早期是把as当作java来写。很多东西都是严格参照java的形式来写。虽然写得很规范，效果也好。<br/>但是却抛弃了as作为脚本语言的便利性。<br/>例如as可以传递方法，但是却完全采用java，用接口的形式。其实as传递方法真是非常地方便。<br/>而且不受接口声明方法的限制。还有就是可以采用*以及直接ojb[&#34;&#34;]来读取属性，比起java的反射，用起来方便多了。<br/><br/>同时还有传递一个思想，那就是开发效率以及使用的简洁性。<br/>对于喜欢开发框架，做架构的人来说，也是可以吸收到丰富的营养的。会想方设法去设计出简洁而实用的代码来。<br/><br/>看完这本书，会对ruby产生向往，正如看完《黑客与画家》会对lisp产生向往一样，ruby确实有它的独特魅力，也是值得我们鉴赏的。<br/>]]></description>
		</item>
		
			<item>
			<link>http://www.sujun.org/default.asp?id=59</link>
			<title><![CDATA[23号广州天地会的演讲ppt(WebGame的AS开发心得)]]></title>
			<author>sujun10@21cn.com(弃天笑)</author>
			<category><![CDATA[Blog信息]]></category>
			<pubDate>Tue,25 Oct 2011 21:57:34 +0800</pubDate>
			<guid>http://www.sujun.org/default.asp?id=59</guid>	
		<description><![CDATA[由于时间的关系，很多内容没有讲到，以及相关的demo也没有演示。<br/>之后会抽取时间整理一下，再发一些文章出来。<br/>当然，大家有问题可以讨论<br/><br/>下面可以去天地会的地址进行下载<br/><a href="http://bbs.9ria.com/thread-101480-1-1.html" target="_blank">http://bbs.9ria.com/thread-101480-1-1.html</a>]]></description>
		</item>
		
			<item>
			<link>http://www.sujun.org/default.asp?id=58</link>
			<title><![CDATA[儿童社区：奇想咕噜团]]></title>
			<author>sujun10@21cn.com(弃天笑)</author>
			<category><![CDATA[相关作品]]></category>
			<pubDate>Wed,28 Sep 2011 23:25:57 +0800</pubDate>
			<guid>http://www.sujun.org/default.asp?id=58</guid>	
		<description><![CDATA[趁着公司还在，发布一下留念吧<br/>网址:<a target="_blank" href="http://www.517qx.com">奇想咕噜团</a><br/>虽然已经离开这个项目1年多了，但是这个儿童社区毕竟是自己倾注了很多感情。<br/>美术还是非常给力的.不过内容就是比较普通了，儿童社区有的都有，没有的也有一些<br/>技术的话就必须另外开帖来讲啦。<br/>一个项目从零开始做起，真的可以学到很多东西。下面先欣赏一下图片吧<br/><br/><img src="http://www.sujun.org/attachments/month_1109/o201192823256.jpg" border="0" alt=""/><br/><img src="http://www.sujun.org/attachments/month_1109/d2011928232516.jpg" border="0" alt=""/><br/><img src="http://www.sujun.org/attachments/month_1109/42011928232525.jpg" border="0" alt=""/><br/><img src="http://www.sujun.org/attachments/month_1109/q2011928232533.jpg" border="0" alt=""/><br/>还两个中型游戏，1个是模仿植物大战僵尸<br/><img src="http://www.sujun.org/attachments/month_1109/f2011928232825.jpg" border="0" alt=""/><br/>还有就是类似DNF的横版了<br/><img src="http://www.sujun.org/attachments/month_1109/l2011928233347.jpg" border="0" alt=""/><br/>]]></description>
		</item>
		
			<item>
			<link>http://www.sujun.org/default.asp?id=57</link>
			<title><![CDATA[2011RIA天地行北京城市精英论坛]]></title>
			<author>sujun10@21cn.com(弃天笑)</author>
			<category><![CDATA[Blog信息]]></category>
			<pubDate>Mon,14 Mar 2011 09:27:25 +0800</pubDate>
			<guid>http://www.sujun.org/default.asp?id=57</guid>	
		<description><![CDATA[2011RIA天地行北京城市精英论坛<br/>活动时间：2011.3.27<br/>报名时间：2011.3.7-2011.3.25<br/>活动规模：300人以上<br/>地点：北京中关村北四环西路33号<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;中国科学院国家科学图书馆<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(文献情报中心，西北门&nbsp;一楼报告厅)<br/><br/>天地行简介<br/><br/>天地会作为国内最大的RIA开发者社区，响应兄弟们的呼声，自2009年5月起，天地会从线上走到线下，举办名为“RIA天地行”的技术讲座，已分别在杭州、上海、北京成功举办，受到广大RIA开发者的欢迎。&nbsp;天地行分为城市精英论坛与校园行，城市精英论坛为9RIA天地会举办的Flash/Flex/AS以及移动端RIA开发者盛会，地点选在上海、北京、杭州、广州等全国各大城市，通过举办技术讲座的形式，聚集全国的前端开发人员，分享最新富互联网应用技术动态。校园行，针对校园学生群体，推广最新技术知识，就业前景、技术路线和职业规划等，扩大flash开发者群体，满足企业校园招聘和学生求职需求。<br/><br/>演讲主题<br/>Flash&nbsp;3D&nbsp;API&nbsp;相关<br/>主题简介<br/>Flash&nbsp;Player新版本给力的Molehill&nbsp;3D怎么用！除了3D上之外，2D渲染能沾光么？此主题讲带你了解最新的3D&nbsp;API相关内容，并将会有给力的Demo演示。<br/><br/>基于拓补图的视线寻路<br/>主题简介<br/>寻路是游戏人工智能中经典而有趣的话题之一，在flash的游戏应用开发中也占据着相当重要的地位，传统的基于二维数字矩阵的A星寻路虽然已经能基本满足我们的基本需求，但是有一种基于拓扑数据结构的寻径，可以带给我们更理想的路径结果和思路，让我们届时一同分享其中的美妙。<br/><br/><br/>小型Flash游戏项目的非主流敏捷开发模式<br/>主题简介：<br/>团队如何分工协作才能发挥最大效率？如何避免需求变动致使bug频出恶梦连连？没有出色的设计师，如何把UI做好？前端程序员没有经验，如何避免项目延期？产品策划为什么总是捣乱？面对众多纷繁的框架，究竟该如何决择？到底什么样的开发方式，可以帮助团队规避项目风险？作者结合自身多年的Flash项目开发经验，和大家一起控讨Flash项目敏捷开发之道。<br/><br/>使用Flex框架开发WebGame<br/>主题简介：<br/>打破常规思路采取Flex框架开发游戏，体验一下使用mxml编写游戏的感觉和如何使用Flex现成的框架来增加开发效率，解决Flex框架带来的性能和体积问题，同时分享在游戏制作中的一些心得和体会。<br/><br/><br/>详细的内容可以浏览官方网站<br/><a href="http://www.9ria.com/tdxbg/index.html" target="_blank">http://www.9ria.com/tdxbg/index.html</a><br/>活动还有书送哦]]></description>
		</item>
		
			<item>
			<link>http://www.sujun.org/default.asp?id=56</link>
			<title><![CDATA[[最新活动]2011RIA天地行北京城市精英论坛]]></title>
			<author>sujun10@21cn.com(弃天笑)</author>
			<category><![CDATA[Blog信息]]></category>
			<pubDate>Fri,11 Mar 2011 15:58:04 +0800</pubDate>
			<guid>http://www.sujun.org/default.asp?id=56</guid>	
		<description><![CDATA[2011RIA天地行北京城市精英论坛<br/>活动时间：2011.3.27<br/>报名时间：2011.3.7-2011.3.25<br/>活动规模：300人以上<br/>地点：北京中关村北四环西路33号<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;中国科学院国家科学图书馆<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(文献情报中心，西北门&nbsp;一楼报告厅)<br/><br/>天地行简介<br/><br/>天地会作为国内最大的RIA开发者社区，响应兄弟们的呼声，自2009年5月起，天地会从线上走到线下，举办名为“RIA天地行”的技术讲座，已分别在杭州、上海、北京成功举办，受到广大RIA开发者的欢迎。&nbsp;天地行分为城市精英论坛与校园行，城市精英论坛为9RIA天地会举办的Flash/Flex/AS以及移动端RIA开发者盛会，地点选在上海、北京、杭州、广州等全国各大城市，通过举办技术讲座的形式，聚集全国的前端开发人员，分享最新富互联网应用技术动态。校园行，针对校园学生群体，推广最新技术知识，就业前景、技术路线和职业规划等，扩大flash开发者群体，满足企业校园招聘和学生求职需求。<br/><br/>详细的内容可以浏览官方网站<br/><a target="_blank" href="http://www.9ria.com/tdxbg/index.html">http://www.9ria.com/tdxbg/index.html</a><br/>活动还有书送哦]]></description>
		</item>
		
			<item>
			<link>http://www.sujun.org/default.asp?id=54</link>
			<title><![CDATA[[最新活动]2011RIA天地行北京城市精英论坛]]></title>
			<author>sujun10@21cn.com(弃天笑)</author>
			<category><![CDATA[Blog信息]]></category>
			<pubDate>Fri,11 Mar 2011 15:38:06 +0800</pubDate>
			<guid>http://www.sujun.org/default.asp?id=54</guid>	
		<description><![CDATA[2011RIA天地行北京城市精英论坛<br/>活动时间：2011.3.27<br/>报名时间：2011.3.7-2011.3.25<br/>活动规模：300人以上<br/>地点：北京中关村北四环西路33号<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;中国科学院国家科学图书馆<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(文献情报中心，西北门&nbsp;一楼报告厅)<br/><br/>天地行简介<br/><br/>天地会作为国内最大的RIA开发者社区，响应兄弟们的呼声，自2009年5月起，天地会从线上走到线下，举办名为“RIA天地行”的技术讲座，已分别在杭州、上海、北京成功举办，受到广大RIA开发者的欢迎。&nbsp;天地行分为城市精英论坛与校园行，城市精英论坛为9RIA天地会举办的Flash/Flex/AS以及移动端RIA开发者盛会，地点选在上海、北京、杭州、广州等全国各大城市，通过举办技术讲座的形式，聚集全国的前端开发人员，分享最新富互联网应用技术动态。校园行，针对校园学生群体，推广最新技术知识，就业前景、技术路线和职业规划等，扩大flash开发者群体，满足企业校园招聘和学生求职需求。<br/><br/>演讲主题<br/>Flash&nbsp;3D&nbsp;API&nbsp;相关<br/>主题简介<br/>Flash&nbsp;Player新版本给力的Molehill&nbsp;3D怎么用！除了3D上之外，2D渲染能沾光么？此主题讲带你了解最新的3D&nbsp;API相关内容，并将会有给力的Demo演示。<br/><br/>基于拓补图的视线寻路<br/>主题简介<br/>寻路是游戏人工智能中经典而有趣的话题之一，在flash的游戏应用开发中也占据着相当重要的地位，传统的基于二维数字矩阵的A星寻路虽然已经能基本满足我们的基本需求，但是有一种基于拓扑数据结构的寻径，可以带给我们更理想的路径结果和思路，让我们届时一同分享其中的美妙。<br/><br/><br/>小型Flash游戏项目的非主流敏捷开发模式<br/>主题简介：<br/>团队如何分工协作才能发挥最大效率？如何避免需求变动致使bug频出恶梦连连？没有出色的设计师，如何把UI做好？前端程序员没有经验，如何避免项目延期？产品策划为什么总是捣乱？面对众多纷繁的框架，究竟该如何决择？到底什么样的开发方式，可以帮助团队规避项目风险？作者结合自身多年的Flash项目开发经验，和大家一起控讨Flash项目敏捷开发之道。<br/><br/>使用Flex框架开发WebGame<br/>主题简介：<br/>打破常规思路采取Flex框架开发游戏，体验一下使用mxml编写游戏的感觉和如何使用Flex现成的框架来增加开发效率，解决Flex框架带来的性能和体积问题，同时分享在游戏制作中的一些心得和体会。&nbsp;<br/><br/><br/>详细的内容可以浏览官方网站<br/><a target="_blank" href="http://www.9ria.com/tdxbg/index.html">http://www.9ria.com/tdxbg/index.html</a><br/>活动还有书送哦]]></description>
		</item>
		
			<item>
			<link>http://www.sujun.org/default.asp?id=53</link>
			<title><![CDATA[Cruisecontrol相关问题]]></title>
			<author>sujun10@21cn.com(弃天笑)</author>
			<category><![CDATA[出错解决档案]]></category>
			<pubDate>Mon,06 Sep 2010 09:47:47 +0800</pubDate>
			<guid>http://www.sujun.org/default.asp?id=53</guid>	
		<description><![CDATA[用cruisecontrol来发布项目以及编译程序好一阵了，总结了一下相关问题，当初自己也遇到过的，希望对大家有帮助<br/><br/>1.cruisecontrol编译swf问题<br/>如果直接对相对路径的话，会报&nbsp;mxmlc错误:&nbsp;无法打开“src“<br/>这里mxmlc很奇怪，直接用ant编译的话，这个build.xml文件是没错的。但是如果采用cruisecontrol来自动编译的话，就会出错上面的错啦。既然是路径问题，那就改成绝对路径。<br/>经过测试发现，只需要在&lt;mxmlc&gt;&lt;/mxmlc&gt;字段中的file属性和source-path属性路径需要修改以外，其他地方不一样，可以正常编译通过。<br/>（当然，也可以取相对路径，但是必须加上projects/游戏项目名称/src）。比其他地方，在src面前增加了projects/游戏项目名称。<br/>这里我估计是ant的问题，我采用EditPlus里编译build，可以看成ant和build在同一个目录，所以路径不会出现问题。但是在projects/游戏项目名称中，ant是和projects同个级别的目录。所以需要特别指明路径。（这里有点奇怪的是，编译java却不会出现这个问题）<br/><br/>2.用ant编译flash的swc时，有时会造成Java&nbsp;heap&nbsp;space错误。检查一下，发现是编译时读取了太多的flex的swc，根据需要去掉一些没用的swc就可以。例如编译纯as3项目，只需要导入playerglobal.swc就可以了。当然，你也通过设置jvm虚拟机的Heap值。<br/><br/>3.svn错误<br/><div class="UBBPanel"><div class="UBBTitle"><img src="http://www.sujun.org/images/code.gif" style="margin:0px 2px -3px 0px" alt="程序代码"/> 程序代码</div><div class="UBBContent"><br/>net.sourceforge.cruisecontrol.CruiseControlException:&nbsp;svn&nbsp;failed&nbsp;with&nbsp;exception<br/><br/>at&nbsp;net.sourceforge.cruisecontrol.util.CommandExecutor.executeAndWait(Com<br/>mandExecutor.java:115)<br/><br/>at&nbsp;net.sourceforge.cruisecontrol.util.Commandline.executeAndWait(Command<br/>line.java:617)<br/><br/>at&nbsp;net.sourceforge.cruisecontrol.bootstrappers.SVNBootstrapper.bootstrap<br/>(SVNBootstrapper.java:134)<br/><br/>at&nbsp;net.sourceforge.cruisecontrol.Project.bootstrap(Project.java:760)<br/><br/>at&nbsp;net.sourceforge.cruisecontrol.Project.build(Project.java:192)<br/>[code]<br/><br/>解决方法：原因是你的命令行不能执行SVN命令，所以装一个subversion就可以解决了,希望使用的subversion版本新一点，要不然还会报版本过旧的错误。&nbsp;注意，千万不要去弄客户端的TortoiseSVN<br/><br/>4.<br/>[code]<br/>&lt;bootstrappers&gt;<br/>&#160;&#160;&#160;&#160;&lt;svnbootstrapper&nbsp;localWorkingCopy=&#34;projects/${project.name}/src&#34;&nbsp;/&gt;<br/>&nbsp;&lt;/bootstrappers&gt;<br/></div></div><br/><br/>注意，这里<br/><div class="UBBPanel"><div class="UBBTitle"><img src="http://www.sujun.org/images/code.gif" style="margin:0px 2px -3px 0px" alt="程序代码"/> 程序代码</div><div class="UBBContent"><br/>&lt;svnbootstrapper&nbsp;localWorkingCopy=&#34;projects/${project.name}/src&#34;&nbsp;/&gt;<br/>[code]<br/>和<br/>[code]<br/>&nbsp;&lt;modificationset&nbsp;quietperiod=&#34;30&#34;&gt;<br/>&#160;&#160;&#160;&#160;&lt;svn&nbsp;localWorkingCopy=&#34;projects/${project.name}/src&#34;/&gt;<br/>&lt;/modificationset&gt;<br/></div></div><br/>中指定的目录，必须是一个svn目录。不然会包svn:&nbsp;&#39;.&#39;&nbsp;is&nbsp;not&nbsp;a&nbsp;working&nbsp;copy的错误，可以继续执行，这时你的build.xml如果也有svn的话，也是可以正常进行的<br/>同时，这里指定了svn，那么在项目的build.xml中，就不需要增加svn的设置了]]></description>
		</item>
		
			<item>
			<link>http://www.sujun.org/default.asp?id=52</link>
			<title><![CDATA[[AS3]Class小技巧：程序自动让对象向下转换]]></title>
			<author>sujun10@21cn.com(弃天笑)</author>
			<category><![CDATA[ActionScript]]></category>
			<pubDate>Sat,07 Aug 2010 18:05:47 +0800</pubDate>
			<guid>http://www.sujun.org/default.asp?id=52</guid>	
		<description><![CDATA[这个是一个比较方便的技巧，在实现一些自动化框架的编码中，可能会比较常用到。就是通过框架传递过来的参数，一般都是传递对象的接口或者父类，然后再传到对应的方法中，再采用强制性转换之后，再使用。<br/>例如我个人写网络通讯框架中，所有接受的数据都实现了IRead接口，所以回调函数接受的参数是IRead接口，我为了减少强制转换的麻烦，就在网络底层写了个自动强制向IRead的不同实现类作类型转换。这样在不同的接收方法那里可以声明自己想要的实际参数对象啦~<br/>下面是简单的代码例子<br/><div class="UBBPanel"><div class="UBBTitle"><img src="http://www.sujun.org/images/code.gif" style="margin:0px 2px -3px 0px" alt="程序代码"/> 程序代码</div><div class="UBBContent"><br/>/**<br/>&nbsp;*&nbsp;@UseAsClass.as<br/>&nbsp;*&nbsp;<br/>&nbsp;*&nbsp;@author&nbsp;sodaChen&nbsp;mail:sujun10@21cn.com<br/>&nbsp;*&nbsp;@version&nbsp;1.0<br/>&nbsp;*&nbsp;&lt;br&gt;Copyright&nbsp;(C),&nbsp;2010&nbsp;asFrame.com<br/>&nbsp;*&nbsp;&lt;br&gt;This&nbsp;program&nbsp;is&nbsp;protected&nbsp;by&nbsp;copyright&nbsp;laws.<br/>&nbsp;*&nbsp;&lt;br&gt;Program&nbsp;Name:AsFrame<br/>&nbsp;*&nbsp;&lt;br&gt;Date:2010-8-7<br/>&nbsp;*/<br/>package<br/>{<br/>&#160;&#160;&#160;&#160;import&nbsp;flash.display.MovieClip;<br/>&#160;&#160;&#160;&#160;import&nbsp;flash.display.Sprite;<br/>&#160;&#160;&#160;&#160;import&nbsp;flash.utils.getDefinitionByName;<br/>&#160;&#160;&#160;&#160;import&nbsp;flash.utils.getQualifiedClassName;<br/>&#160;&#160;&#160;&#160;<br/>&#160;&#160;&#160;&#160;/**<br/>&#160;&#160;&#160;&#160;&nbsp;*&nbsp;AS中的Class类的妙用<br/>&#160;&#160;&#160;&#160;&nbsp;*&nbsp;@author&nbsp;sodaChen<br/>&#160;&#160;&#160;&#160;&nbsp;*&nbsp;@Date:2010-8-7<br/>&#160;&#160;&#160;&#160;&nbsp;*/<br/>&#160;&#160;&#160;&#160;public&nbsp;class&nbsp;UseAsClass&nbsp;extends&nbsp;Sprite<br/>&#160;&#160;&#160;&#160;{<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;public&nbsp;function&nbsp;UseAsClass()<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;{<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;super();<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;//声明一个mc实例<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;var&nbsp;sprite:Sprite&nbsp;=&nbsp;new&nbsp;MovieClip();<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;//调用setSprite方法,直接把sprite传递进去,因为MovieClip是Sprite的子类<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;setSprite(sprite);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;//接下来调用setMovie,这是直接传递sprite编译器是会出错的，因为声明类型的时候，是以mc的父类Sprite声明<br/>//&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;setMovie(sprite);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;//所以这里必须强制转换成mc<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;setMovie(MovieClip(sprite));<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;//这里有个问题，如果编写一个通过框架，或者在特殊情况下，不能程序员手工编写类型转换的情况下，<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;//需要程序自动进行类型转换该怎么实呢？这里就采用到了Class对象的小技巧了就可以实现了<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;var&nbsp;classPath:String&nbsp;=&nbsp;getQualifiedClassName(sprite);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;var&nbsp;mcClass:Class&nbsp;=&nbsp;getDefinitionByName(classPath)&nbsp;as&nbsp;Class;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;setAutoMovie(mcClass(sprite));<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;}<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;//接受Sprite参数<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;public&nbsp;function&nbsp;setSprite(sprite:Sprite):void<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;{<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;trace(&#34;直接传递父类对象&#34;);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;}<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;//接受MovieClip的参数<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;public&nbsp;function&nbsp;setMovie(movie:MovieClip):void<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;{<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;trace(&#34;程序手工编码向下转换类型&#34;);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;}<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;//接受MovieClip的参数<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;public&nbsp;function&nbsp;setAutoMovie(movie:MovieClip):void<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;{<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;trace(&#34;程序自动向下转换类型!&#34;);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;}<br/>&#160;&#160;&#160;&#160;}<br/>}<br/></div></div>]]></description>
		</item>
		
			<item>
			<link>http://www.sujun.org/default.asp?id=51</link>
			<title><![CDATA[Flash Socket的基本通讯协议流程例子]]></title>
			<author>sujun10@21cn.com(弃天笑)</author>
			<category><![CDATA[ActionScript]]></category>
			<pubDate>Sun,25 Jul 2010 16:20:52 +0800</pubDate>
			<guid>http://www.sujun.org/default.asp?id=51</guid>	
		<description><![CDATA[如蒙转载，请注明文章出处：www.sujun.org&nbsp;&nbsp;&nbsp;作者：弃天笑<br/><br/>这个例子是7月24日&nbsp;•&nbsp;广州&nbsp;•&nbsp;东方国际饭店的Flash技术交流会演讲那天的例子，现在传到blog上，让有需要的人去下载。不过后来发现大家比较感兴趣的，不是具体的通讯协议，而且一些关于通讯的各种技术解决问题。呵呵。希望有继续可以和大家继续交流。大家共同前进。而我自己以后也会陆续贴出自己工作上遇到的问题（例如我自己现在webgame服务器方面的）<br/><br/>不过这篇例子是比较简单的通讯协议了，客户端和服务端都是采用最基础的一个一个数据地发送，也是一个一个地接受(采用&nbsp;len&nbsp;+&nbsp;cmd&nbsp;+&nbsp;body)的方式。之后也会推出增加AMF3，以及自动解析的一些例子啦。<br/>例子运行图片<br/><img src="http://www.sujun.org/attachments/month_1007/j201072516183.jpg" border="0" alt=""/><br/>下面是贴一下简单的代码<br/>Flash端发送登陆数据<br/><div class="UBBPanel"><div class="UBBTitle"><img src="http://www.sujun.org/images/code.gif" style="margin:0px 2px -3px 0px" alt="程序代码"/> 程序代码</div><div class="UBBContent"><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//连接成功,进行发送数据<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;var&nbsp;byteArray:ByteArray&nbsp;=&nbsp;new&nbsp;ByteArray();<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;//登陆消息<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;byteArray.writeShort(LOGIN);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;byteArray.writeUTF(userName);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;socket.writeShort(byteArray.length);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;socket.writeBytes(byteArray);<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;socket.flush();<br/></div></div><br/>接下来是java端对应的接受数据<br/><div class="UBBPanel"><div class="UBBTitle"><img src="http://www.sujun.org/images/code.gif" style="margin:0px 2px -3px 0px" alt="程序代码"/> 程序代码</div><div class="UBBContent"><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//读出开头长度的short（2个字节）<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;short&nbsp;len&nbsp;=&nbsp;input.readShort();<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;//读出len之后，接着是读取short类型的cmd（2个字节）<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;short&nbsp;cmd&nbsp;=&nbsp;input.readShort();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//读取用户名<br/>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;String&nbsp;userName&nbsp;=&nbsp;input.readUTF();<br/></div></div><br/>其他具体的就不说了，看例子。当然还是会有很多其他的问题，例如怎么做整体的网络通讯框架，如何提高开发效率和性能，等等很多问题。不过这些都是可以一一解决的，希望大家可以深入了解，一起进步<br/><br/>最后，是下载整个例子的客户端和服务端的源码<br/><img src="http://www.sujun.org/images/download.gif" alt="下载文件" style="margin:0px 2px -4px 0px"/> <a href="http://www.sujun.org/attachments/month_1007/d2010725161553.rar" target="_blank">点击下载此文件</a><br/><br/>ppt文件(ppt很简陋，主要的东西，都是在demo了，研究代码就可以啦:)<br/><img src="http://www.sujun.org/images/download.gif" alt="下载文件" style="margin:0px 2px -4px 0px"/> <a href="http://www.sujun.org/attachments/month_1007/p2010725163844.rar" target="_blank">点击下载此文件</a><br/>]]></description>
		</item>
		
			<item>
			<link>http://www.sujun.org/default.asp?id=50</link>
			<title><![CDATA[GuiBuilder拖放组件问题]]></title>
			<author>sujun10@21cn.com(弃天笑)</author>
			<category><![CDATA[AsWing]]></category>
			<pubDate>Thu,03 Jun 2010 11:18:11 +0800</pubDate>
			<guid>http://www.sujun.org/default.asp?id=50</guid>	
		<description><![CDATA[由于受到以前用GuiBuilder的影响，那时用的时候是新建一个内容之后，添加组件之后可以直接拖动的。<br/>现在装了之后也受了这个影响，结果发现完全拖不动。<br/><br/>在电脑里胡乱搞了一阵，才想起。容器有个布局的设计。（这里是以JPanel为容器）<br/><br/>现在GuiBuilder默认是BorderLayout<br/><img src="http://www.sujun.org/attachments/month_1006/0201063111852.jpg" border="0" alt=""/><br/>所以，把布局修改为EmptyLayout就可以自由拖动组件啦<br/><br/>]]></description>
		</item>
		
</channel>
</rss>
