模块化设计思考

模块主要包括:
    
        1、接口
        
            1-1、OO中,接口通常是一个层次结构
            
            1-2、接口表示一种抽象的数据类型
            
        2、实现
            
            2-1、接口的具体实现
            
            2-2、可重用的数据结构
            
        3、算法
        
            3-1、在一个实现接口对象中有用的计算
            
            3-2、可重用功能
            
    “模块接口数量”/“算法可选实现操作”
    
        考虑保持核心接口数量的可管理,不一定为模块中每种变体提供分离接口;可以将每个接口中的操作设计成可选代替。
        给定一个实现可能调用它不支持的实现,则抛出不支持操作异常。

模块化设计思考,布布扣,bubuko.com

时间: 2024-10-17 08:11:40

模块化设计思考的相关文章

CSS模块化设计——从空格谈起

引子: 今天在蓝点看了Yang的博客<CSS样式表中继续关系的空格与不空格>,思考了一下,本来想写<CSS样式的复合定义与复合调用及简单的模块化设计>,但是内容太大,还是来点简单的实惠.所以改叫<CSS样式--从空格谈起>吧.鞍山治疗白癜风的偏方www.0412r.com 一.空格运算符 (1)CSS语言 简单地说,CSS语言类似JS语言,是通过客户端下载后,通过本地浏览器解析.而CSS语言又是非常低级的"弱类型"语言,离JS这种基于对象的比较完善的

数据仓库专题(4)-分布式数据仓库事实表设计思考---讨论精华

一.前言 上一篇分享博文<数据仓库专题(3)--分布式数据仓库事实表设计思考>后,陆续有各位兄弟参加大讨论,提出了各种问题,关于分布式环境下,维表和事实表设计,进行了比较深入的探讨,在此汇集整理,分享给大家.希望能有更多人参与尽力啊,共同探索分布式数据仓库数据模型的设计. 二.纪要 [活跃]北京-RTB-胖哥(1106110976) 10:21:36 分布式模式下事实表设计思考: 做大做强事实表,做小做弱维表: [冒泡]杭州-电子病历<[email protected]> 10:2

【Nginx】模块化设计

高度模块化的设计是Nginx的架构基础.所有模块都是以ngx_module_t结构体表示,该结构体内部定义了7个回调方法,它们负责模块的初始化和退出.commands成员是一个包含有ngx_command_t结构体的数组,ngx_command_t的作用就是解析配置项.ctx是一个void指针,这使得模块具有高度灵活性. ctx可以指向不同类型模块的通用接口,官方Nginx共有5大类模块,与ctx接口的对应关系如下: 核心模块:接口为ngx_core_module_t,类型宏为NGX_CORE_

用thinkphp进行微信开发的整体设计思考

用thinkphp进行微信开发的整体设计思考 http://www.2cto.com/weixin/201504/388423.html 2015-04-09      0个评论       作者:明之暗夜 收藏    我要投稿 因为项目中很多地方都涉及到微信接口的调用 比如很多前台模块需要用到 后台模块也有少许调用 其他模块也可能会需要调用  为了让他们都能很方便的直接调用 我把他们独立成为一个模块 这个模块包含了基础的微信接口和微信jssdk 具体的设计请参考下面  当然如果有更好的建议可以

iOS程序模块化设计

一.模块化设计的概述: 模块化设计(Block-based design):对一定范围内的不同功能或相同功能的不同性能.不同规格的产品进行功能分析的基础上,划分并设计出一系列功能模块,通过模块的选择和组合构成不同的定制产品,以满足市场的不同需求. 模块化设计是绿色设计方法之一,绿色设计是指“在产品整个生命周期内,着重考虑产品环境属性(可拆卸性.可回收性.可维护性.可重复利用性等)并将其作为设计目标,在满足环境目标要求的同时,保证产品应该有的功能.使用寿命.质量等要求”. 绿色设计的原则被公认为“

thinkphp学习笔记5—模块化设计

1.模块结构 完整的ThinkPHP用用围绕模块/控制器/操作设计,并支持多个入口文件盒多级控制.ThinkPHP默认PATHINFO模式,如下: http://serverName/index.php(或者其他应用入口文件)/模块/控制器/操作/[参数名/参数值...] 应用:由同一个入口文件访问的项目称为一个应用,在完整版的代码中就是Application 模块:一个应用下面可以包含多个模块,每个模块对应独立的目录,在完整版的代码中有Admin,Home,Common,Runtime四个模块

AngularJs学习笔记7——四大特性之模块化设计

模块化设计 1.引用自定义模块并调用 自定义模块中,如果有一些服务.封装好笑模块,在另外一个模块中(声明的时候,在依赖列表中加入要引入的模块) var app02 = angular.module('fan02',['ng','fan']); 就调用fan02模块中所定义的东西 2.ng内置的模块的用法 (1) ngRoute模块(路由模块) AngularJS是一个开源的js框架.用在数据操作比较频繁的场景下,用于SPA应用 单页面应用的工作原理: 1.页面url:http://127.0.0

Swift之xib模块化设计

一.解决问题 Xib/Storybarod可以方便.可视化的设置约束,在开发中也越来越重要.由于Xib不能组件化,使得封装.重用都变得不可行.本文将介绍一种解决方案,来实现Xib组件化. 二.模型块原理 在介绍原理之前,我们先弄清楚两个概念: 从上图可以看出,分别选中File's Owner及根视图View,都有Custom Class属性面板.其中Class属性,有什么作用,区别又是什么呢? 2.1 View的Class属性 View的Class属性用于指定选中的视图的实例化类.Xib实际上是

动画中的模块化设计

1.动画效果实现难度的判断 2.将看到的动画效果拆分成小模块 3.将写好的小模块组合成你所需要的动画效果 一,新建一个BaseAnimationView主控类 @interface BaseAnimationView : UIView - (void)show; - (void)hide; - (void)buildView; @end #import "BaseAnimationView.h" #import "CircleView.h" #import &quo