走在架构师的大道上 Jack.Wang's home

Java, C++, linux c, C#.net 技术,软件架构,领域建模,IT 项目管理 Dict.CN 在线词典, 英语学习, 在线翻译

BlogJava 首页 新随笔 联系 聚合 管理
  195 Posts :: 3 Stories :: 728 Comments :: 0 Trackbacks

2008年10月17日 #

     摘要: 软件架构设计编档之参考文件  阅读全文
posted @ 2009-10-21 20:04 Jack.Wang 阅读(7200) | 评论 (1)编辑 收藏

     摘要: 常见Oracle HINT的用法,标记在这里  阅读全文
posted @ 2009-08-23 09:02 Jack.Wang 阅读(2725) | 评论 (0)编辑 收藏

posted @ 2009-05-30 13:06 Jack.Wang 阅读(5037) | 评论 (0)编辑 收藏

posted @ 2009-05-30 10:03 Jack.Wang 阅读(3194) | 评论 (0)编辑 收藏

     摘要: 目前磁盘存储市场上,存储分类(如下表一)根据服务器类型分为:封闭系统的存储和开放系统的存储,封闭系统主要指大型机,AS400等服务器,开放系统指基于包括Windows、UNIX、Linux等操作系统的服务器;开放系统的存储分为:内置存储和外挂存储;开放系统的外挂存储根据连接的方式分为:直连式存储(Direct-Attached Storage,简称DAS)和网络化存储(Fabric-Attached Storage,简称FAS);开放系统的网络化存储根据传输协议又分为:网络接入存储(Network-Attached Storage,简称NAS)和存储区域网络(Storage Area Network,简称SAN)。由于目前绝大部分用户采用的是开放系统,其外挂存储占有目前磁盘存储市场的70%以上,因此本文主要针对开放系统的外挂存储进行论述说明。 表一: [url=http://www.wangchao.net.cn/bbsdetail_1782308.html][img]http://images.wangchao.net.cn/images/upload/images/lsdn/121  阅读全文
posted @ 2009-04-20 22:18 Jack.Wang 阅读(3218) | 评论 (0)编辑 收藏

posted @ 2009-04-12 09:17 Jack.Wang 阅读(18740) | 评论 (7)编辑 收藏

     摘要: 描述了一经典的架构设计过程,并在此基础上提出了四层驱动设计模型,在CKM项目中初次进行了实践,想看的可以下载看看  阅读全文
posted @ 2009-03-03 23:45 Jack.Wang 阅读(5544) | 评论 (6)编辑 收藏

     摘要: 分层是软件架构的基本理论。任何软件在逻辑上都可以分层,也可以适当的映射到物理层次上,至于怎么分,分多少层,要不要分等要看你的软件领域(每个领域都有一些现成的架构模式可以参考,所谓领域架构),在拿到需求的时候我们习惯上进行水平和垂直的分割,其实分层技术也是一种基本的架构模式  阅读全文
posted @ 2009-02-21 21:48 Jack.Wang 阅读(3862) | 评论 (2)编辑 收藏

     摘要: 在描述大而复杂的软件中,最复杂的抽象层次就是软件架构。因此,在这个抽象层次我们能更好的理解构件组装原理和交互方式。软件架构被认为是软件开发方面的驱动力,他允许指定每层那些方面和模型需要依照架构来设计。早期的架构描述语言 ADL,比较独立,侧重结构抽象层次而忽略行为描述层次、观念层次和元模型层次。这篇文章描述了适当的“理性的”软件架构视图并用 C3 元模型描述(最小的并且完整的描述语言),我们提供了一个机制集合以处理不同层次的不同级别,我也提出了一新的用C3元模型描述的连接件的增强定义。  阅读全文
posted @ 2009-01-30 17:43 Jack.Wang 阅读(7084) | 评论 (2)编辑 收藏

     摘要: 最近设计知识管理系统的资源导入功能,为了尽量的做到组件化,方便扩展,方便其他模块使用。简化组件提供的和需要的接口,设计并实现了基于 Mapping 机制的导入框架。其中有一功能用到了计算两个字符串相似度的算法。  阅读全文
posted @ 2009-01-19 23:53 Jack.Wang 阅读(10972) | 评论 (9)编辑 收藏

     摘要: 知识管理是伴随知识经济出现的一种创新管理,知识管理要综合运用战略、组织、流程、技术、变化等多种措施和管理工具,以富有效率的方式动员组织拥有的一切资源来实现其管理目标。
  阅读全文
posted @ 2009-01-13 22:03 Jack.Wang 阅读(2310) | 评论 (0)编辑 收藏

     摘要: 基于构件的开发(CBD)观念已广泛应用于软件开发中,便于构件的重用。众所周知的CBD体系结构有 ActiveX, CORBA, RMI以及 SOAP 等。文章主要通过与传统软件开发方法的比较研究支持基于CBD的实践,同时也评价了面向对象的过程模型以及提出了一种新型的基于 CBD 的软件开发过程模型,并探讨了仓储的重要概念。  阅读全文
posted @ 2008-12-28 13:31 Jack.Wang 阅读(4819) | 评论 (0)编辑 收藏

     摘要: 最大化的重用,在体系结构风格和构件方面形成了经验库,指导后续软件开发。可真正实现快速软件开发,特别是在特定领域中的应用!  阅读全文
posted @ 2008-12-27 22:15 Jack.Wang 阅读(3955) | 评论 (0)编辑 收藏

     摘要: 这篇文章说的很好,和大家分享一下,可能一些实战的朋友并不喜欢这种理论的东西,可以不看,这篇文章把软件体系结构和建筑学类比,形象化了体系结构设计。文章提到算法和数据结构有扩张和取代SA的可能,个人觉得有点欠妥,算法和数据结构毕竟是解决细粒度的问题,而体系结构最初从算法和数据结构脱离出来,形成一抽象的分析层次,就是因为软件越来越复杂,单凭算法和数据是很难解决问题的。算法数据结构和体系结构应该是属于不同的层次解决不同的问题罢了。文章也提到了黑盒复用和白盒复用的概念,强调了软件体系结构设计的意义。不过个人并不同意“软件体系结构是一个高层次上的抽象,它并不涉及具体的系统结构(比如B/S还是C/S),也不关心具体的实现。”笔者这句话,B/S和C/S 其实是一种设计风格,是软件体系结构的设计模式,其实模式的目的就是重用。在实际的架构设计中你不仅要可虑体系结构设计风格、框架以及复用构件等等,你也要考虑实现的技术和关键点的决策,这些都是需要在开发前期确定的。所以软件体系结构是高层抽象是不关心实现,但是他要涉及到具体的系统结构。
  阅读全文
posted @ 2008-11-30 20:35 Jack.Wang 阅读(3725) | 评论 (3)编辑 收藏

     摘要: 由于工作和学习的需要,强制自己这2到3个星期看完40篇论文  阅读全文
posted @ 2008-11-16 16:34 Jack.Wang 阅读(3247) | 评论 (2)编辑 收藏

     摘要: 当架构模型进行迭代的过程中,必然伴随着对模型进行修改和改进。我们如何防止对模型的修改,又如何保证对模型进行正确的改进?  阅读全文
posted @ 2008-11-16 12:09 Jack.Wang 阅读(3471) | 评论 (0)编辑 收藏

     摘要: 分层对现代的软件开发而言是非常重要的概念。也是我们必须学习的知识。分层的总体思路并没有什么特别的地方,但是要和自己的开发环境、应用环境结合起来,你还需要付出很多的努力才行。

在完成了分层之后,软件架构其实已经清晰化了。  阅读全文
posted @ 2008-11-14 21:14 Jack.Wang 阅读(4879) | 评论 (6)编辑 收藏

     摘要: 常见计算机类杂志投稿方式  阅读全文
posted @ 2008-10-29 16:40 Jack.Wang 阅读(3287) | 评论 (1)编辑 收藏

posted @ 2008-10-26 00:00 Jack.Wang 阅读(2536) | 评论 (0)编辑 收藏

     摘要: 目前,Web系统开发缺乏严格和系统的方法,大多数应用开发和管理实践在很大程度上依赖于开发人员个人的知识和经验,造成的后果是所开发的Web系统大多是低质量的产品。而传统的软件工程方法不能适应Web设计的要求,为此人们研究提出了众多的Web开发方法。这些研究旨在提供全面支持Web应用开发生命周期的模型和方法,但由于这些方法本身存在的局限性及其它方面的原因,还没有得到广泛的应用。论文首先讨论了成熟的Web开发方法应该具有什么样的特性和功能,然后分析了现有Web开发方法各自的特点,最后总结了这些方法所存在的问题和今后的研究重点。
  阅读全文
posted @ 2008-10-18 16:39 Jack.Wang 阅读(2442) | 评论 (0)编辑 收藏

     摘要: 阶乘是个很有意思的东西,可能很多朋友看到关于他的计算就怕了,其实没什么,看完下面两个问题您应该有低了。
1. 给定一个 N ,求出N!末尾有多少个零,比如 N=10,N!=3628800,N!末尾有两个零。
2. 求N!的二进制表示中最低为1的位置,比如 11010010, 最低为1的位置为2。

问题一解法:

在上一个 blog 中介绍的子数组乘积最大值的问题中,有朋友考虑到溢出的问题,在这个问题中,我们从那些数相乘能得到10这个命题开始思考。比如N!=K×10m那么N!后面就有m个零。这个问题转化为将N!进行分解,如N!=2a×3b×5c 很显然 10=2×5,那么零的个数m=min(a,c), 一个数能够被2整除的机率比5要大很多因此 m=c,因此转化为求 c的问题,具体算法如:
  阅读全文
posted @ 2008-10-18 12:05 Jack.Wang 阅读(4285) | 评论 (1)编辑 收藏

     摘要: 给定一个长度为N的整数数组,只允许用乘法,计算任意(N-1)个数的组合乘积中最大的一组,并
写出算法的时间复杂度。  阅读全文
posted @ 2008-10-17 12:43 Jack.Wang 阅读(4789) | 评论 (11)编辑 收藏