领导力大挑战
在实施Scrum项目的过程中,Scrum Master的角色是相当关键的,因为他是团队的推动者。本文围绕什么是仆人式领导、仆人式领导的起源、如何将领导力传达给团队、Scrum Master作为仆人式领导者的角色展开叙述,同时重点阐述仆人式领导者应有的基本内外特征。
该内容已经被标记书签!
标记书签错误,请重试!
作者 Werner Schuster 译者 张龙 发布于 2008年2月26日
JRuby可以使用Java的GUI库,因而诞生了很多访问JRuby GUI APIs的方式。Glimmer就是其中一个使用了SWT工具集的后起之秀。
我们采访了Glimmer的创建者Andy Maleh,以此来了解该项目及其未来发展趋势。Andy这样论述Glimmer背后的设计原则说:
Glimmer起初的目标是通过一个健壮的平台、独立的UI技术来简化使用Ruby开发桌面应用的过程。Eclipse SWT正好符合上述要求,因此在对Ruby的JRuby实现过程中它得到了重用。Glimmer的API设计遵循以下原则:
- 简明而不重复
- 以最小的代价去完成任务
- 规则优于配置
- 对SWT开发者友好
此外,API的设计充分利用了Ruby的每个语言技术优势来简化桌面应用开发。构建式语法就是上述技术之一,开发者利用该技术构建桌面应用的界面就像使用HTML来构建web界面一样。这是通过编写与界面相匹配的代码来实现的。
然而,Glimmer的目标超出了这个范畴。例如,Glimmer拥有内建的数据绑定支持以及可定制的默认设置。
Glimmer不仅在语法上求简,在架构上也是。它很容易扩展,而且无须开发者对要增加的关键字硬编码。这实际上也是为什么Glimmer能够支持第三方小部件的原因。
JFace是构建在基本的SWT部件之上的一套组件,Glimmer也一样:
Glimmer现在与JFace协同工作。事实上,只要有构造方法,它就可以支持任何SWT/JFace组件的定制。
Glimmer还可以用来构建如视图和编辑器这样的RCP UI组件。在我刚着手开发Glimmer的数据绑定支持时,我确实曾考虑过重用JFace的数据绑定框架。然而,最新的API需要调用静态类型的方法,这与Ruby的动态特性背道而驰,因此在Ruby中从头开始开发数据绑定支持可能会更简单。
查看Glimmer的数据绑定方式 来了解更多。
GUI库非常重要的一个方面是组件布局,Glimmer当然也没有忽视这一点:
Glimmer对组合部件如Shell,Composite和Group有非常棒的默认布局支持。例如在声明一个Composite时,常用的GridLayout就会作为其默认布局。当然也可以根据需要改变该默认的布局。
当被问及Glimmer的现有特性及未来计划时,Andy说:
Glimmer现在支持:
- 以合适的默认值对SWT和JFace组件进行渲染,这包括Shell、Composite、Group、Text、Button、Spinner以及Label
- Text、Spinner、Check-box Button、Radio Button和Table的数据绑定
- 对于新的关键字通过编写命令处理器来扩充语法的能力
在不久的将来,Glimmer将对其他部件提供数据绑定支持,例如:Tree、Combo和List,同时还会对SWT和JFace中其他的部件提供默认值。
未来计划包括:
- 探索简化RCP开发的方案
- 当SWT提供对Ajax的支持时,增加拥有Ajax组件的Rails支持
Glimmer被提议将其作为Eclipse项目。Andy解释了背后的原因:
创建Eclipse项目有几个动因:查看英文原文: Glimmer - using JRuby and SWT for Eclipse RCP apps
- 通过Eclipse社区的帮助提高Glimmer的健壮性和可靠性
- 从经验丰富的Eclipse开发者那里获得反馈
- 提升知名度,获取更广泛的支持
在简化使用Ruby进行Eclipse开发上,GUI DSL是一个好的开始,但仅仅是冰山一角。未来的计划确定会包括探索如何简化RCP的开发,使用JRuby脚本来创建Eclipse插件也可能会被列入计划。
我尚且还没有仔细思考目前插件开发中存在的问题,但有两个地方可能会从Ruby的表达式语法中获益,那就是扩展点定义及插件的配置和集成。
译者 张龙 热衷于编程,乐于分享,对新技术有强烈的探索欲,对Java轻量级框架有一定研究。
在实施Scrum项目的过程中,Scrum Master的角色是相当关键的,因为他是团队的推动者。本文围绕什么是仆人式领导、仆人式领导的起源、如何将领导力传达给团队、Scrum Master作为仆人式领导者的角色展开叙述,同时重点阐述仆人式领导者应有的基本内外特征。
论道WP第三篇专栏,以应用程序栏的使用为中心,包括了软键盘带来的问题、应用程序栏介绍、如何绑定应用程序栏的属性等几个方面的具体话题,为开发者顺利使用应用程序栏开发提供了具体指导。
在多线程并发编程中Synchronized一直是元老级角色,很多人都会称呼它为重量级锁,但是随着Java SE1.6对Synchronized进行了各种优化之后,有些情况下它并不那么重了,本文详细介绍了Java SE1.6中对于锁的性能优化,以及锁的存储结构及升级过程。
本次分享将首先介绍现代富文本编辑器的组成和实现,然后结合UEditor的开发过程,与参会者分享UEditor在设计和实现的过程中,所涉及到的核心功能的细节实现。
本次演讲视频录制于百度技术沙龙。
我们所开发的应用程序大多都需要提供一个图形用户界面(GUI)。关于GUI应用的架构设计,已经有了Form & Control、MVC,、MVP、 Passive View等多种模式。模式可以帮助我们建立优雅的架构,但前提是弄清楚模式的应用场景。弄清楚GUI应用面临的设计上的问题,有助于我们正确的挑选设计方案。
MongoDB是一种非常易用的NoSQL方案,Brian C. Dilley在这篇文章里介绍了MongoDB的优劣势,并介绍了MJORM项目。MJORM用于MongoDB,是一个没有注解的Java ORM库。
随着网络基础设施的逐步成熟,从RPC进化到Web Service,并在业界开始普遍推行SOA,再到后来的RESTful平台以及云计算中的PaaS与SaaS概念的推广,分布式架构在企业应用中开始呈现出不同的风貌,然而殊途同归,这些分布式架构的目标仍然是希望回到建造巴别塔的时代,系统之间的交流不再为不同语言与平台的隔阂而产生障碍。
没有回复
关注此讨论 回复