软件开发方法 一结构化分析 二基本术语 1.数据流图(DFD图) 2.数据字典 3.数据流图 顶层(DFD) 0层图 三结构化设计 2.设计阶段和设计内容 四模块化设计 模块结构图(msd) 事务性msd 变换形msd 模块设计原则 :高内聚,低耦合 a.耦合分类(由强到弱) 1.内容耦合:一个模块 ...
分类:
其他好文 时间:
2020-03-10 20:11:36
阅读次数:
122
以往我分析了一些AI加速器的设计,包括TPU,FSD,华为达芬奇等,无一例外都是从已经给出的设计出发,去分析其优缺点和应用范围。在之前的文章中,关于这些设计是如何完成的,其背后是否有一定设计原则和理念的内容均没有进行探讨。而这两点,实则是设计一个优秀的,可持续迭代的加速器的基础。本文将从矩阵加速器出 ...
分类:
其他好文 时间:
2020-03-10 01:43:47
阅读次数:
209
https://cloud.tencent.com/developer/article/1404736 本文由来自美国业界大牛——Robert C. Martin(俗称“Bob大叔) 发布在 butunclebob.com 上,已获得翻译授权。英文原文链接: http://butunclebob.c ...
分类:
其他好文 时间:
2020-03-09 17:54:44
阅读次数:
57
开闭原则的介绍: 1) 开闭原则(Open Closed Principle)是编程中最基础、最重要的设计原则2) 一个软件实体如类,模块和函数应该对扩展开放(对提供方),对修改关闭(对使用方)。用抽象构建框架,用实现扩展细节。3) 当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过 ...
分类:
其他好文 时间:
2020-03-04 09:14:38
阅读次数:
69
从接触DCVS到现在有10多年了,这也是在 Bitbucket 上安家的10年,当初选择它是因为只有它支持免费的私有库。最初 Bitbucket 只支持 Mercurial (我更愿意用Hg这个简单的名字,所以以下都写 Hg 算了),所以我也用了 Hg 十年。后来 Atlassian 收购了 Bit ...
分类:
其他好文 时间:
2020-03-02 19:00:59
阅读次数:
98
1. 先看代码结构 代码行数是否过多 代码是否易读 类名、函数名是否知名见意 代码结构是否满足“高内聚,松耦合” 2. 看设计是否实现了预期的业务逻辑 逻辑是否正确 是否处理了各种异常情况 是否入参、出参是否有校验 2. 再看设计原则、设计思想 是否符合SOLID、DRY、KISS、YAGNI、LO ...
分类:
其他好文 时间:
2020-02-29 15:03:58
阅读次数:
77
一、开闭原则定义 开闭原则(Open Closed Principle,OCP) 一个软件实体如类、模块和函数应该 对扩展开放, 对修改关闭 。所谓的开闭,也正是对扩展和修改两个行为的一个原则。强调的是用抽象构建框架,用实 现扩展细节。可以提高软件系统的可复用性及可维护性。开闭原则,是面向对象设计中 ...
分类:
其他好文 时间:
2020-02-28 22:54:31
阅读次数:
190
在本 Java OOPs 概念教程中,我们将学习四种主要的面向对象原则 抽象、封装、继承和多态性。它们也被称为面向对象编程范式的四大支柱。 1. _ 抽象 _是在不考虑无关细节的情况下公开实体基本细节的过程,以降低用户的复杂性。 1. _ 封装 _是将数据和对数据的操作捆绑到一个实体中的过程。 1. ...
分类:
编程语言 时间:
2020-02-23 21:52:03
阅读次数:
71
程序设计七大原则 一、开闭原则 ? 针对我们设计的功能模块对扩展开放,对修改关闭:利用面向接口(抽象)编程(多态的特性),实现对功能需求扩展的同时,不允许更改原来的代码。提高对象的可复用性、可维护性、灵活性。 ? 抽象的说,用抽象思维构建我们想要创建的实体对象,用具体实现去扩展实体对象的细节实现。 ...
分类:
编程语言 时间:
2020-02-23 18:22:13
阅读次数:
91
一、设计原则是什么? 有句话叫“人民群众是历史的创造者”,他的意思我理解为任何的理论都是基于具体的客观展现总结出来的,没有人民创造的既定事实,就无法出现任何的有理有据的理论模型。 对于面向对象的软件设计,最著名的一本书就应该是当年gof的那一本《设计模式:可复用面向对象软件的基础》。设计模式是面对具 ...
分类:
其他好文 时间:
2020-02-23 16:43:04
阅读次数:
89