写点什么

为.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:192227
用户头像

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

关注

评论

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

淘宝API文档:淘宝商品详情API接口

tbapi

淘宝数据采集 淘宝API 淘宝商品详情API接口 天猫API 天猫商品详情api

AnythingLLM - 全功能AI应用,轻松与文档对话

qife122

AI 多用户

使用 Docker Compose 简化 INFINI Console 与 Easysearch 环境搭建

极限实验室

Docker DevOps console easysearch

施工SaaS创业的血泪教训:现金流不健康,我们是怎么陷进去的

前鼻音

20250709: WSL+Pycharm 搭建 Python 开发环境

codists

Python

Golang基础笔记十之goroutine和channel

Hunter熊

golang channel goroutine 有缓冲通道

大数据-36 HBase 增删改查 列族详解 实测

武子康

Java 大数据 hadoop 分布式 HBase

springboot项目集成dolphinscheduler调度器 项目管理

刘大猫

人工智能 算法 DolphinScheduler 调度器 大模型

AutoAgent:全自动零代码LLM智能体框架

qife122

自动化 LLM

Google Cloud Agent Starter Pack

qife122

generative-ai agent-development

中烟创新参编的《数据企业评估规范》标准正式发布

中烟创新

CTF竞赛教会我的那些大学没教的事:从理论到实战的蜕变

qife122

CTF竞赛 实战技能

NocoBase 本周更新汇总:支持自定义聚合变量

NocoBase

开源 低代码 零代码 无代码 版本更新

达梦数据库监控观测最佳实践

观测云

数据库

苹果电脑杀毒软件哪个最好用?MacBook如何杀毒?

阿拉灯神丁

恶意软件 Mac电脑使用教程 mac电脑维护工具 杀毒软件 CleanMyMac X中文

WebGL 开发数字孪生项目的难点

北京木奇移动技术有限公司

软件外包公司 数字孪生开发 webgl开发

vivo Pulsar 万亿级消息处理实践(3)-KoP指标异常修复

vivo互联网技术

Java 大数据 消息队列 pulsar Kafk

猫头虎 推荐:国产开源AI工具 爱派(AiPy)|支持本地部署、自动化操作本地文件的AI办公神器

猫头虎

人工智能 大模型 AI编程 AI 编程 猫头虎

使用 ETL 工具对神舟通用数据库进行数据抽取与转换的实操技巧

谷云科技RestCloud

数据库 数据处理 数据迁移 ETL 神舟通用

体育活动LED大屏:点燃赛场激情

Dylan

LED LED display 世界杯 体育 LED屏幕

非凸底仓增强算法上线国盛证券,开启智能交易新纪元

非凸科技

Drizzle ORM:轻量级数据库工具

溪抱鱼

数据库 Drizzle

助力律师团队持续增长,iCourt跨界论坛走进华为探讨法律行业发展方向

科技汇

Meta 斥资 35 亿美元入股全球最大眼镜商;Proactor AI:实时监听语音对话,主动识别用户需求并自主行动丨日报

RTE开发者社区

告别「一来一往」式对话,Soul App 全双工语音大模型让人机交互更有人情味丨社区来稿

RTE开发者社区

Cloudflare D1 + Drizzle组合拳

溪抱鱼

typescript 数据库

开发加密货币预付卡 App

北京木奇移动技术有限公司

软件外包公司 区块链外包公司 区块链支付

反向海淘系统新篇!Hoobuy同款系统来袭

tbapi

淘宝代购系统 反向海淘系统 淘宝代购系统开发 反向海淘集运系统 hoobuy系统

NocoBase v1.8.0 正式版发布

NocoBase

开源 低代码 零代码 无代码 版本更新

携手同行:中烟创新中标四川信产低代码开发平台项目

中烟创新

Gemini Cli使用教程

溪抱鱼

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