设计模式反模式:UML图示常见误用案例分析

今天咱们迎来了设计模式的终章--反模式.

目录

01  反模式简介

02  软件开发反模式

03  意大利面条式代码

04  金锤式代码

05  熔岩流式代码

06  复制粘贴或剪切粘贴式编程

07  软件架构反模式

08  重新发明轮子

09  供应商套牢

10  委员会设计


01  反模式简介

软件开发中不良设计主要有4个方面:

1、不动性: 以这种方式开发的应用程序非常难以重用.

2、刚性: 以这种方式开发的应用程序, 任何小的修改会导致软件的大多部分必须进行相应的改动.

3、脆弱性: 当前应用程序的任何更改都会导致现有系统变得非常容易奔溃.

4、粘滞性: 由于架构层面的修改非常困难, 因此修改必须由开发人员在代码或环境本身中进行.

反模式是处理重复出现问题的某些解决方案的后果. 假设你遇到了一个软件设计问题, 然后, 着手解决了这个问题. 但是, 该解决方案是否对设计产生负面影响, 或影响应用程序的性能? 因此, 反模式是应用软件中常见的有缺陷的过程的实现.

反模式产生的原因:

1、开发人员不了解软件开发实践
.

2、开发人员没有将设计模式应用到正确的上下文中.

通过反模式我们可以实现以下目标:

1、识别软件行业中经常出现的问题, 并为其中的大多数问题提供详细的补救措施.

2、开发应用的工具来识别这些问题, 并确定其根本原因.

3、描述可用于应用程序和架构层次上的改进措施

反模式可以分为两大类:

1、软件开发反模式.

2、软件架构反模式.

02  软件开发反模式

在进行软件开发时, 往往会偏离最初的代码结构:

1、开发人员的想法会随着开发过程的推进而发生变化.

2、用例通常会随着客户的反馈而进行更改.

3、最初设计的数据结构可能会随功能或可伸缩性等方面的考虑而发生变化.

由于上述原因, 软件要进行重构. 虽然重构带有许多负面含义, 实际上, 重构是软件开发过程的关键部分之一. 为开发人员提供了一个机会重新评估数据结构, 并重新审视可扩展性和不断变化的客户需求.

我们将列举软件开发和架构中的几种反模式.

03  意大利面条式代码

这是软件开发中最"喜闻乐见"的反模式. 像意大利面条那样复杂. 如果以特殊的方式开发结构, 软件控制流也会变得错综复杂. 意大利面条代码是非常难以维护和优化的.

意大利面条式代码的典型成因包括:

1、对面向对象编程和分析的无知.

2、没有考虑产品的架构

  • 16
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值