自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

[摘]变量使用事项

摘自:《代码大全》变量使用事项1、“变量”在这里同时代表对象和内置数据类型。2、要养成良好的创建变量的方法和习惯。(1)对支持隐式变量声明的语言,在未声明变量时,编译器会自动声明变量,但这种做法不好。(2)对支持隐式变量声明的语言,建议关闭隐式声明、声明全部变量、遵循某种命名规则、检查变量名。3、变量初始化(1)在声明变量的时候初始化。(2)在靠近变量第一次使用...

2007-06-29 16:04:02 164

[摘]防御式编程

摘自:《代码大全》防御式编程防御式编程的主要思想是:子程序应该不因传入错误数据而被破坏,哪怕是由其他子程序产生的错误数据。这种思想是将可能出现的错误造成的影响控制在有限的范围内。关于使用断言: 用错误处理代码来处理预期会发生的情况,用断言来处理绝不应该发生的状况。 避免把需要执行的代码放到断言中 用断言来注解并验证...

2007-06-29 15:56:16 125

[摘]高质量的子程序

摘自:《代码大全》高质量的子程序1. 创建子程序的理由1.1 降低复杂度1.2 引入中间的、易懂的抽象1.3 避免代码重复1.4 支持子类化1.5 隐藏顺序1.6 隐藏指针操作1.7 提高...

2007-06-29 14:31:55 105

[摘]类的质量核对表

摘自:《代码大全》类的质量核对表:1. 抽象数据类型1.1 是否把程序中的类都看做时抽象数据类型了?是否从这个交大评估它们的接口?2. 抽象2.1 类是否有一个中心目的?2.2 类的命名是否恰当?其名字是否表达了其中心目的?2.3 类的...

2007-06-29 14:24:54 182

[转]深入理解COM+

《深入理解COM+》前言 COM是一项位于底层的有效技术。 1992年,Tony Williams 和Bob Atkinson定义了一个简单的结构,从而使Microsoft公司内部和外部的各种组织一次又一次的用它来处理各种各样的问题。 复合文档或者对象链接和嵌入?COM;脚本语言支持和自动化?COM;AciiveX控件和身份鉴定...

2007-06-29 14:14:31 377

[摘]OOD 启思录

摘抄自《OOD 启思录》--Arthur J.Riel 著 鲍志云 译“你不必严格遵守这些原则,违背它们也不会被处以宗教刑罚。但你应当把这些原则看成警铃,若违背了其中的一条,那么警铃就会响起。”--Arthur J.Riel  (1)所有数据都应该隐藏在所在的类的内部。p13   (2)类的使用者必须依赖类的共有接口,但类不能依赖它的使用者。p15 ...

2007-06-29 13:59:40 80

[转]代码的味道

什么时候需要Refactoring? 代码的味道是高水平程序员对“好程序“的一种感觉,他们具备一种能力,即使不涉及程序代码的具体实现就能看出你的设计是否合理。 如果代码有“异味“,那么你需要进行Refactorying. 1.重复代码(Duplicate Code) 即使是一两句代码的重复也需要refactoring,有时候重复不是那么明显,你需要首先进行其他的refactor...

2007-06-29 13:57:45 64

[转]Java API Design Guidelines

转自:http://www.artima.com/weblogs/viewpost.jsp?thread=142428Dr. Dichotomy's Development DiaryJava API Design Guidelinesby Eamonn McManusDecember 28, 2005SummaryThere are tons of books a...

2007-06-26 16:46:41 153

[转]How to Design a Good API and Why it Matters

作者:Joshua Bloch...2 How to Design a Good API and Why it MattersWhy is API Design Important?• APIs can be among a company's greatest assets Customers invest heavily: buying, writing, learni...

2007-06-26 16:38:30 199

[转]How To Design a module API

转自:http://openide.netbeans.org/tutorial/api-design.htmlHow To Design a (module) API$Revision: 1.51 $--------------------------------------------------------------------------------Abstra...

2007-06-26 16:02:35 191

IBM-SOA

昨天下午去听了IBM的SOA培训,先是副总裁吹嘘SOA多好多好,三个中文两个英文单词的混着讲,听着头大。然后是SOA专家讲,这个讲得还行。听他讲,SOA像是为旧系统集成的一种方案,但他却很反对这么说,无语。最后是培训部经理讲人才需求,推销他们的SOA系列课程,什么要培养出1000个SOA架构师,10000个SOA专家......

2007-06-23 19:06:04 156

[转]包设计原则

