领导力大挑战
在实施Scrum项目的过程中,Scrum Master的角色是相当关键的,因为他是团队的推动者。本文围绕什么是仆人式领导、仆人式领导的起源、如何将领导力传达给团队、Scrum Master作为仆人式领导者的角色展开叙述,同时重点阐述仆人式领导者应有的基本内外特征。
该内容已经被标记书签!
标记书签错误,请重试!
作者 Alex Blewitt 译者 侯伯薇 发布于 2010年10月23日
上周OSGi社区大会在伦敦召开,它是和JAX伦敦大会一起举办的。 会上演讲的内容涉及到的范围非常广泛,从Java EE的迁移和云计算,到嵌入式设备和Android都有涉及。
OSGi上的企业级Java应用
最近几年以来,人们越来越多地在服务器上使用OSGi;OSGi不仅被用于实现大多数Java EE应用程序,并且它还深入到应用程序的模型中,从而可以直接在OSGi运行时中运行。 上面的情况来源于企业规范(Enterprise Specification)的发布,它实现了一些通用的Java EE服务与OSGi服务(JTA、JPA、JNDI等等)之间的映射。 这在平台提供商之间形成了共通性,有了Apache Aries和Eclipse Gemini(为Eclipse Virgo所用,也就是之前的Spring DM Server),我们就可以为那些正在开发中的Java EE应用程序提供迁移的方法。 大量教程和演讲的目标都是要把这些内容告诉听众,像Ian Robinson的 Apache Aries 以及Glyn Normington的 Ecipse Virgo更新。
关于向OSGi运行时迁移,有很多真实的故事,它也为想要迁移的人们提供了一些建议。 首先SAP的Katya Todorova讨论了从NetWeaver平台到OSGi上的迁移。 最初的方法是试图将所有程序都进行封装,并从高级别上隐藏OSGi,结果这被证明是无法工作的,很大程度上是因为他们试图把应用程序工作的方式转换为组织OSGi的方式。 第二项尝试与上述相比显得更成功一些;它如愿使用了OSGi,然后提供了OSGi服务来与组件交互。 (Peter Kriens说,他长久持有的信念就是OSGi的 μService是规范中最重要的部分,比大多数人所关注的模块性更加重要。)
Gerd Kachel讨论了如何将应用程序从JBoss迁移到OSGi上。 他发现,架构良好的项目(拥有多个组件)通常比“大泥团”式的组件更易于迁移到OSGi上,因为对模块进行切分的工作已经完成了。 然而,一旦你迁移到OSGi,那么这种迁移就会在编译时和运行时都会执行。 在Gerd的案例中,他的应用程序已经使用MBean服务进行了隔离,这就可以让它本身实现对OSGi服务的简单映射,使用特性作为服务属性,使用方法作为服务接口上的方法,并使用依赖关系作为相关联的服务。 Katya和Gerd都对他们迁移到OSGi的经验作了总结,如下:
另一主题
这次大会的另一个主题是关于嵌入式和微型设备的。 好几个演讲都关注于OSGi在工业或者嵌入式应用程序中的使用,像Bernhard Dorminger的在工业化应用程序中使用OSGi的经验、Dimitar Valtchev的 针对家庭自动化系统的OSGi,以及Takefumi Yamazaki的 基于OSGi的i-House试验等。 它们都使用了更小的嵌入式系统,像ProSyst's mBS运行时。
在移动领域也有一些讨论,如Andy Piper的OSGi和Android以及Andre Bottaro的OSGi ME。 这些演讲也关注弱电设备,但更多地是关注于移动领域。 Apache Harmony项目的模块化特性引出了进一步的讨论,其中非正式地建议要拥有大量比J2SE-1.5更小型的profile,其中我们可以用更新的运行时(像java.beans)中的包来装饰更少的profile(像Foundation-1.0)。 由于OSGi意味着不会从java.*命名空间中引入包,所以使用Import-Package做到这一点并不容易,但是我们可以使用更新的OSGi 4.3 Require-Capability这个头声明来做到。
基调和更新
Jim Colson发表了漫长曲折的道路演讲,其中讲述了OSGi的发展历史,从1999年JSR 8的开始,经过在Eclipse 3.0中的采用,直到当前在企业中应用的情况。 同时,在其中还回顾了在早期Eclipse和OSGi一起发展的事情,它显示出在过去的五年中对OSGi的采用有了多大的进展。 现在,每个Java EE的厂商都让他们的运行时基于OSGi(除了JBoss,他们正在编写自己的OSGi运行时)。
Jim还邀请了Apache Harmony项目中的Tim Ellison来说明当前的状态。 现在他们已经完成了Java 5 API的99%以及Java 6 API的96%的改造工作,Java运行时已经能够运行大多数应用程序,包括基于Eclipse的RCP应用程序和web服务器。 更重要的是,和all-in-one Oracle JDK不同,Harmony xDK的类库和VM最小可以达到10Mb。 它们被封装为多个组,名字分别是:Harmony Select、Harmony Core、Harmony More和Harmony Out。 只有Harmony Out中包含了所有的UI代码(既便如此对于SWT的使用也是不够的),其中还有不断增长的依赖关系。
James Governor发表了一场充满激情的演讲,题目是OSGi的显著之处,(其中的主要内容都在他的博客Java the Unipolar Moment中有反映),同时Peter Kriens还发表了关于OSGi的将来的演讲,其中涉及到在之前的bundle.update中所提出的观点。
稍后我们会陆续发布特定演讲更进一步的信息。
查看英文原文:OSGi Community Event
译者 侯伯薇 是InfoQ中文站架构社区编辑,有多年对日和国内项目开发经验,目前关注企业中技术与实际业务之间的融合和协作。
在实施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概念的推广,分布式架构在企业应用中开始呈现出不同的风貌,然而殊途同归,这些分布式架构的目标仍然是希望回到建造巴别塔的时代,系统之间的交流不再为不同语言与平台的隔阂而产生障碍。
没有回复
关注此讨论 回复