`
文章列表
      本文通过讲解微内核架构模式,API/SPI设计原则,动态脚本语言,分解合成在软件设计中的应用,讲述如何构造一个具备较好可扩展性的软件系统。 先讲一下提纲: 1.软件系统划分原则 2.一个简单软件系统到复杂软件系 ...
写本篇主要是用来后面写一篇可扩展性软件设计打好基础(苦于找不到一篇关于API/SPI的好文章,只好自己写一个,欢迎指教)。 概念: API:API(Application Programming Interface)表示应用程序编程接口 SPI:SPI(Service Provider Interface)表示服务提供商接口 API与SPI的关系 框架提供API及其实现,框架在实现过程中提供SPI回调机制。SPI是框架的扩展点。如果使用框架方要扩展框架,可以自己实现SPI并注入框架,于是框架使用方其实也是一个服务提供商。 SPI实现有两种方式,一种是第三方提供实现,另一种是应用自身自己提供实现 ...
写本篇主要是用来后面写一篇可扩展性软件设计打好基础。 微内核定义:      微内核是内核的一种精简形式。将通常与内核集成在一起的系统服务层被分离出来,变成可以根据需求加入选件  这样就可提供更好的可扩展性和更加有效的应用环境。使用微内核设计,对系统进行升级,只要用新模块替换旧模块,不需要改变整个操作系统。 微内核架构模式来源于操作系统,本文主要讲解微内核模式在应用软件中的如何实现。 微内核架构模式组成: 一般由下面几个部分组成:微内核、内核、扩展服务(我更喜欢叫做扩展插件)。 内核由几个最基本服务组成,微内核完成加载内核里所有的基本服务。 内核基本服务在应用软件中通常是指那些与业务无关的服 ...
(注:代码在最底下的附件) 1.简单工厂 郭大神和盘哥在说好想买ipad,用代码实现一下 不用模式的设计 public interface Product { String getDesc(); } public class IpadProduct implements Product { @Override public String getDesc() { return "Ipad2"; } } public class Client { public static voi ...
模板模式与适配器模式组合使用之合并站点数据      考虑一下这样的一个场景,网站模板应用到网站时需要合并站点数据。 站点数据(SiteData)是由页面(SitePageData)组成的,页面是由页面片段(SiteSegmentData)组成的,页面片段是由区域(SiteRegionData)组成的,区域是由版块(SiteAppData)组成的。 class SiteData{ List<SitePageData> pages; } class SitePageData{ List<SiteSegmentData> segments; ...
Global site tag (gtag.js) - Google Analytics