大白话讲解设计原则及其优缺点

滴答滴:设计原则我是边学边记录,有问题的欢迎大家指出。学习的过程中会借助AI工具,我想说的是我们要把AI工具当作一个学识渊博的学者或者一个便捷的工具,同时要敢于质疑它,不能盲目的觉得对方说的一定是正确的,因为有时它的回答不见得是正确的,我们要带着自己的思考去使用AI工具,不断的和它对话和探讨,最终得出我们想要的答案。

一.设计原则

设计原则是在软件开发过程中,为了提高代码的可扩展性、可维护性、可重用性、易理解性和易测试性,而遵循的一系列指导性原则。

1.单一职责原则

一个类或者一个模块只负责完成一个功能或者任务。这意味着如果一个类承担了过多的功能,那么当其中一个功能需要改变时,可能会影响到其他功能。

大白话:想象你是一名厨师,你的工作是准备晚餐。如果你不仅要负责烹饪,还要负责买菜、洗碗、打扫厨房等所有与晚餐相关的工作,那么当你需要改变晚餐的菜单时,可能会影响到你买菜、洗碗等其他工作的安排。为了避免这种情况,你可以将晚餐的准备工作拆分成多个任务,分别由不同的人或系统来完成,比如一个人负责买菜,一个人负责烹饪,另一个人负责清洁工作。

优点

  • 降低类的复杂度:类只负责单一职责,逻辑简单,易于理解和维护。
  • 提高可维护性:当需要修改或扩展功能时,只需关注相关类,减少对其他部分的影响。
  • 提高复用性:职责单一的类更容易被其他项目或模块重用。

缺点

  • 可能导致类的数量增加:过度遵循此原则可能会使系统中类的数量过多,增加系统的复杂性。
  • 过度设计:有时为了遵守单一职责原则,可能会将本来可以合并的职责拆分开来,导致设计过于琐碎。

2.开闭原则

软件实体(如类、模块、函数等)应该对扩展开放,对修改关闭。这意味着当需要添加新功能时,应该通过扩展现有的软件实体来实现,而不是修改它们。

大白话: 假设你有一台智能手机,它支持各种应用程序。当你想要使用一个新的应用程序时,你不需要修改手机的硬件或操作系统,只需要下载并安装这个新的应用程序即可。这就是开闭原则的一个例子,手机的设计允许你通过扩展(添加新的应用程序)来增加功能,而不需要修改手机的核心部分。

优点

  • 提高软件稳定性:通过扩展而非修改来增加新功能
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值