面向对象的原则、模式、语言及框架(二)》的相关内容

每个程序员都应牢记的7种坏味道,11种原则,23种模式

每个程序员都应牢记的7种坏味道,11种原则,23种模式 (一)7种设计坏味道 1.僵化性: 很难对系统进行改动,因为每个改动都会迫使许多对系统其他部分的其它改动。 2.脆弱性: 对系统的改动会导致系统中和改动的地方在概念上无关的许多地方出现问题。 3.牢固性: 很难解开系统的纠结,使之成为一些可在其他系统中重用的组件。 4.粘滞性: 做正确的事情比做错误的事情要困难。 5.复杂性(不必要 ...
by javatar 2006-12-27 浏览 (2975) 回复 (9) 关键字: 预览图生成

依赖倒置原则(DIP)批判 -- 称之为本末倒置原则更贴切

在批判之前,先了解一下依赖倒置 依赖倒置(Dependence Inversion Principle)原则讲的是:要依赖于抽象,不要依赖于具体。 简单的说,依赖倒置原则要求客户端依赖于抽象耦合。原则表述: 抽象不应当依赖于细节;细节应当依赖于抽象; 要针对接口编程,不针对实现编程。 反面例子: 缺点:耦合太紧密,Light发生变化将影响ToggleSwitch。 解决办法一: 将L ...
by age0 2004-08-24 浏览 (27773) 回复 (63) 关键字:

感悟敏捷设计

了解面向对象的机制(抽象、封装、继承和多态)并不意味着能设计好的面向对象软件。设计就是源代码,一切除软件构造(使用编译器编译、链接及部署)外的工作例如发现职责、标识对象、设计对象协作关系、编码、测试等都属于设计过程。和所有人类有目的的行为一样,设计是一种艺术、是一种工程、是一种带有臆测性的行为,也是一种实验性的活动。将训练、努力工作、激发灵感和所有合理的技术综合运用。对于一个给定的问题,有很多 ...
by zerozone 2007-03-19 浏览 (463) 回复 (1) 关键字: 旧文章整理

面向对象软件开发的敏捷过程

软件开发的复杂性 :   计算机硬件界的摩尔定律(每隔 18 个月计算机硬件的运算速度提高一倍,价格下降一半)适用于硬件的发展规律已经超过三十年了。人们想当然的认为计算机软件的发展速度和硬件的发展速度相当, 但是不幸的是:每次重大的硬件升级之后,随着更大功能更丰富的软件的出现,硬件的潜能再一次被无情的榨取殆尽。许多开发的软件系统不断的遭受进度延期,人 员资金和时间等预算无休止的增加,软件质量的不断 ...
by junli0411 2007-07-01 浏览 (82) 回复 (0) 关键字:

7种设计坏味道和11种原则

转的文章,出处太多了,也不知道到底哪个才是真的出处。 7种设计坏味道 1.僵化性: 很难对系统进行改动,因为每个改动都会迫使许多对系统其他部分的其它改动。 2.脆弱性: 对系统的改动会导致系统中和改动的地方在概念上无关的许多地方出现问题。 3.牢固性: 很难解开系统的纠结,使之成为一些可在其他系统中重用的组件。 4.粘滞性: 做正确的事情比做错误的事情要困难。 5.复杂性(不必要的) ...
by bulargy 2008-03-04 浏览 (147) 回复 (0) 关键字: 设计 坏味道 原则

OO设计模式和设计原则(抄来)

1.1 设计正在“腐烂”的征兆(Symptoms of Rotting Design)     有四个主要的征兆告诉我们该软件设计正在“腐烂”中。它们并不是互相独立的,而是互相关联,它们是过于僵硬、过于脆弱、不可重用性和粘滞性过高。     1. 过于僵硬Rigidity Rigidit ...
by zbw 2007-05-09 浏览 (363) 回复 (0) 关键字:

OO设计模式和设计原则

1.1 设计正在“腐烂”的征兆(Symptoms of Rotting Design)    有四个主要的征兆告诉我们该软件设计正在“腐烂”中。它们并不是互相独立的,而是互相关联,它们是过于僵硬、过于脆弱、不可重用性和粘滞性过高。    1. 过于僵硬Rigidity Rigidity 致使 ...
by junli0411 2007-07-01 浏览 (56) 回复 (0) 关键字:

类似JBOSS权限管理系统(在等待中)!高手们出马啦!

权限管理系统,还缺少什么?里面有要求,也有我已经做过的项目的描述! 项目目标:设计并开发与JBOSS集成的J2EE权限系统(类似JBOSS的权限管理系统,其实我对JBOSS没什么了解) 总体要求: 1、灵活、通用、方便; 2、高度安全并可靠; 3、易于扩展; 4、结构完整,代码清晰,易于阅读。 技术要求: 1、需要提供详细设计文档,阐述基本思路与实现方法; 2、 ...
by guojingxf 2008-05-06 浏览 (640) 回复 (8)

google背后的分布式架构

Google背后的分布式计算架构策略 Google是与众不同的。它的独特不仅仅表现于革新的思维和充满创意的应用 (比如那个大堂里的地球模型),更在于其有别常规的IT策略……   加利福尼亚州山景城(Mountain View)Google公司(Google,下称Google)总部有一个43号大楼,该建筑的中央大屏幕上显示着一个与Google地球(Google Earth)相仿的世界地图,一个转动 ...
by dogstar 2008-05-29 浏览 (1003) 回复 (0)

交叉包含该如何解决啊

//file A.d module A; private import B; //file B.d module B; private import A;  此时编译会报错,module A is in multiple packages A,这该如何解决呢?
by codekitten 2008-06-09 浏览 (1017) 回复 (27)

软件开发中的反模式

反模式是这样一种模式,它告诉我们在什么情况下我们会把一个问题做的更糟。例如: 斑点The Blob 程序风格的设计导致一个对象集中了过多的功能,而其他的对象只用来保存数据或者执行一些简单的过程。解决的办法是,对设计进行重构,使功能平均的分散开,从而将某一变动带来的的影响限制在一定的范围内。 持续退化Continuous Obsolescence 技术变革的是如此的快以至于开发者们经常在跟进 ...
by jonathan_zz 2008-05-20 浏览 (1317) 回复 (4) 关键字:

《CSS实战手册》中文版发布

  10年前,当我在记事本中一点一滴地书写着HTML、JavaScript、CSS并保存,然后在浏览器里预览自己的杰作时,感觉这是那么神奇、有趣!   10年后的今天,当Web 2.0的概念已经遍地开花结果时,从1996年提出的CSS 1,到即将出现的CSS 3,我们难免不联想到Web 3.0的蠢蠢欲动了。   没有CSS的手册,人们常常不知道从哪里入手学习CSS。好的CSS点子甚至可以胜过经验 ...
by YuLimin 2007-10-24 浏览 (2982) 回复 (7) 关键字: CSS Hack Bug

推荐知识库条目

Comming soon