惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
V2EX
J
Java Code Geeks
月光博客
月光博客
博客园_首页
The GitHub Blog
The GitHub Blog
Vercel News
Vercel News
B
Blog RSS Feed
博客园 - 聂微东
宝玉的分享
宝玉的分享
T
Tailwind CSS Blog
Jina AI
Jina AI
S
SegmentFault 最新的问题
B
Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
有赞技术团队
有赞技术团队
Hugging Face - Blog
Hugging Face - Blog
Google DeepMind News
Google DeepMind News
阮一峰的网络日志
阮一峰的网络日志
The Cloudflare Blog
量子位
Martin Fowler
Martin Fowler
博客园 - Franky
大猫的无限游戏
大猫的无限游戏
博客园 - 叶小钗

博客园 - John Yang

【转】批处理命令基础教程 《Transact-sql权威指南》学习日记 安装与配置IIS 一些常见的C#面试问题和答案 排序算法 什么是SQL注入式攻击 什么是手册报关 策略模式 C#入门(一) 什么是PMP认证 - John Yang - 博客园 [好文共享] 哈佛讲师讲授幸福:我们越来越富有为何仍不开心 设计模式之工厂模式 42个项目管理过程 项目管理过程组与知识领域表 背完这444句,你的口语绝对不成问题了 SQL SERVER性能优化 [白领栏目] 创造“我生命中的鼎盛之年”五大原则 【三星系列】真正的三星F278秘笈 让人生成功的49个细节
设计原则
John Yang · 2010-08-29 · via 博客园 - John Yang

1.找出应用中可能需要变化之处,把他们独立出来,不要和那些不不要变化的代码混在一起。

把会变化的部分取出并“封装”,好让其他部分不会受到影响。

2.针对接口编程,而不是针对实现编程。

一些具体的实现被放到分开的类中,此类专门提供某行为接口的实现。

3.多用组合,少用继承。

4.类应该对扩展开放,对修改关闭。