首页 > 其他分享 >阅读笔记四月第一篇

阅读笔记四月第一篇

时间:2023-04-14 21:24:06浏览次数:42  
标签:理想 第一篇 高层 笔记 特征 一些 设计 四月 底层

一个理想的设计的特征

这一章我主要了解了一个理想设计的特征,书中是这样说的:

   一个理想的设计的特征是怎样的呢? 他们有一些共同的特征,这里罗列里一些,虽然都是一个一个的点,但你可以以此针对你做出的设计一一对照一下。
1)最小的复杂度:你的设计得很容易看懂,很清晰明了,而不是自作聪明的用一些高深的东西。
2)易于维护:你的设计是自说明的,一目了然的,不需要太多的解释,让别人看到你的设计后很少会问你一些问题。
3)松散耦合:模块间的关联很少,这样可以减少集成,测试和维护的工作量,应用合理的抽象,封装,信息隐藏等做到松散耦合。
4)可扩展性:你的设计不是死的,在不大动底层结构的情况下,可以增加一些有可能增加的功能。
5)可重用性:如果做出一个通用模块,就可以在其它项目里重用了。
6)高扇入:第一次听这个词,就是一些少数的底层的工具类,会被上层大量的类使用。
7)低扇出:一个类使用其它类的数量尽量少,如果多的话,这个类就会很复杂。
8)可移植性:尽量避免用特定平台,特定语言的特性来进行设计,当然这个看具体情况。
9)精简型:不做过度设计,对一些很少可能出现的情况进行设计。
10)层次性:好的设计一般是分层的,可以从每个层次去观察系统,而不用知道下一层的详细,可能理解起来比较难,我觉得大概就是高层类和低层类的意思吧, 底层类就类似基础组件,高层类就是调用底层类实现业务逻辑,高层类设计的时候只要知道底层类提供什么功能就行了,不必知道底层类的细节。
11)标准技术:尽量使用标准的,大家熟悉的技术。

标签:理想,第一篇,高层,笔记,特征,一些,设计,四月,底层
From: https://www.cnblogs.com/louwangshayu/p/17319973.html

相关文章

  • Nacos笔记(二):Nacos的应用
    Nacos官网:https://nacos.io/zh-cn/index.html。1、注册中心1.1、项目搭建创建新项目,项目结构如下:  父项目下有两个子项目nacos-9001、nacos-9002。1、POM依赖父项目POM文件:<parent><groupId>org.springframework.boot</groupId><artifactId......
  • Nacos笔记(一):环境搭建
    1、Nacos下载登录Nacos官网:https://github.com/alibaba/nacos/releases,下载Nacos服务及源码,这里下载的是Linux版本:         nacos-server-2.2.0.zip是Windows版本。2、Linux部署单机版Nacos服务将下载的tar.gz上传......
  • 多元函数微积分期中复习复盘笔记
    多元微积分期中目录多元微积分期中极限与连续定义重极限与累次极限的关系例题多元函数的泰勒公式可微、全微分与偏导数向量值函数的可微性标量函数的可微性、全微分与偏导数雅各比矩阵可微与偏导数连续的关系例题方向导数与梯度方向导数梯度方向导数与梯度的关系例题多元复合函数......
  • elk学习笔记-elasticsearh-head插件以及elasticsearch-dump
     测试使用的elasitcsearch版本是6.3nodejs版本10.9linux版本为centos7.9elasicsearh-head插件Head插件是Elasticsearch的图形化界面工具,通过此插件可以很方便的对数据进行增删改查等数据交互操作。在Elasticsearch5.x版本以后,head插件已经是一个独立的WebApp了,所以不需要和Elasti......
  • GAMES101笔记-02
    上节课已知旋转θ角度时用矩阵表示为  那么如果要旋转-θ度,则将θ全部替换为-θ,得到结果为  此时这个矩阵正好与原来矩阵的倒置相同 当一个矩阵的逆等于这个矩阵的转置,将其称为正交矩阵。    三维空间的变换三维空间的旋转操作在三维空间中本身矩阵是3*......
  • MySQL学习笔记-索引
    索引索引(index)是帮助MySQL高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构上实现高级查找算法,这种数据结构就是索引。无索引的查找:全表扫描(将整张表遍历一遍),性能......
  • 运维笔记--玩转Zabbix监控系列
    立个flag,准备更新一套关于Zabbix监控系列的笔记,方便对zabbix感兴趣的同学或者运维小伙伴提供参考。先上个图:内容主要基于zabbix6.0,涉及如下:(一). Zabbix安装-CentOS7.6源码安装Zabbix6.0(二).Zabbix安装-图形界面配置(三). Zabbix安装-字体乱码问题处理(四). Zabbix展......
  • 学习笔记402—Warning: Stopping docker.service, but it can still be activated by:
    执行systemctlstopdocker后提示“Warning:Stoppingdocker.service,butitcanstillbeactivatedby:docker.socket”解释:这是docker在关闭状态下被访问自动唤醒机制,很人性化,即这时再执行任意docker命令会直接启动注:如果真的不希望docker被访问自动唤醒,执行systemct......
  • 学习笔记401— 无法创建新虚拟机: 无法打开配置文件“D:\VMware\CentOS.vmx”: 拒绝
    无法创建新虚拟机:无法打开配置文件“D:\VMware\CentOS.vmx”:拒绝访问问题今天下午在创建新的虚拟机的时候,当我操作到最后一步【完成】时出现如下图的拒绝访问。问题分析及解决方案当看到拒绝访问时,第一时间想到的是权限问题,这时才反应过来我并没有使用管理员身份运行,所......
  • 自学Python爬虫笔记(day6)
    环境python3.9版本及以上,开发工具pycharm XPath解析:XPath是一门在XML文档中查找信息的语言,XPath可以用来在XML文档中对元素和属性进行遍历,而我们熟知的HTML恰巧属于XML中的一个子集,所以完全可以用XPath去查找html中的内容。首先看:<book><id>1</id><name>野花遍地......