思想精髓集萃
tiangej
这个作者很懒,什么都没留下…
展开
-
局部变量类成员化的设计思路:减少变量频繁构造,析构的时间成本和内存成本
>>前提假设Class A{ public static function funcA():void { var m:int ; var n:int ; ...... }} 假设上述函数【funcA】用于为Grid中原创 2015-12-17 16:23:14 · 536 阅读 · 0 评论 -
矢量图本质是渲染器+矢量数据;不存在于“位图”等同的“矢量图”实体
Actionscript中,提供了Load类,可以加载并显示位图图像(BitmapData)。位图在缩放过程中会损失精度,造成锯齿、马赛克之类的失真现象。矢量图没有位图上述的缺点。那么是不是加载“矢量图”就行了? 呈现到我们眼中的“矢量图”,其本质是渲染器渲染了矢量数据,并不存在与“位图”等同的“矢量图”实体。如果说它有实体的话,也只是指代矢量数据。而单独的矢量数据是无法独自渲染到原创 2014-02-08 16:14:42 · 1643 阅读 · 0 评论 -
原则: UI组件嵌套结构下,自组件尺寸由父组件计算而得,是由外到内的计算过程
特殊情况:1。文本子组件(使用TextField) 有些情况下,需要算出文本内容所占的真实宽高。利用TextField的AutoSize属性。 TextField的父组件是无法完成该功能的。只能向自组件(TextField)索取。这时候,标题所主张的原则就要因地制宜的灵活变动了,变为:由内而外。原创 2014-02-08 14:47:52 · 702 阅读 · 0 评论 -
UI组件:暴露最小限度接口,在组件基类中实装共性属性
如题!原创 2014-01-29 16:42:59 · 609 阅读 · 0 评论 -
UI组件设计根本出发点
1. 什么人使用UI组件 Web应用技术开发者(非艺术设计师) 2. 他们如何使用UI组件 由于缺乏相应的设计技能,99%的情况下,他们被分派专注实现业务逻辑。与外观相关的,他们一般会涉及到: 设置宽高,调整位置(xy坐标),设置有效无效属性。 * 遗憾的是,在企业WebApp领域,绝大多数的客户只注重功能设计,很少投入到UI/UE设计(艺原创 2014-01-29 15:08:14 · 1209 阅读 · 0 评论 -
UI组件应该是原子性设计
UI设计无穷尽。举例:通过一种文本标签组件囊括所有可能的功能(满足设计),是不切实际的。 UI组件具有原子属性,具有不同外观属性和功能的UI组件的组合,会满足绝大多数的要求。相反的,如果UI组件不具备原子属性,则意味着带有某些“特性”,只能满足特定的一些需求。 我们所构建的UI组件体系,是具备“原子属性”的。原创 2014-01-29 09:59:32 · 1164 阅读 · 0 评论 -
UI组件设计思想: 提供基本功能,有特殊需求时自定义扩展
如题!这是避免过剩设计的准则。例如文本标签组件,设计师对文字、文字组合、排版的创意无限。自然不可能预先提供与之匹配的UI组件。 设计先行,代码(UI组件)随后实现之。有设计师积极参与的WebApp中,UI组件的编写顺序应该如此。原创 2014-01-28 15:35:19 · 676 阅读 · 0 评论 -
UI组件功能设计思想: 不要追求功能的大而全;轻型的、简单清晰的架构和易扩展才是评价优劣的标准
Flex提供的UI组件是典型的负面教材。它的标签使用了TLF框架,沉重臃肿。 图文混排一直是Actionsc(Flash)的弱项。TLF是为复杂的图文排版开发出的框架,仅实现了HTML排版功能的一部分。 Flex标签用在哪里?复杂的版面设计领域吗?显然不是(用Flex开发排版设计,无论成果物的体积(WebApp或AIR)还是运行速度都和本地应用相差太多)。Flex的主战原创 2014-01-28 11:45:06 · 1604 阅读 · 0 评论 -
UI组件:父子组件渲染的同步、不同步设计
UI组件不可避免的出现嵌套关系,也就是父组件和子组件的关系。UI组件的使用者仅对父组件露出的公开属性进行设定,而不能直接对子组件进行设定。而父组件的某些属性改变了组件的整体状态,不单是父组件需要对状态进行改变(通常是外观、皮肤的变化),子组件也要相应作出反应。子组件是如何感知父组件属性的变化,从而改变状态的呢? >>触发外观渲染的因素原创 2014-01-09 14:16:32 · 755 阅读 · 0 评论 -
无正文:UI库设计的核心是结构设计 + 消息机制设计
如题。原创 2014-01-09 08:57:45 · 701 阅读 · 0 评论 -
类设计:getter/setter代表的变量原则上设置为protected
>>目的与作用该类的子类能够直接访问改变量,而不是通过getter/setter,提高了运行效率。 >>前提对这种为了提升运行效率而做得优化措施,使用上要严格把关,避免不恰当的使用。 例如: protected var _imageName:String; //图片名称 public function get imag原创 2013-12-24 15:44:13 · 986 阅读 · 0 评论 -
使用Flex mxmlc编译命令选项,减小swc或swf的大小
debug=false 经过充分的测试后,可以通过设置该参数,有效地减小swc或swf的大小。我的例子中能够减小30%左右。原创 2014-01-07 11:27:11 · 1313 阅读 · 0 评论 -
UI组件: 最原始的零件性质的组件不需要有宽高属性,它们由外层容器动态计算获得
如题原创 2014-01-07 11:02:51 · 673 阅读 · 0 评论 -
乐高积木式UI组件体系
如题原创 2014-02-10 17:59:16 · 2203 阅读 · 0 评论 -
UI组件设计:结构中定义全部的流程驱动逻辑;皮肤中完全没有流程驱动逻辑
如题原创 2014-02-10 18:02:31 · 580 阅读 · 0 评论 -
UI组件属性值: 链条式由外而内或反方向的传递
UI组件是嵌套关系(父子关系)。用户直接对最终组件(最外层)设置属性值。这个值将通过包含关系所形成的的链条进行传递,最终到达子组件。链条式传递数据的优点是结构单纯,不花哨,非常容易理解。缺点是链条的每个节点(子组件)都需要定义相同的属性接口,用于承接上下传递的值。从代码上看,似乎不够简洁。采用此方式的注意点: 嵌套关系不能太深,应控制在3层以内。 =============原创 2014-02-11 17:10:35 · 590 阅读 · 0 评论 -
Enable不能和MouseOver、Out等并列作为状态
MouseOver/Out作为状态可以用来控制UI外观的切换,比如按钮颜色。而Enable不能作为【状态】和MouseOver/Out同等定义。因为它们是不同级别的。 举例:按钮在鼠标移入,移出时改变按钮的颜色。点击按钮后,让按钮失效(Enable->Disable)。 代码实现方法:在按钮上监听MouseEvent.ROLLOVER、MouseEvent.RO原创 2015-11-17 17:55:46 · 866 阅读 · 0 评论 -
Chart: 计算X轴标签个数
在图表中,横轴通常表示分类,纵轴表示数值。纵轴的数值标签表示,是需要算法支持的,参见【图表轴刻度的思路,算法: 转载X】,略过。这里说说横轴(X轴)的标签。 用K线图做例子,在一个图中表示的蜡烛线非常多,每根线对应一个时间,这些时间就是X轴上要表示的标签。如果每根线的时间都在X轴表示出来,由于数量太多,就会相互重叠,根本分不清彼此,上面的文字让看不出来。因此就要减少其数量。原创 2015-09-08 13:17:47 · 4325 阅读 · 0 评论 -
99% 的人中枪:过度分析
过度分析,过度设计常常在我们工作中发生。 http://blog.eood.cn/analysis-paralysis转载 2015-08-10 09:05:33 · 525 阅读 · 0 评论 -
事件机制,传递Function,两者相结合,恰到好处
世界是多元的,不同的事物有机地整合在一起,才能达到”自然和谐“的状态。 事件机制是传递信息的有效手段,但不是”唯一的“,也不能说是”最好的“(因为没有所谓”最好的“)。它有其适用的范围,也就是说有些场合用它并不是最合适的。比如DropDown,DateChooser这些有弹出窗体效果的组件。弹出的窗体都是通过stage.addChild(window)这种方式显示的。也就是说只原创 2015-02-17 10:32:33 · 860 阅读 · 0 评论 -
关键词:平行化和矢量化
虽然说的不是UI组件开发,但是不是一回事转载 2014-06-03 09:20:51 · 876 阅读 · 0 评论 -
UI思想:追求快速开发的方法是购买成品组件库(美食都是要花费心思用心去做的)
昨天看了一个台湾美食记录片。主人用心耐心地制作美食:佛跳墙。记者感叹:很费事啊。主人淡然回答:美食都是要花费心思用心去做的。原创 2014-03-24 16:33:41 · 948 阅读 · 0 评论 -
没有绝对的设计原则,应该允许特例。在特例面前,原则不适用。坚持原则,则原则将无法自圆其说
如题。没有“绝对”,只有“相对”。要认识到这一点!原创 2014-04-01 15:47:35 · 844 阅读 · 0 评论 -
UI组件设计:减少冗余代码--类继承关系的考量
以横纵滚动条为例。在类继承关系的设计中,就是如下关系 BaseScroll | |-------------------| HScroll VScroll BaseScroll中将抽象出HScroll/VScroll的共性。有一种设计思路:在BaseSc原创 2014-04-01 10:20:05 · 1518 阅读 · 0 评论 -
类设计要点: 变量/函数的命名要泛化,减少代码”冗余“
类继承的情况下,可能会产生某种“冗余”,举例说明。 //横向滚动条class A{ public var _const_height:int = 20; //固定边长:高度 。。。} //纵向滚动条(继承自A)class B extends A{ public var _const_w原创 2014-03-19 15:51:42 · 1241 阅读 · 0 评论 -
UI组件: 使用命名空间,既保证私密性,又具有“隐秘”的开放性 (圣诞节彩蛋)
UI组件的结构(功能)部分和皮肤是分开的独立对象。皮肤内部不应该定义和功能有关的任何方法。有些情况下皮肤的确需要完成一些功能,所以需要调用结构部分的函数。常规方法是将这些函数定义为Public。Public过于开放。如果不想公开给外部,那么怎么办?使用自定义命名空间。这些自定义命名空间属于UI组件的内部“潜规则”。既具有“隐秘”的开放性,对外又具有私密性(不可见)。原创 2014-03-14 17:57:49 · 792 阅读 · 0 评论 -
UI组件设计: 不完全编程
UI组件直接的使用者是IT工程师。遵循组件使用规范作为开发规则,需要IT工程师严格遵守。比如设置按钮的宽度时,不应该小于零。于是乎,在UI组件设计和开发中,不必要去检查宽度是否小于零(因为使用规则上不允许这么去设置)。于是乎,“不完全编程”出现了。用规则约束使用者,而不是讲规则固化到UI组件代码中。这就是我命名的“不完全编程”。好处在哪里?代码少原创 2014-03-13 16:34:09 · 810 阅读 · 1 评论 -
CSS的滥用:变得难于理解,难于维护
CSS声明式控制UI,形式上简单;编写简单。一旦被滥用,就会出现相反的情形:产生冗余,冗余很难定位和清除,难于理解,动一处而牵扯全局。 CSS只是代码的一种形式,仍然需要浏览器在运行期间先把它转译成逻辑代码,然后动态执行(渲染,绘制)。CSS随着代码的嵌套关系和覆盖关系的增加变得复杂起来。10行CSS你看的很清爽,很清晰,很舒服,但是超过百行CSS估计就开始蒙圈了吧,1000行原创 2014-02-18 09:56:04 · 1011 阅读 · 0 评论 -
UI组件库的建立是设定目标、规划结构、划分职能、权衡利弊、防止过剩设计的过程
如题原创 2013-12-21 18:19:52 · 1025 阅读 · 0 评论 -
WebUI组件的设计目标:不是功能齐全,而是结构合理易于扩展、体积小巧
如题!原创 2013-12-19 13:36:18 · 648 阅读 · 0 评论 -
UI组件分离皮肤的自问自答
必要性: 皮肤就是看见的外观, UI组件根据设计,会呈现出不同的外观。 同样功能的UI组件会有千变万化的外观。 如果不将外观分离出去,UI组件的功能部分将连同外观一起被“复制”成多份儿,产生大量的重复代码,不方便维护。还影响开发效率。 所以,UI组件从结构上必须将外观分离出去。实现的理念(原创 2013-08-19 23:44:02 · 829 阅读 · 0 评论 -
UI组件各个部分的分工
结构:同类型的UI组件可以有不同的结构。皮肤:与结构是配对的。不同的结构需要完全不同的皮肤。皮肤使用基调提供的静态颜色属性。基调:静态定义主体色调。比如背景颜色,字体大小,按钮颜色等。===================================使用UI组件构建应用时,需要设置诸如按钮颜色,字体大小之类的吗?答:不需要,这些属于皮肤定义的范畴。如何通原创 2013-08-26 23:39:08 · 1186 阅读 · 0 评论 -
我拒绝接受的几个最佳编程实践方法
真是这么回事!http://bbs.9ria.com/thread-240423-1-1.html转载 2013-08-12 08:57:57 · 461 阅读 · 0 评论 -
下一代网络:大道至“简”
下一代网络:大道至“简”http://blog.csdn.net/cometwo/article/details/8913671IT界需要全方位的简化。这个道理需要贯彻在实践中。可惜绝大多数人不理解,不认同。转载 2013-05-11 16:25:28 · 501 阅读 · 0 评论 -
学会如何问问题,问个好问题
[对话CTO]ThoughtWorks徐昊:非常不想成为技术管理者http://www.csdn.net/article/2013-04-21/2814977?reload=1======================================================周围很多人不会问问题,问不出好问题。抓不住问题的重点,云里雾里的,问得你一头雾水,他也急原创 2013-05-18 13:03:24 · 1291 阅读 · 0 评论 -
这才是真相:我们需要信仰,我们需要思想导师
千万级并发实现的秘密:内核不是解决方案,而是问题所在!http://www.csdn.net/article/2013-05-16/2815317-the-secret-to-10m-concurrent-connections=====================================================这是一篇思维混乱,不知所云,跳来跳去的吐槽。原创 2013-05-17 18:22:35 · 858 阅读 · 0 评论 -
创造、改变世界的基因
谷歌CEO佩奇Google I/O演讲视频:科技改变世界http://www.ithome.com/html/it/44625.htm================================================================================听听佩奇的演讲,非常有感慨。我们可能也怀揣理想,希望有一天能够改变世界,可惜,现实原创 2013-05-17 17:34:48 · 978 阅读 · 0 评论 -
网络前端UI组件设计思想:去框架化、积木化
网络前端需要体积小巧。所有的框架,包括JQuery都存在冗余(用不上的功能)。你无法对其做减法去除不必要的代码。在轻薄前端为第一目标的前提下,去框架化是必须的。 大家都在说不要重复造车轮,背后一个很大原因是造车轮并不容易,并不是谁都有这个经验和能力。大家掂量一下自己并环顾周围,有多少人能够从零构架UI组件体系?有几个人能够构架适合不同场景需求的灵活的自定义UI组件体系?原创 2013-05-03 23:29:11 · 2479 阅读 · 0 评论 -
程序员派系化带来的短视
国外咱不了解,国内一知半解,观察我的所在的行业,观察我的周围,有些感想。程序员呈现派系化。所谓的派系不是指拉帮结伙,指的是长时间只接触同一类开发语言、同一类的开发环境造所形成的技能分类。我们熟知的微软系(WinForm、WPF等)、所谓开放系(Java等)、其他综合系(Flash系、HTML5系)。虽然上述划分不严谨,不够科学,大致能够表达我的意思。绝大多数原创 2013-05-04 11:09:44 · 1200 阅读 · 1 评论 -
动画的帧频设定和人眼生理特关系中的简单数学
人眼生理特性:视觉暂留( 0.1~0.4秒),小于0.1秒的外观变化对于人眼来说就是连续的动画。如果相邻两帧的变化时间小于0.1秒,那么该帧动画对于人眼来说就是连续的。“相邻两帧的变化时间小于0.1秒”意味着帧频是多少呢?1秒除以0.1秒/帧 = 10。也就是说帧频为10的动画对于人眼来说基本上就是“连续的”。而Flashplayer默认的帧频是24。可以知道在默认帧频原创 2012-12-03 21:48:18 · 3650 阅读 · 0 评论