写点什么

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

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

关注

评论

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

快速了解什么是MES系统

万界星空科技

工业互联网 制造业 生产管理系统 mes 万界星空科技

百度文库行业首发「智能画本」功能,跨模态AI内容创作行业领先

极客天地

实战指南:API 集成测试详解

Apifox

测试 后端 集成测试 API 测试工具

如何用ByteHouse,实现金融场景下的精准营销

极客天地

赛前辅导 | 职场<火焰杯>测试开发大赛赛前辅导-Web自动化测试

测吧(北京)科技有限公司

测试

事业-最佳实践-架构-降低系统复杂度

南山

架构设计 架构设计原则 设计原则 复杂度 系统复杂度

NFTScan 正式上线 Mint NFTScan 浏览器和 NFT API 数据服务

NFT Research

NFT NFTScan API 文档

MySQL 社区经理:MySQL 8.4 InnoDB 参数默认值为什么要这么改?

爱可生开源社区

MySQL 新特性 MySQL 8.4

京东面试:如何进行JVM调优?

王磊

Java

现代前端工程化实践:Git、Husky、Commitlint与PNPM的协同作战

秃头小帅oi

什么是DNS缓存投毒攻击,有什么防护措施

德迅云安全杨德俊

【FAQ】HarmonyOS SDK 闭源开放能力 —Map Kit(2)

HarmonyOS SDK

HarmonyOS

事业-最佳实践-架构-泛化建模

南山

领域驱动设计 DDD 领域建模 领域模型 泛化

事业-最佳实践-架构-理解软件架构的意义

南山

架构 软件架构

事业-最佳实践-架构-框架选型

南山

框架 技术选型 框架选型

自如开启国际化租房业务布局,中国经验能否复制到全球?

Alter

一文了解npm install -g和npm install --save-dev的关系

华为云开发者联盟

JavaScript 前端 华为云 华为云开发者联盟 企业号2024年5月PK榜

万界星空科技QMS系统如何管理车间产品的质量

万界星空科技

质量管理 万界星空科技 QMS 生产质量

报名倒计时丨职场<火焰杯>测试开发大赛报名仅剩最后3天!

测试人

软件测试

一键自动化博客发布工具,用过的人都说好(头条篇)

程序那些事

工具 程序那些事 自动发布

企业如何做好 SQL 质量管理?

爱可生开源社区

sql SQL审核 SQLE SQL质量

赛前辅导 | 职场<火焰杯>测试开发大赛赛前辅导-Web自动化测试

测试人

软件测试

EIP-3074:革新以太坊授权方式的里程碑

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

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