领导力大挑战
在实施Scrum项目的过程中,Scrum Master的角色是相当关键的,因为他是团队的推动者。本文围绕什么是仆人式领导、仆人式领导的起源、如何将领导力传达给团队、Scrum Master作为仆人式领导者的角色展开叙述,同时重点阐述仆人式领导者应有的基本内外特征。
该内容已经被标记书签!
标记书签错误,请重试!
作者 Jonathan Allen 译者 侯伯薇 发布于 2011年10月28日
假设你在维护上个世纪九十年代的应用程序,它使用了传统的ADO库。重新编译的代码会在所有安装了Windows 7 SP1的计算机上正常运行,但是却会在安装有Windows XP的计算机上神奇地崩溃,而该程序已经在上面运行了快十年。这是很多做维护工作的开发者所面临的问题。
当这个问题最初发生的时候,微软认为它只会对很少开发者产生影响。的确,不会有很多这样的开发者,他们使用最新版本Windows,却要编译的应用程序却使用的是15年前就出现的旧数据访问技术。Evan Basalik继续说到:
我们意识到ADO的一些API使用了与平台相关的数据类型。我这么说指的是,32位版本的API使用LONG,而同样API的64位版本使用的是LONGLONG。这就导致,当64位的应用程序试图使用这些与平台相关的数据类型时,调用程序的数据类型又无法与被调用方法匹配,从而就会产生问题。http://support.microsoft.com/kb/983246讨论了一种情况,其中VBA宏会产生上述的问题。不幸的是,我们大大低估了在Windows 7 SP1中重新编译ADO应用程序的客户数量。更坏的是,我说的是“大大低估”,实际上的意思是“极度低估”了。
当我们意识到这个问题的严重性时,就开始努力解决,希望能够得出更好的解决方案。然而此时,我们的首次尝试显然与理想状况相去甚远,这使得问题进一步恶化,因为可能会把改变后的GUID应用到底层的操作系统中。这时,我们不得不做出痛苦的决定,开始推动http://support.microsoft.com/kb/983246中的做法。是的,我已经意识到会有一些情况,像VBA无法得出有效的解决方案,但是我们认为,和继续应用变更后的GUID相比,那还是比较好的选择。尽管那并不理想,但我们的建议是,或者使用从http://support.microsoft.com/kb/2517589可以获得的向下兼容程序库,或者在Windows 7 RTM中对其进行编译。尽管这无法覆盖所有情况,但可以覆盖了大部分情况,并且是在不进行大规模重新设计架构的情况下我们所能够提供的最佳方案了。
现在,我很高兴地宣布,我们已经得出了更好的解决方案。我们会做以下工作:
- 通过新的类型库文件msado60.tlb为Windows 7 RTM发布6.0类型库。这是针对多个平台发布的。
- 发布新的6.1类型库(其中既包含新的接口,也包含了不建议使用的接口),并把它嵌入到msado15.dll中。
- 把所有2.x版本的类型库回退到Windows 7 RTM中的版本。
新的长期解决方案实际上已经准备就绪了,但是我们会在明年才会发布,因为需要对其进行更广泛的测试。一旦发布,开发者就可以使用6.1类型库来编写64位的VBA应用程序,也可以使用它来编写不需要运行在旧操作系统中的程序。而其他人都会继续使用2.x和6.0的类型库。
查看英文原文:Build Machines, Windows 7, and Classic ADO译者 侯伯薇 是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概念的推广,分布式架构在企业应用中开始呈现出不同的风貌,然而殊途同归,这些分布式架构的目标仍然是希望回到建造巴别塔的时代,系统之间的交流不再为不同语言与平台的隔阂而产生障碍。
没有回复
关注此讨论 回复