设计模式-单一职责原则

对于这一原则,准确的解释是:对于一个类而言,应该仅有一个引起它变化的原因。

我们在编程中,很容易会把一堆职责堆砌到同一个类里面,让这个类有很多种功能。**如果一个类承担的职责过多,就等于把这些职责耦合在一起。一个职责的变化,可能会削弱或抑制这个类完成其他职责的能力。**这种耦合会导致脆弱的设计。当变化发生时,设计会遭受到意想不到的破坏。

想象我们要做一款游戏,如果我们把界面显示、游戏逻辑判断、数据库访问等等,都写在同一个类里面。那当我们要将这个游戏移植到不同的平台的时候,或者我们想要换用另一种数据库的时候,就会非常困难,无从下手。因为这些内容都耦合在了一起。移植到不同的平台,主要是显示逻辑的改变,游戏的基本逻辑是没有变的,数据库访问也是没有变的。但如果它们和显示逻辑混在了一起,那么移植起来难度就非常大了。这就是单一职责原则。

在Web编程中,MVC的概念,其实也是单一职责原则的一种体现,让每一层都专心做自己的事情。在没有这个分层的时候,我们所有的代码都可以写在JSP中,界面显示、逻辑处理、数据库访问等等。这样如果我们要复用一块逻辑,就只能将代码复制出去。这样非常不利于维护,会导致大量的重复代码。而且一旦这一块逻辑需要修改,那么所有被复制过去的代码,都要修改。一不留神就会漏掉一些,导致隐藏的BUG出现。

让一个类能做的事情更加简单单一,这样才会让软件更加易维护、易扩展、易复用。

### 升级 Ubuntu 20.04 LTS 到 24.04 LTS 的步骤 Ubuntu 系统的升级是按顺序进行的,因此必须首先将系统从 Ubuntu 20.04 LTS 升级Ubuntu 22.04 LTS。完成此步骤后,才能进一步升级Ubuntu 24.04 LTS [^1]。 #### 步骤一:升级Ubuntu 22.04 LTS 在执行任何升级之前,请确保备份重要数据以避免意外丢失。 1. 更新当前系统的软件包列表并安装所有可用更新: ```bash sudo apt update && sudo apt upgrade -y ``` 2. 安装 `update-manager-core` 包(如果尚未安装): ```bash sudo apt install update-manager-core ``` 3. 检查是否可以升级到下一个版本: ```bash sudo do-release-upgrade -c ``` 4. 如果确认可以升级,则执行实际的升级过程: ```bash sudo do-release-upgrade ``` 5. 按照屏幕上的提示完成升级过程,并重启计算机。 #### 步骤二:升级Ubuntu 24.04 LTS 一旦您已经成功升级到了 Ubuntu 22.04 LTS,接下来就可以继续升级Ubuntu 24.04 LTS。 1.Ubuntu 22.04 上重复第一步中的命令来更新和升级现有的软件包。 2. 使用以下命令检查是否有新的发行版可供升级: ```bash sudo do-release-upgrade -c ``` 3. 执行系统升级命令: ```bash sudo do-release-upgrade ``` 4. 遵循屏幕上的指示完成升级过程,并重新启动您的计算机。 ### 注意事项 - 在开始升级之前,建议清理不必要的软件包和缓存,以减少潜在的问题: ```bash sudo apt autoremove sudo apt clean ``` - 如果遇到问题提示没有可用的 LTS 开发版本,需要编辑 `/etc/update-manager/release-upgrades` 文件并将 `Prompt` 设置为 `normal` [^3]。 - 可以使用 `lsb_release -a` 命令来查看当前运行的 Ubuntu 版本 [^3]。 ### 示例代码 以下是用于更新和升级的基本命令汇总: ```bash # 更新软件包列表 sudo apt update # 升级已安装的软件包 sudo apt upgrade -y # 清理不再需要的软件包 sudo apt autoremove # 清除本地存储的软件包缓存 sudo apt clean # 检查是否存在新版本 sudo do-release-upgrade -c # 开始升级到新版本 sudo do-release-upgrade # 查看当前Ubuntu版本 lsb_release -a ``` 请根据实际情况调整这些命令,并仔细遵循升级过程中提供的指导。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值