粒度:包的内聚性原则1) 重用发布等价原则(The Release Reuse Equivalency Principle (REP))* 重用的粒度就是发布的粒度* 一个可重用的包必须为发布跟踪系统所管理,使我们在新版本发布后我们还可以继续使用老版本* 一个包中的所有类对于同一类用户来讲都应该是可重用的。2) 共同重用原则(The Common Reuse Princip...

2007-06-23 18:46:11 294

MeteorTL分包设计

附件是开源项目[url=http://www.meteortl.org]MeteorTL[/url] ( [url]http://www.meteortl.org[/url] )的分包结构,综合考虑了:REP, CRP, CCP, ADP, SDP, SAP等原则。

2007-06-23 18:21:31 87

[转]航天可靠性设计原则1000条

转:引言: 一位航天可靠性老专家过世,一位同学整理老先生的遗物时,发现了一本《可靠性设计原则1000条》复印本,都是一些比较基础而且比较实用的设计技巧,下面是这1000条可靠性设计的具体原则可靠性设计原则:1-100条A1 在 确定设备整体方案时,除了考虑技术性、经济性、体积、重量、耗电等外,可靠性是首先要考虑的重要因素。在满足体积、重量及耗电等于数条件下,必须确立以...

2007-06-21 16:08:12 852

借鉴其它领域的设计原则

工作中,我们的设计理念是否应该超越软件的狭圈?相对于其它领域,软件还是新生的,要向老一辈学习才是。设计模式本身就起源于建筑学,算是几千年思想的沉淀。呵,我先抛砖引玉,如果你有更多其它领域的设计原则/模式,不妨跟帖。-----------------单片机硬件系统设计原则 一个单片机应用系统的硬件电路设计包含两部分内容:一是系统扩展,即单片机内部的功能单...

2007-06-21 15:56:06 225

[转]Java在Interface方面的缺陷

转自: http://blog.csdn.net/alexjames_83/archive/2005/04/14/347726.aspxOO设计中有一个重要原则:结构(mechanism)与策略(Policy)分离。Interface是实践这一原则的重要途径。从概念上将,Interface用来扮演使用者与实现者之间的契约(contract)。我们使用Interface来定义一组Ab...

2007-06-21 15:36:06 109

动态指令识别

模板的静态指令(如:if, include等)很容易识别其为行(Line)指令或块(Block)指令,@if{x}@include{"x.mtl"}@end引擎能够区分该@end是结束@if的,因为引擎可以通过判断@if的具体实现类做到。而动态宏指令,就无法识别,@import{my1 : "my1.mm"}@import{my2 : "my2.mm"}@m...

2007-06-18 11:20:10 248

MeteorTL用户接口稳定版本

[code="java"]// 导入meteortl模块import org.meteortl.*;// 配置并建造工厂, 工厂可单例重用Configuration config = new StandardConfiguration();Factory factory = config.buildFactory();// 定义运行期数据Map model = ...

2007-06-14 13:44:05 97

[转]契约设计

DbC 元素先验条件。针对方法(method),它规定了在调用该方法之前必须为真的条件。后验条件。也是针对方法,它规定了方法顺利执行完毕之后必须为真的条件。不变式。针对整个类,它规定了该类任何实例调用任何方法都必须为真的条件。 DbC 六大原则 区分命令和查询。将基本查询同派生查询区分开。 针对每个派生查询,设定一个后验条件,使用一个或多个基本查询的...

2007-06-14 13:17:50 153

契约设计的一些想法

契约设计由来已久,各语言的支持方式与级别不尽相同,契约元素包括:前验条件(precondition)后验条件(postcondition)不变式(invariant)这里只考虑前验条件的:需求定义(require)保证合法性(ensure)函数的签名算是需求的最基本定义了。对于合法性的保证,一般采用断言。Java在1.4以前,大家只能靠简单的函数封装实现。...

2007-06-14 11:50:17 128

实现Macro

Macro在FreeMarker和Velocity中都是作为指令级处理的,一个宏模板文件可以包含多个宏,为了保证宏名称不冲突,在import时,指定namespace区分。如:mymacro.fm 宏模板文件:Hello,$param $param2...使用方式:[url=http://www.meteortl.org]Meteor...

2007-06-12 09:50:36 534

加入研发部,留个脚印

公司今天宣布了新的组织结构研发部:由James (CTO), Kent (Java部门经理) 领导我、杨兄和许兄三人全职加入。其它SA等部分时间参与。希望我们能成长的更快,为公司创造更多的价值。...

2007-06-11 19:37:49 82

扩展接口的思考

在设计[url=http://www.meteortl.org]MeteorTL[/url]时,模板指令,表达式操作符的可扩展性,一直没有找到好的方案。由于扩展是由第三方实现的,所以一般采用SPI(Service Provide Interface)接口的方式。在留出SPI接口时,引擎需要传递编译期数据及运行时数据给扩展方,运行时数据肯定是用callback函数的参数列表传递,...

2007-06-06 14:32:52 119

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除