代码改变世界

04 2012 档案

摘要:S.O.L.I.D是面向对象设计和编程(OOD&OOP)中几个重要编码原则(Programming Priciple)的首字母缩写。SRPThe Single Responsibility Principle 单一责任原则OCPThe Open Closed Principle开放封闭原则LSPThe Liskov Substitution Principle里氏替换原则DIPThe Dependency Inversion Principle依赖倒置原则ISPThe Interface Segregation Principle接口分离原则Steve Smith在5月份的微软Tech 阅读全文
posted @ 2012-04-28 15:30 sahit 阅读(162) 评论(0) 推荐(0)
摘要:Introduction Web application data access layers have evolved over time to provide increasing flexibility and maintainability in software architecture. Often, many web applications begin by manually maintaining database connections and SQL query strings. However, as architecture designs grow, more we 阅读全文
posted @ 2012-04-28 15:26 sahit 阅读(1063) 评论(0) 推荐(0)
摘要:我们知道:一个软件从无到有需要经过如下几个阶段:分析、设计、编程、调试、部署和运行。 编程阶段我们通常使用Java/.NET这样面向对象语言工具,可以带来很多设计上的好处,但是也存在一个奇怪的现象:很多程序员虽然在使用OO语言,但是却在code非OO的代码,最终导致系统性能降低或失败,这个现象在Java语言尤其显得突出,难怪有些人就把问题归结于Java语言本身,睡不着觉怪床歪,又为了面子问题,说自己转向.NET,实际上是在回避自己的问题和弱点。那么,这些人的问题和弱点体现在什么地方呢?从上面软件生产过程来看,每个阶段都对前面有所依赖,在编程阶段出问题,追根溯源,问题无疑出在分析和设计阶段,分. 阅读全文
posted @ 2012-04-28 15:25 sahit 阅读(133) 评论(0) 推荐(0)
摘要:在足球比赛里,一个球员在一场比赛中进三个球,称之为帽子戏法(Hat-trick)。在分布式数据系统中,也有一个帽子原理(CAP Theorem),不过此帽子非彼帽子。CAP原理中,有三个要素:一致性(Consistency)可用性(Availability)分区容忍性(Partition tolerance)CAP原理指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。因此在进行分布式架构设计时,必须做出取舍。而对于分布式数据系统,分区容忍性是基本要求,否则就失去了价值。因此设计分布式数据系统,就是在一致性和可用性之间取一个平衡。对于大多数web应用,其实并不需要强一致性,因此牺牲一致性而 阅读全文
posted @ 2012-04-28 15:24 sahit 阅读(131) 评论(0) 推荐(0)
摘要:领域模型分为4大类:失血模型贫血模型充血模型胀血模型那么让我们看看究竟有这些领域模型的具体内容,以及他们的优缺点:一、失血模型 失血模型简单来说,就是domain object只有属性的getter/setter方法的纯数据类,所有的业务逻辑完全由business object来完成(又称TransactionScript),这种模型下的domain object被Martin Fowler称之为“贫血的domain object”。下面用举一个具体的代码来说明,代码来自Hibernate的caveatemptor,但经过我的改写:一个实体类叫做Item,指的是一个拍卖项目一个DAO接口类叫做 阅读全文
posted @ 2012-04-28 15:23 sahit 阅读(248) 评论(0) 推荐(0)