<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>sban blog</title>
	<atom:link href="http://blog.sban.com.cn/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.sban.com.cn</link>
	<description>focusing on flex/flash actionscript</description>
	<pubDate>Tue, 04 Nov 2008 23:28:05 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.2</generator>
	<language>en</language>
			<item>
		<title>思考：一个高效率的互联网开发团队</title>
		<link>http://blog.sban.com.cn/2008/10/29/one-powerfull-internet-team.html</link>
		<comments>http://blog.sban.com.cn/2008/10/29/one-powerfull-internet-team.html#comments</comments>
		<pubDate>Wed, 29 Oct 2008 13:40:30 +0000</pubDate>
		<dc:creator>sban</dc:creator>
		
		<category><![CDATA[technique]]></category>

		<guid isPermaLink="false">http://blog.sban.com.cn/?p=217</guid>
		<description><![CDATA[本文仅涉及互联网开发团队
策划部
策划部不应该由技术人员组成，不应该单由专业策划人员组成。策划大多都在模仿，少有的创意也与产品背道而驰。并不是点子越奇越好，要看对产品对不对路子。
除了专业的策划人员，还需要有相当一部分专家。究竟是什么专家，要看要开发哪个领域的产品，譬如说，开发教育类产品，就要找教育专家。策划案最初不是，也不应该从专业的策划人员嘴里出来，而应该从专家口里出来。
既然策划案最初是从专家哪里获得的，那么为什么还需要专业的策划人员？因为专家只对本领域内的事情熟悉，他们不懂社会心理学，不懂网络营销学，不懂SNS，不懂Web3.0。与之相反，专业的策划人员必须对这些知识非常熟悉，不然何其谓专业。
专业策划人员为什么最好不是技术人员？在互联网公司里，策划人员大多数时候总爱狗拿耗子，他们天天与技术打交道，或者本身就是技术出身，所以总是为技术人员把许多事情都做主了。这是不对的。
专家畅所欲言，依自己的语言和方式把想要做的产品表达出来，他们决定了产品开发的具体细节与方向，专业的策划人员只是运用所谓的专业策划知识把专家的话包装一下，但不要改变原旨，也不要添加什么。专家的发言权优于专业的策划人员。
策划总监只做两件事：一，在策划开始之前，确定一个总的指导思想。二，整天组织策划人员与专家开会，对偏离指导思想意见的苗头进行及时规避。
策划部的主要工作就是开会，他们没有十分的必要使用电脑与投影仪，他们可以在花园里或者咖啡里开会，对于他们来说，最重要是创意。而优秀的创意有几点是在会议室中产生的。
需求总是变化的主要原因，是因为一开始就没有一个正确的、总的指导思想。如果有这个指导思想，新的策划总是不会与原策划有冲突，总是在锦上添花。
技术总监
策划部的重要会议，技术总监是需要旁听的。如果策划的创意不靠谱，要进行及时的规避与说明。要避免不必要的规避与打扰。
技术总监首先要确定开发什么产品，然后才能决定在策划部部门里召集什么领域的专家。
一旦需求的v0.01版本确定，技术总监决定，用什么技术开发，比如说用Flex+PHP技术。那么，就要组建一个Flex开发团队，一个精通Flex项目的软件架构师，和几名Flex工程师，以及PHP后台开发人员。
技术总监最好是技术出身，有很强的技术背景。最好可以代替软件架构师，节约成本，沟通环节减少，效率更高。
技术开发部
策划部的工作就是开会，而技术部的工作就是实现。技术部，不要过早的讨论未知的问题，不要有事没事就讨论。讨论的中心在于架构与算法（关键的），至于细节不要过于关心。
一个不错的架构可以在时间与质量之间求得一个最佳平衡点。理想的架构是，每一步的扩展几乎都不需要什么准备，便可以把新功能加进来，并且保证将来不会面临重构的威胁。敏捷与质量同等重要，甚至比后者更重要。显然，一个优秀的软件架构师总是可以给企业节约成本。同时也能提高质量，提高软件的竞争力。
指导思想
做什么事情，都要有一个指导思想。这个指导思想一定要形成文字，形成规范，不要模棱两可，似是而非。
为什么，设计部做出来的东西风格不统一，就是因为美术总监太弱了。美术总监的主要职责就是确定一个产品最适合的美术指导思想，然后监督设计师贯彻实施。
我们要做一个产品，这个产品从外观上要给用户什么感觉，从使用上要给用户什么感受，从效果上要达到什么作用。。。等等这些问题，如果不搞清楚，就很难把一个团队的力量集中起来。
对于一个员工来说，如果还没有抓住中心思想，就不要乱说话，一是浪费会议时间，二是干扰他人。同时也不要胡乱支持别人，因为你不知道他是对是错。举手表决的结果有时也是错误的。
思想是最主要的，思想总要先于行动确立。
与时俱进
从来没有哪个需求是一成不变的。不要指望产品开发完了，就马上可以获得成功，这几乎是不可能的。产品需要不断适应市场的变化，用户需求的变化。起初，没有用户需求，或者用户需求很薄弱，或者用户没有发现自己的需求，怎么办？引导用户，培养用户的需求。企业就像用户的保姆，但要引导用户的口味。
需求总是在不断变化，但万变之中总是有一个宗旨，要把握住。产品的研发必须是敏捷的，起初不必要是完善的，但一定要以最快的速度响应用户需求的变化。成功的产品应该与用户的需求一同成长。
产品若太前端，开发成本高，用户也难于理解与接受。但产品稍微有一点落后，用户便不会选择你。起初不需要多么先进，一直可以走到用户的前面就很棒了。
效率最高的开发团队应该敏捷的，能够快速响应市场变化。其次，体系是可以无限扩展的，不要一开始就把树种在花盆里。
sban 2008/10/30 于北京
原文链接：http://blog.sban.com.cn/2008/10/30/one-powerfull-internet-team.html
Most Commented Posts

关于flex中模块[Module]开发的实现探讨
sban : how to use json with as3corelib in flex
用flash cs3美化flex3之skin开发
让flex3与flash cs3珠联璧合协作开发
在ubuntu7.10下搭建flex开发环境

]]></description>
		<wfw:commentRss>http://blog.sban.com.cn/2008/10/29/one-powerfull-internet-team.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>flash cs4 : using motion-path-editor</title>
		<link>http://blog.sban.com.cn/2008/10/12/flash-cs4-using-motion-path-editor.html</link>
		<comments>http://blog.sban.com.cn/2008/10/12/flash-cs4-using-motion-path-editor.html#comments</comments>
		<pubDate>Sat, 11 Oct 2008 16:31:38 +0000</pubDate>
		<dc:creator>sban</dc:creator>
		
		<category><![CDATA[flash]]></category>

		<category><![CDATA[flash 10]]></category>

		<guid isPermaLink="false">http://blog.sban.com.cn/?p=212</guid>
		<description><![CDATA[本文介绍如何在Flash CS4中使用动画编辑线功能。

在Flash CS4之前，相信大多数设计师与flash程序序与sban一样，均是使用添加引导线的方法制作非直线路径运动动画。在Flash CS4中，引导线可以忘掉了，因为它有一个可以完美替代引导线的新功能，即动画路径编辑线功能。
在Flash CS4中，原来的创建形变动画与创建运行动画分别对应首Create Sharp Tween与Create Classes Motion Tween。另外，Flash CS4新增了一个新的添加动画的菜单：Create Motion Tween，用此菜单创建的动画具有动画编辑线，此线在运行时不会出现，它的意义仅在于帮助设计者设计动画。我们可以编辑动画路径编辑线来控制元件的运行路线。
flash开发、特别是flash与flex的结合开发中，对元件的分文别类，是理所当然的，这明显便于项目的扩展与维护。但是设计师很少应用、甚至看到这一点。在Flash Cs3中，对元件的分类，有点麻烦，需要先创建元件，再创建文件夹，再手工把元件移到它应该移到的文件夹中。而在Flash CS4中，充许在创建元件时直接指定(或创建)它所属的文件夹。I like it.
在这里下载源码：http://blog.sban.com.cn/flex/flashcs4examples/using-motion-path-editor.fla
在这里查看sban录制的该教程的视频：http://www.youtube.com/sban2008
稍后提供如何使用Flash cS4的Motion Editor，即动画编辑面板。
我建了一个flex blog站点，该站点是一个wordpress 多用户博客系统。没有人统一，但国内外绝大多数技术人员的个人博客全是wordpress系统。如果你喜欢flex，想写的什么与别人分享，现在就可以在flexblogs.cn上建立一个帐号。
还有一个件事，我觉得很奇怪，flexblogs.cn这个站点从域名注册到今天不过些许几月时间，Google PR却已经升到5！如果你有个人博客，不妨把个人的文章转载过来，相信你的站点的Google PR值一定升得很快。另外庆祝sban blog的Google PR升到4。
sban 2008/10/12 于北京
Most Commented Posts

关于flex中模块[Module]开发的实现探讨
sban : how to use json with as3corelib in flex
用flash cs3美化flex3之skin开发
让flex3与flash cs3珠联璧合协作开发
在ubuntu7.10下搭建flex开发环境

]]></description>
		<wfw:commentRss>http://blog.sban.com.cn/2008/10/12/flash-cs4-using-motion-path-editor.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>flex3 : use DragManager in flex3 for Widget Management</title>
		<link>http://blog.sban.com.cn/2008/09/27/flex3-use-dragmanager-in-flex3-for-widget-management.html</link>
		<comments>http://blog.sban.com.cn/2008/09/27/flex3-use-dragmanager-in-flex3-for-widget-management.html#comments</comments>
		<pubDate>Sat, 27 Sep 2008 15:19:53 +0000</pubDate>
		<dc:creator>sban</dc:creator>
		
		<category><![CDATA[flex]]></category>

		<category><![CDATA[flex3]]></category>

		<guid isPermaLink="false">http://blog.sban.com.cn/?p=191</guid>
		<description><![CDATA[在flex3中实现拖放有两种三种方法：
一、使用dragEnabled
二、使用startDrag与stopDrag
三、使用DragManager。

第一种，这是局部的，对于部分flex组件如Tree等，可以直接设置其dragEnabled属性为true。
第二种，也很简单，且比较通用。主要代码如下：
private function initializeHandler(event : FlexEvent) : void
{
	addEventListener(MouseEvent.MOUSE_DOWN, startDragHandler);
}
private function startDragHandler(event : MouseEvent) : void
{
	addEventListener(MouseEvent.MOUSE_UP, stopDragHandler);
	this.startDrag();
}
private function stopDragHandler(event : MouseEvent) : void
{
	removeEventListener(MouseEvent.MOUSE_UP, stopDragHandler);
	this.stopDrag();
}
第三种，使用DragManager。这是实现拖动操作最方便的方法。使用过wordpress的人朋友，都了解它的widgets编辑功能，着实不错，在flex里也可以模仿它实现。WidgetBase只是作为一个示例，并未实现任何逻辑。
效果页面：http://blog.sban.com.cn/flex/WidgetManager/WidgetManageExample.html
源码在线：http://blog.sban.com.cn/flex/WidgetManager/srcview/index.html
源码下载：http://blog.sban.com.cn/flex/WidgetManager/srcview/HistoryManagment.zip
示例说明：
1、上面有三个dragEnabled Label，这三个Label是用本文第二种方法实现的一个DragableLabel自定义组件。三个Label因为其布局格式不同，拖动效果也不同。
2、Label下面，便是widget管理。这是一个培训示例。用户可以直接从左边框里拖动widget到右边框里，左边为未激活的widget，右边为已选用的，并且右边的widget通过拖动可以上下排序。
源码解读：
1、首先程序自定义了一个IWidget接口，不明白接口是什么的趁早回家卖红薯。因为DragManager的拖动对象是IUIComponent，所以继承于它。
function get isFolded() : Boolean;
		function get isActivated() : Boolean;
		function set isActivated(value : Boolean) : void;
		function fold() : void;
		function unfold() : void;
2、WidgetBase实现IWidget，做为Widget的基类。在实际项目中，Widget是各不相同的，继承于WidgetBase，在子类中实现各自的特性。WidgetBase的实现也很简单。
3、WidgetManageExample该文件不再罗唆，请自行查看源码。
本示例只为培训演示所用，旨在帮助学员理解DragManager的使用。在学习本示例之前，请先了解关于State的知识。示例代码，不适合直接商用。如果用于项目，须再一些修改。
sban 2008/09/27 于北京
原文：http://blog.sban.com.cn/2008/09/27/flex3-use-dragmanager-in-flex3-for-widget-management.html
Related Posts

flex3 : some flex3 basic tutorials 
flex3 : upgrading flex [...]]]></description>
		<wfw:commentRss>http://blog.sban.com.cn/2008/09/27/flex3-use-dragmanager-in-flex3-for-widget-management.html/feed</wfw:commentRss>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.500 seconds -->
<!-- Cached page served by WP-Super-Cache -->
