摘要: 这一块对我来说是一个新的领域,所以刚开始看起来有些吃力。希望能够慢慢的进入状态。也许需要依靠笔记的帮忙。在我的学习中,学习笔记占有很大的地位,他不但是记录,更重要的是,他帮助我更深入的思考。不写笔记我会感觉没有学到东西。 1.1.1. 层 可以将系统划分为子任务组,每个子任务组在一个特定的抽象层次上。 1. 例子 ISO7层模型。 2. 语境 一个需要分解的大系统 3. 问题 假设有一个系统,它明... 阅读全文
posted @ 2011-05-28 09:20 常高伟 阅读(1441) 评论(0) 推荐(1) 编辑
摘要: 现在的学习笔记要侧重自己的理解。用自己的语言,经验来阐释它。读一段后,写下我的理解。 管道和过滤器体系结构模式为数据流的系统提供了一种结构。每个处理步骤封装在一个过滤器组件中,过滤器组件间通过通道连接。重组管理器组件可以得到不同的系统族。这个和之前见过的一个语音流的处理结构非常相似。 1. 例子 这里列举了一个编译器软件。从代码到可执行文件经过了很多步骤,每个步骤都抽象成一个过滤器组件。 和处理数... 阅读全文
posted @ 2011-05-27 19:45 常高伟 阅读(2063) 评论(1) 推荐(1) 编辑
摘要: 明智而审慎的使用private继承(Use private inheritance judicious.) private继承的两条规则: 1、 编译器不会将一个derived class转化为baseclass,但是却可以显示转换。也就是,他们之间不是is-a的关系。 2、 从基类继承的所有的成员和方法都将变为private属性。也就是,它只继承实现,不集成接口。 private继承意味着“根... 阅读全文
posted @ 2011-05-23 22:28 常高伟 阅读(387) 评论(0) 推荐(0) 编辑
摘要: 以前看赢在中国,一个评委问一个选手一个问题: “如果给客户,利润,员工排一下顺序,企业(企业家)应该把谁放在第一位?” 选手的答案我记不大清楚了。我后来对这个问题思考过一段时间。确切的说,我认为这个问题应该是一个递进的问题,而不是一个顺序的问题。我个人认为应该是这样的一个逻辑: “对一个企业来说,三者都是必不可少的一部分:利润是企业存在的根本,客户是利润的源泉,员工是赢得客户的动力。” 如果真要给这三者排一下顺序,我认为,企业(企业家)应该把员工放在第一位。因为,企业(企业家)只有把员工放在第一位,员工才会把客户放在第一位;员工把客户放在第一位,才能够为企业创造更多的利润。 企业把员工放在第一 阅读全文
posted @ 2011-05-22 16:03 常高伟 阅读(626) 评论(1) 推荐(0) 编辑
摘要: 为了支持c++的多态性,才用了动态绑定和静态绑定。理解他们的区别有助于更好的理解多态性,以及在编程的过程中避免犯错误。 需要理解四个名词: 1、对象的静态类型:对象在声明时采用的类型。是在编译期确定的。 2、对象的动态类型:目前所指对象的类型。是在运行期决定的。对象的动态类型可以更改,但是静态类型无法更改。 关于对象的静态类型和动态类型,看一个示例: view plaincopy to clipb... 阅读全文
posted @ 2011-05-21 22:48 常高伟 阅读(2335) 评论(0) 推荐(0) 编辑
摘要: 读S计划的理念 自助、互助,共同进步! 读S计划的初衷 现在有很多学习方式,搜索引擎、论坛、博客,qq群等等,那么我这样的计划还有存在的必要么?这个计划的独特之处在哪里? 读S计划的独特之处不在... 阅读全文
posted @ 2009-10-14 21:42 常高伟 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 上面一篇文章大致描述了一下插件开发框架整体结构。这篇描述一下核心层的设计和实现。 至于核心层的设计,我想借鉴 一下微内核的思想。核心层只负责实现下面几个功能: 1、 插件的加载,检测,初始化。 2、 服务的注册。 3、 服务的调用。 4、 服务的管理。 插件的加载,检测,初始化 插件的加载利用linux共享库的动态加载技术。具体的方法可以看一下IBM网站的一篇资料《Linux 动态库剖... 阅读全文
posted @ 2009-10-12 20:20 常高伟 阅读(3091) 评论(0) 推荐(0) 编辑
摘要: 这几天为了设计插件开发框架,尝试用了一下发散思维来思考问题。中间看过依赖注入,AOP(面向方面编程),以及契约式设计等。虽然有些工具无法直接使用,但是这些思想还是可以借鉴的,比如依赖注入,契约式设计。至于AOP,和工具相关性较大,虽然思想不错,但是无法直接在C++中使用。 我设计的插件间的依赖不是通过接口实现的,而是通过插件间的数据(信元流)。而信元流的检测可以使用契约来检查。 插件开发框架的总体... 阅读全文
posted @ 2009-10-12 20:20 常高伟 阅读(1231) 评论(0) 推荐(0) 编辑
摘要: 在这一系列的上一个文章中,介绍了构建C/C++插件开发框架的初步设想,下面我会一步步的向下展开,来实现我的这个设想。 今天主要谈一下我对这个框架的功能认识,或是期望。昨天看了一篇关于持续集成能力成熟度模型 的一篇文章,受此启发,我对此框架的认识渐渐清晰。 这个框架可以当做我们公司底层产品(交换机,资源服务器等)的基础设施。上层基于java开发的产品可以直接在OSGI上开发。 核心功能: 1... 阅读全文
posted @ 2009-10-12 20:19 常高伟 阅读(2364) 评论(0) 推荐(0) 编辑
摘要:   使用信元流(TLVStream)规范、简化模块(C/C++)间交互 收藏 问题描述: 在软件开发过程中,一般会对复杂的现实世界进行抽象,并且采用分而治之的策略,将大系统分解为子系统,将子系统分解为一个个的模块。模块间的通信一般采用函数调用的方式,这样会产生一些问题:    1. 模块间的接口增多会导致模块间紧密耦合,不利于模块的重用、调试、维护。  &#... 阅读全文
posted @ 2009-10-12 20:18 常高伟 阅读(1047) 评论(0) 推荐(0) 编辑