“分而治之”是解决复杂问题的有效方式。
面对业务功能复杂的企业级软件,我们会寻找各种方式和标准进行拆分,其目的无非是降低每一部分的复杂性并提高软件重用的便利性。但是,到目前为止,取得的效果并不理想。应用程序依然是庞然大物,难以进行维护和管理,而在重用方面,最常见的方式恐怕还是复制和粘贴。各方面似乎都不尽如人意。
在本书中,作者提供了解决这类问题的另一种方案,那就是模块化。借助模块化技术,我们可以提升软件的架构水平,填补架构师和开发人员在相互理解上的鸿沟,同时又能提升软件的可重用性,控制软件的复杂性。目前,在 Java 平台中,OSGi 是事实上的模块化标准。Java 原生的模块化实现 Jigsaw 已经从 Java SE 7 延期至 Java SE 8,最近又延期至 Java SE 9,而且 Jigsaw 能否得到其他 JDK 厂商的支持还有待观察。换句话说,Java 平台上的模块化技术还在不断发展中,但是本书介绍的模式和理念却具有通用性,虽然在书名上你可以看到 OSGi 的字眼,但是作者在介绍这些模式的时候,却在有意地与特定技术保持距离。只要你对系统进 行了良好的设计和拆分,不管使用什么模块化技术,甚至没有模块化运行框架,你都会从中受益。
OSGi 技术在嵌入式领域取得了很大的成功,目前它越来越多地用于企业级应用服务器上,但是在企业级软件开发领域,它的使用并不广泛。这是因为 Java EE 和 OSGi 在诞生之初就是不同应用领域的两种技术,所以二者在理念上以及使用方式上都会有很多不兼容或冲突的地方。但是,这种现象正在发生着变化,随着 OSGi 企业级规范的不断完善,以及像 Apache Aries 和 Eclipse Gemini 这些参考实现的成熟,相信 Java EE 和 OSGi之间的壁垒会逐渐打破,模块化在企业级软件开发中的发展值得期待。在本书中,有众多设计模块化软件的最佳实践,相信随着模块化技术的不断发展,它会越来越有价值。
在翻译本书的过程中,作者深厚的技术功底和广泛的知识涉猎都令我佩服,尤其是借此机会,更认识到 Bob 大叔那几本名著的价值。这些书值得我们一遍遍地仔细研读,在此推荐给大家。
感谢侯伯薇向我介绍了这本书,并将我引荐给出版社。在本书的翻译过程中,编辑关敏给予了很多的帮助和指导,她的热心和责任心让我很受感染,在此向她表示感谢。
在此,感谢我的家人,没有你们的支持,我很难把这项任务坚持完成,尤其是我的爱人和宝贝儿子。很抱歉在最近几个月中,没有抽出太多的时间陪伴你们。
在翻译的过程中,我尽可能做到准确,但肯定还会有纰漏之处,恳请读者朋友们批评指正,您可以通过电子邮件:levinzhang1981@gmail.com 或新浪微博:@张卫滨 1895联系到我。希望这本书对您有用!
相关推荐
《Java应用架构设计 模块化模式与OSGi》PDF版本下载
Java应用架构设计模块化模式与OSGi
Java应用架构设计 模块化模式与OSGi
Java应用架构设计、 如何进行模块化模式、与OSGi有什么联系?
《Java应用架构设计-模块化模式与OSGi》书中源码,美国 Kirk著,张卫滨译 源码本来放在google,不便访问,现上传于CSDN,方便有需要的人士传阅
app+java+源码 《Java应用架构设计》源代码示例
Java应用架构设计 模块化模式与OSGi,同时也包含了ArcGISAPIforJavascript开发教程的开发教程
Java应用架构设计:模块化模式与OSGi 英文版 中文版介绍: 全球资深Java技术专家的力作,系统、全面地讲解如何将模块化设计思想引入开发中,涵盖18个有助于实现模块化软件架构的模式 中文目录: 第一部分 模块化...
Java应用架构设计:模块化模式与OSGi 英文版 中文版介绍: 全球资深Java技术专家的力作,系统、全面地讲解如何将模块化设计思想引入开发中,涵盖18个有助于实现模块化软件架构的模式 中文目录: 第一部分 模块化的...
是一本适合新接触OSGI开发学习的一本很好的书,本书介绍了Equinox, Spring-DM和Felix这三个常用的OSGi容器的使用、...本书适合希望了解、深入掌握OSGi,以及编写模块化、动态化Java应用的Java架构师和开发人员阅读。
《分布式Java应用:基础与实践》:8年技术生涯,让自已感触最深的是视野以及专业的重妻。 在面临问题时,开阔的...个人关注的方向为模块化、动态化Java系统,以及高性能、高可用、低成本的大型分布式Java系统的构建。
为希望实现模块化、动态化Java系统的架构师和开发工程师提供OSGi 入门知识,同时也为希望深入掌握OSGi的架构师、开发工程师提供OSGi 知识的深入讲解。本书从OSGi 的简介开始,到OSGi 框架的使用,再到OSGi规范的掌握...
关于java程序员发展需要学习的... 模块化 工程架构能力 开发语言 运维与监控 监控 系统监控 日志监控 流量监控 接口监控 数据库监控 业务监控 性能监控 告警 日志 设计模式 数据结构与算法 各种工具
Java数据压缩与传输实例,可以学习一下实例化套按字、得到文件输入流、压缩输入流、文件输出流、实例化缓冲区、写入数据到文件、关闭输入流、关闭套接字关闭输出流、输出错误信息等Java编程小技巧。 Java数组倒置...
Java数据压缩与传输实例,可以学习一下实例化套按字、得到文件输入流、压缩输入流、文件输出流、实例化缓冲区、写入数据到文件、关闭输入流、关闭套接字关闭输出流、输出错误信息等Java编程小技巧。 Java数组倒置...
OSGi亦称做Java语言的动态模块系统,它为模块化应用的开发定义了一个基础的架构。OSGi容器已经有多家开源的实现,比如:knoflerfish、Equnox、Apache的Felix。你可以通过这些容器,把你的应用程序划分为多个模块单元...
1、可插拔的应用系统架构设计 2、可动态改变行为的系统架构设计 3、稳定、高效的系统 4、规范、可积累的模块
它将模块化带入了工作中。Eclipse将涉足Ajax和其平台和框架,及一些描述性语言,如Ruby和Python的工具包。基于Eclipse的水晶报表工具Eclipse适于Web服务的整合开发环境Milinkovich谈Eclipse 3.1与开源开发Cape Clear...
前 言 致 谢 第一部分 走近Java 第1章 走近Java / 2 1.1 概述 / 2 1.2 Java技术体系 / 3 1.3 Java发展史 / 5 1.4 展望Java技术的未来 / 9 1.4.1 模块化 / 9 1.4.2 混合语言 / 9 1.4.3 多核并行 / 11 ...