写点什么

为.NET 重新审视 SOLID 设计原则和其他模式

  • 2013-09-18
  • 本文字数:779 字

    阅读完需:约 3 分钟

“为了方便自己和其他人,我想记录下我学到的东西或者在工作中遇到的问题。” .NET 平台的 Web 开发者,瑞典人 Andras Nemes 最近撰写了一系列博文,关于 SOLID 设计原则和其他在面向对象编程和设计中非常有趣的设计模式。在解释为什么写这些文章时,他写下了上面的话。

Andras 将 SOLID 设计原则描述为一系列的面向对象软件设计的指导方针。运用这些原则可以使代码库更加容易理解和维护。它们也支持使用更多的面向对象的风格,因此可以防止代码库演变为高度内部耦合的烂摊子,那样会非常难于调试和扩展。但是他也指出,尽管这些原则是很好的工具集,但是为防止代码过期,它们仍然不能替代维护和重构代码。

SOLID 代表五个设计原则首字母的缩写,Andras 做了如下简要描述:

Andras 为每一个原则描述了什么时候和什么地方应该用何种模式,而后在 demo 中实际运用了模式。他首先实现一个不用模式的例子,接着使用模式重构并改进了代码。他还探讨了前一种设计的缺陷,以及重构是如何改进设计的。

除了 SOLID 原则,Andras 还用同样的方式描述了许多其他的模式,包括:命令模式、建造者模式、访问者模式、桥接模式和观察者模式。

查看英文原文: SOLID Design Principles and Other Patterns Revisited For .NET


感谢姚琪琳对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2013-09-18 10:191765
用户头像

发布了 21 篇内容, 共 66888 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

令人头秃的js隐式转换面试题,你能做对吗

loveX001

JavaScript

JavaScript-节流

格斗家不爱在外太空沉思

JavaScript 前端 11月月更

2022-11-08:以下go语言代码输出什么?A:2;B:编译错误;C:运行 panic。 package main import “fmt“ func main() { a := []int

福大大架构师每日一题

golang 福大大 选择题

从“青铜”到“王者”,制造企业的数字化闯关记

脑极体

【奖项征集】参与第四届中国“数据质量管理”奖项评选,DQMIS 2022门票免费领!

数据质量管理智库

数据 数据治理 数据安全 数据隐私计算 数据要素

湖仓一体电商项目(四):项目数据种类与采集

Lansonli

湖仓一体 11月月更

京东前端经典react面试题合集

beifeng1996

React

如何在 Rocky Linux 上安装 MinIO 存储?

wljslmz

对象存储 S3 Minio Rocky Linux

Hessian Hessian2 JDK 序列化性能对比

water

拿到大厂前端offer的前端开发是怎么回答面试题的

loveX001

JavaScript

手写一个Redux,深入理解其原理-面试进阶

beifeng1996

React

4.NLP领域任务如何选择合适预训练模型以及选择合适的方案【规范建议】【ERNIE模型首选】

汀丶人工智能

nlp 11月月更

互联网+背景下企业客户服务的创新之路

Baklib

云原生系列三:K8s应用安全加固技术

叶秋学长

#k8s K8s 多集群管理 安全加固 11月月更

快速搭建Jenkins集群

程序员欣宸

DevOps jenkins 11月月更

你是如何使用React高阶组件的?

beifeng1996

React

CSS学习笔记(三)

lxmoe

CSS 前端 学习笔记 11月月更

【docker】软链接迁移docker碰到的问题

非晓为骁

Docker 迁移

算法题学习---合并两个排序的链表

桑榆

算法题 11月月更

制胜出海赛道 华为应用海外联运助力开发者获量增长

叶落便知秋

华为开发者大会2022

湖仓一体电商项目(五):内网穿透工具-网云穿

Lansonli

湖仓一体 11月月更

随机森林-随机森林在乳腺癌数据上的调参

烧灯续昼2002

Python 机器学习 算法 sklearn 11月月更

从这两道题重新理解,JS的this、作用域、闭包、对象

loveX001

JavaScript

JavaScript-防抖

格斗家不爱在外太空沉思

JavaScript 前端 11月月更

一个好的安全团队应该具有怎样的素质

穿过生命散发芬芳

11月月更 安全团队

张益唐111页论文攻克朗道-西格尔零点猜想

老周聊架构

数学 11月月更 朗道-西格尔零点猜想

腾讯前端二面常考react面试题总结

beifeng1996

React

黑客“劫持”了一颗卫星,用它直播黑客大会和放电影

博文视点Broadview

阿里云日志服务SLS携手观测云发布可观测性解决方案,共建可观测应用创新

TalkingData

阿里云 可观测 存储上云 日志服务 sls

跟着卷卷龙一起学Camera--低延迟02

卷卷龙

ISP camera 11月月更

索引的基础知识

阿泽🧸

索引 11月月更

为.NET重新审视SOLID设计原则和其他模式_架构_Jan Stenberg_InfoQ精选文章