本书主题

  • 介绍什么是优秀的软件架构,以提高软件架构质量
  • 介绍系统架构的各种属性与成本和生产力的关系,以采用好的设计和架构以便减少构建成本

好的软件架构可以带来什么?

  • 大大节省软件项目构建与维护的人力成本
  • 每次变更:改动少,易于实施,不容易出bug
  • 用最小的成本,最大程度满足功能性和灵活性(这也是软件架构的终极目标)

软件架构的难吗?

  • 软件架构设计是非常困的,需要大多程序员所不具备的经验和技能

  • 做一个好的软件架构师所需要的自律和专注程度让大部分程序员始料未及

设计与架构有什么区别?

  • 设计就是架构,架构就是设计,二者没有任何区别!

  • 底层设计细节和高层架构信息是一系列决策组成的连续体,是不可分割的。

软件开发的一个核心特点

  • 要想跑得快,先要跑得稳

软件的两个价值维度

  • 行为价值

  • 架构价值

架构价值更重要,尤其是对架构师来说。架构师要关注系统的整体结构,创建出一个可以让功能实现起来更容易、修改起来更简单、扩展起来更轻松的软件架构。

《架构整洁之道》学习笔记 Part 1 概述的更多相关文章

  1. OGG学习笔记01-基础概述

    OGG学习笔记01-基础概述 OGG(Oracle Golden Gate),最近几年在数据同步.容灾领域特别火,甚至比Oracle自己的原生产品DataGuard还要风光,主要是因为其跨平台.跨数据 ...

  2. spring学习笔记(一) Spring概述

    博主Spring学习笔记整理大部分内容来自Spring实战(第四版)这本书.  强烈建议新手购入或者需要电子书的留言. 在学习Spring之前,我们要了解这么几个问题:什么是Spring?Spring ...

  3. Flink学习笔记:Connectors概述

    本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz ...

  4. postgresql修炼之道学习笔记(1)

    好好学习吧. 本笔记 仅作为摘要记录 前两章,主要是数据库对比和安装等. 对比,就比多说了,总是和别人比较,会显得自己身价低,呵呵. 安装也有很多文章,不多说. 第二章提到了一些简单的配置, 其在 d ...

  5. 《Hadoop大数据架构与实践》学习笔记

    学习慕课网的视频:Hadoop大数据平台架构与实践--基础篇http://www.imooc.com/learn/391 一.第一章 #,Hadoop的两大核心:     #,HDFS,分布式文件系统 ...

  6. postgresql修炼之道学习笔记(2)

    随后的章节  介绍了基础的sql,这个我略过了,我喜欢在开发的时候,慢慢的研究,毕竟有oracle的基础. 现在,学习psql工具 使用create database创建数据库的时候,出现如下问题: ...

  7. 我读<代码整洁之道>--读书笔记整理

    第一章 整洁代码 "我可以列出我留意到的整洁代码的所有特点,但其中有一条是根本性的,整洁的代码总是看起来像是某位特别在意他的人写的.几乎没有改进的余地,代码作者设么都想到了,如果你企图改进它 ...

  8. 企业IT架构转型之道 读书笔记-1.阿里巴巴集团中台战略引发的思考

    前言 1.为什么选择看这本书 2.Supercell公司的开发模式 3.“烟囱式”系统建设模式弊端,及产生这种现象的原因 4.IT人员在企业信息中心的组织职能 一.为什么选择看这本书 多日没有更新博客 ...

  9. 代码整洁之道读书笔记(Ch4-Ch7)

    这几章从注释.程序格式.对象与数据结构的规范以及错误处理四个方面介绍了如何使代码变得简洁易懂.不同于上次摘抄的方法,这一次我会结合第一次个人作业的代码进行分析. 第四章  注释 这一章告诉我们,好的注 ...

  10. PHP安全之道学习笔记1:PHP项目安全设置

    在全球范围来看,超过了80%的网站是使用php进行搭建的,由于脚本语言和早期版本设计的诸多原因,php项目存在不少安全隐患.从配置选项来看,可以做如下的优化. 1.屏蔽PHP错误输出. 在/etc/p ...

随机推荐

  1. bash解释器特性、目录结构、命令种类及优先级、常用命令

    bash解释器的交互式环境特性 命令和文件自动补全 注意:Tab只能补全命令和文件及其文件路径 [root@localhost ~]# ls /etc/sysconfig/network-script ...

  2. Java 魔法值处理的四种方法

    Java 魔法值处理方案 魔法值的定义 方法一 静态常量(不推荐) 方法二 接口中定义 方法三 定义在实体类 方法四 使用枚举类 enum 总结 魔法值的定义 魔法值是Java中突兀出现在代码中的常量 ...

  3. idea修改默认maven配置

    idea修改默认maven配置 方法一 (不推荐) 打开project.default.xml文件,在其中加入如下几行配置. 代码如下 保存修改之后新建一个maven项目查看效果 方法二 新增Proj ...

  4. ABC322 A-F 题解

    前言 为什么 ABC 天天出原题. 为什么 D 题这么答辩. A 直接找. 赛时代码 B 模拟. 赛时代码 C 对于每一个节日从后往前扫到上一个节日. 赛时代码 D 搜索,不需要任何剪枝,直接爆搜. ...

  5. Swagger系列:SpringBoot3.x中使用Knife4j

    目录 一.简介 二.版本说明 三.使用 四.效果图 一.简介 官网:https://doc.xiaominfo.com/ Knife4j是一个集Swagger2 和 OpenAPI3 为一体的增强解决 ...

  6. Unity 代码调用重新生成csproj文件

    结论 先放结论:editor代码中直接调用 Unity.CodeEditor.CodeEditor.CurrentEditor.SyncAll(); 原因 在一些操作后,比如修改csc.rsp的内容之 ...

  7. 浅析SpringBoot加载配置的6种方式

    从配置文件中获取属性应该是SpringBoot开发中最为常用的功能之一,但就是这么常用的功能,仍然有很多开发者抓狂-今天带大家简单回顾一下这六种的使用方式: 说明 Environment对象 Envi ...

  8. C++常见算法&数据结构模版

    各种常见算法 & 数据结构模板 1. 最长不下降子序列(LIS) 1.1 \(O(n^2)\) 做法 点击查看代码 for (int i = 1;i <= n;i++) { cin &g ...

  9. 将.View.dll文件反编译出来的*Views*.cs文件转换成.cshtml

    先使用反编译工具将.View.dll文件反编译放入文件夹,然后将文件夹整体复制进\src\viewcs2cshtml\viewcs2cshtml\bin\Debug\net6.0\viewcs 复制完 ...

  10. 《最新出炉》系列初窥篇-Python+Playwright自动化测试-25-处理单选和多选按钮-中篇

    1.简介 上一篇中宏哥讲解和介绍的单选框有点多,而且由于时间的关系,宏哥决定今天讲解和分享复选框的相关知识. 2.什么是单选框.复选框? 单选按钮一般叫raido button,就像我们在电子版的单选 ...