面向服务软件开发和设计的三个祈使句

日期:2013-4-19作者:Randall Nagy翻译:蒋红冰来源:TechTarget中国 英文

面向服务软件开发   软件架构   SOAP   REST   BEST   

【TechTarget中国原创】

当企业软件专业人士架构一个面向服务的解决方案时,那么无论是采用基于SOAP、REST还是BEST的方法,本文的这三个原则都要时时考虑着:

  1.没有永远的服务

  第一个原则说的是,没有一项服务技术会持续永久。当前,在这个幸福的充满自动化的时代,每一个与我们新项目的人都这证明了这是真的。谨记,我们创建的服务必须设计于适合多种类型的技术变更,这意味着,要从一开始就设计灵活的外观和可配置的适配器,而不是把它们做为事后想法,事后再添加上。

  2.服务会产生混乱

  接下来的这个原则是说规则和业务协议变更,这就是说任何一个服务,任何时间,任何地点都可能会产生混乱,这就要求它适应新形式、新版本和新的数据类型。

  3.服务存在于软件保护伞之外

  最后,软件架构师需求了解,与所有个人的、独立的、模块化的代码关系不大。事实上,在一个经验丰富的主题专家(SME)眼中,一个业务服务要理解为一个协作流程,并不是运行在服务器某个地方的一部分。服务是关于满足业务需求的,不是技术需求。良好的业务服务涉及到工作流,且一旦工作流介入,那么相互协作的服务组件就是关键。

  当开发可行的、适应性强的企业解决方案里,这些事实是面向服务开发领域的主题专家们要了解,要感激的。把这三条铭记于心,在开发适应性强的终端和灵活的数据交换机制,既期待,又拥抱所有面向服务架构在生命周期中不可避免的变化时,软件架构师和系统开发人员将会获得更大的成功。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

评论
查看更多评论

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

Ajax 与RIA Web服务>更多

  • 四条原则直通真正敏捷境界

    随着时间的推移,软件团队开发他们自己的敏捷变体。这里告诉你如何使你的实践与敏捷精神相一致。

  • 从Web开发到交付:2015必备深度前端知识

    过去这几十年,互联网已被证明是影响技术世界的最复杂最难以预测的系统之一。软件往往是基于部署在本地硬件(或至少本地网络)上的假设来进行设计的。

  • 移动浏览器到云:JavaScript地位正在扩张

    不难发现人们非常喜欢在前端开发中使用JavaScript。但是,令我们惊讶的是后端开发也如此青睐JavaScript,促进了基于云和基于数据中心的托管应用的发展。

  • 移动HTML5挑战何在?

    当HTML5出现时,许多开发者和应用架构师视之为创建平台独立应用、简化你的设备支持以及当新的移动设备OS版本发布时减少应用相关问题的机会。

相关推荐

  • 把软件架构演进体现在栈上

    曾几何时,企业架构师要为了得到承认和支持而抗争,但这种时候正在过去。大多数企业现在已经意识到实现业务流程中敏捷性和效率需要业务目标、人力资源以及信息技术的结合。

  • 公共API外包管理是否值得考虑?

    公共API外包管理是指聘请一个专家小组来解决可扩展性问题,同时也提出几套可替代的方案。

  • 最适合大数据应用的是SOA还是REST?

    跟所有的企业数据一样,大数据唯有通过应用投射给用户才有用。对于设计或重新设计大数据应用的架构师来说,一个关键问题是究竟是用SOA还是RESTful的API?

  • 弹性资源对传统的REST架构构成挑战了吗?

    组件化应用程序需要机制来将组件传递到下一个工作地。从一开始,人们对连接流程及其实施就有不同的观点。可以证明,SOA阵营是由RPC和SOAP的软件接口发展而形成的。

技术手册>更多

  • 敏捷扩展:大型网站项目最佳实践

    其实从某种意义上讲,敏捷软件开发是自身成功的一个牺牲品。随着项目的进行,焦点一直集中在需求定义上,一边编写一测试,一边交付工作软件的各个部分,所以可以看出敏捷是多么好,以致于许多组织都在试图扩展它的使用,而不仅只是局限在单一的团队项目中。但怎样才能把敏捷方法从小项目转移到大型项目中呢?

  • 开源关键技术选型指南

    随着开源技术越来越成熟,一个稍有开发经验的人通过学习就可以用开源的产品和技术构建一套可用的系统。对于从事软件开发的人员,尤其是对Java或动态语言相关领域的人来说,“开源”也许是他们最喜爱的单词。但是,很多时候我们需要的不仅仅是一个可用的系统,而是希望这个系统开发更简易、性能更高和扩展性更好等。这确实是一个令人头痛的问题。本指南很多地方都是点到为止,要深入了解相关信息的读者请借助参考资料、网站等自行挖掘。

  • 移动中间件服务技术手册

    移动中间件是连接不同的移动应用,程序和系统的一种软件。移动中间件实际上隐藏了多种复杂性:在移动环境下工作的复杂性,允许设备对设备的流畅交互的复杂性,移动与计算机集成的复杂性和移动应用开发的复杂性。和其它的中间件一样,移动中间件也是通过提供信息服务来使不同的应用之间进行通话的一个典型。随着多样化的平台和设备进入到移动空间,移到中间件已经变得越越重要。随之而来的结果就是,众多移动中间件厂商纷纷提供开发服务,以解决快速增长的移动硬件与移动软件市场。本技术手册将介绍移动开发对于面向服务架构的影响,以及未来移动中间件可以实现哪些功能,在这个过程中我们有哪些经验和技巧可以参照。

  • Ajax实用技巧完全指南

    Ajax结合了java技术、xml以及javascript等编程技术,是指一种创建交互式网页应用的网页开发技术。ajax源自描述从基于网页的web应用到基于数据的应用的转换。就像新的编程语言或模型伴随着更多的痛苦,开发人员需要学习新的技巧及如何最好利用这些新技术。本技术手册为读者提供了一些很实用的小技巧,如果需要深入学习ajax,读者可以借助其他参考资源。

TechTarget

最新资源
  • 安全
  • 存储
  • CIO
  • 数据库
  • 服务器
  • 云计算