“经历设计在前,成为架构师在后”。在成为架构师的路上,程序员必须要多看、多想,并试着自己设计,慢慢积累感觉,进而积累经验。然而,好的架构不是设计出来的,而是演进出来的。不同公司或同一家公司的不同时期面临的问题不同,呈现出来的架构也不一样。一千个架构师心里有一千种最好的架构。今天给大家推荐几本成为架构师的路上必看的好书。构建架构知识体系1、《架构之道:软件构建的设计方法》作者:[美] 居瓦
一、背景  在整理现有负责的系统结构时候,总是感觉有些不协调感,但又说不上来,大家都用的相同的约定,熟悉的框架和结构,底层组件也管理的十分规整有序,但系统给人的“嘈杂”感觉始终无法消除,无意中发现自己买来就一直在吃灰的《架构整洁之道》,决定苦修一下基本功,好好研读一下。二、阅读概览1、整理这本书的目录结构   通读整本书,虽然书里已经将目录分解成了五个章,但我从一个开发者的角度分析,我觉
这周读了《架构整洁之道》,有不少收获和启发,是本不错的架构方面的书籍,可以开阔视野巩固知识,值得技术人阅读。Bob大叔围绕“架构整洁”这一重要导向,系统地剖析其缘起、内涵及应用场景,涵盖软件研发完整过程及所有核心架构模式。全书分为6部分,第1部分纲领性地提出软件架构设计的终极目标,描述软件架构设计的重点与模式;第2~4部分从基础软件构建编程范式的定义和特征出发,讲到设计原则、组件构建原则,进一步描
转载 2023-07-21 16:32:29
352阅读
程序员书库(ID:CodingBook)编译链接:https://medium.com/better-programming/clean-code-5-essential-takeaways-2a0b17ccd05cBob叔有一句名言:任何一个傻瓜都能写出计算机可以理解的代码,惟有写出人类容易理解的代码,才是优秀的程序员。Bob叔的《代码整洁之道》相信大家都不陌生,2008年出版,一直被亚马逊评为
第3部分 设计原则如果建筑的架构设计不佳,那么其所用的砖头质量再好也没有用。这就是SOLID设计原则所要解决的问题。SOLID原则的主要作用就是告诉我们如何将数据和函数组织成为类,以及如何将这些类链接起来成为程序。我们为软件构建中层结构的主要目标如下:使软件可容忍被改动。使软件更容易被理解。构建可在多个软件系统中复用的组件。SOLID原则应该直接紧贴于具体的代码逻辑之上,这些原则是用来帮助我们定义
第5部分 软件架构第15章 什么是软件架构软件架构师自身需要是程序员,并且必须一直坚持做一线程序员,绝对不要听从那些说应该让软件架构师从代码中解放出来以专心解决高阶问题的伪建议。也许软件架构师生产的代码量不是最多的,但是他们必须不停地承接编程任务。如果不亲身承受因系统设计而带来的麻烦,就体会不到设计不佳所带来的痛苦,接着就会逐渐迷失正确的设计方向。设计软件架构的目的,就是为了在工作中更好地对这些组
以下是译文过去几年间有许多关于系统架构的观点。比如:1 六角架构(​​Hexagonal Architecture​​​ )。 这种架构是由Alistair Cockburn提出的,并由Steve Freeman和Nat Pryce在他们的书《​​Growing Object Oriented Software​​ 》中提到。2 洋葱架构(​​Onion Architecture​​ )。提出者是
转载 2015-04-08 20:41:00
102阅读
2评论
# 整洁架构之道 ## 介绍 整洁架构(Clean Architecture)是由Robert C. Martin提出的一种软件架构思想,旨在实现可维护、可测试、可扩展的系统。整洁架构主要关注系统的分层和依赖关系,帮助开发者更好地组织和管理代码。 在这篇文章中,我将向你介绍整洁架构的实现过程,并提供每一步的具体代码示例和解释。 ## 整洁架构的流程 整洁架构的实现可以分为以下步骤: 1.
原创 2023-08-26 07:17:27
186阅读
这本书是小编去年阅读的一本书,觉得很不错当时就将其中的一部分内容整理总结了一下,绘制了下图在团队内部进行了分享。 最近又温顾了一下,还是很受启发。 决定将总结分享给大家,也方便小编经常打开来回顾一下(要不是又看到这本书就快要忘记这个总结了) 感兴趣的小伙伴也可以买来看一下(当当有卖,刘琛梅老师的著作),本书即适合初涉测试的小伙伴全面了解测试,也适合有一定经验的同学查漏补缺,找到自己的不足总结重点一
《整洁架构之道》,大作,力荐。原著大概可以分为原则、策略、细节三部分,本博文总结前两部分,第三部分多为对第二部分中论点的进一步阐述,详见原著。如果想跳过本篇概念性的东西直接看策略,详见:《整洁架构之道》读书笔记(二)策略Part1 总览1.现象:为什么软件开发越来效率越低?程序员没有偷懒。真正偷懒的地方在于:持续低估好的、设计良好的、整洁的代码。不要迷信开发完再重构:烂代码随时有可能让开发团队陷入
一、设计思维的四条原则1、以人为本:设计的本质是社交、软件即为人所用,也依靠人开发。架构设计除了最终用户外,还有最终用户要帮助的人、编码的程序员、测试人员、项目经理、产品经理等。所以,架构师除了要成为出色的架构师外,还要是出色的沟通者和领导者。2、推迟决策:推迟不确定的决策,工程上的“模凌两可”是危险的,设计决策必须准确、清晰。模糊的需求、设计、承诺会毁掉项目。因此,不到条件成熟的最后一刻,不要急
上周天,闲来无事,我随意浏览 GitHub 时,偶然发现一个非常流行的库,它有超过 10k 的 commits。我不打算说出其“真名”。即使我了解项目的技术栈,但代码本身在我看起来还是有点糟糕。一些特性被随意放在名为"utils"或"helpers"目录里,淹没在大量低内聚的函数中。大型项目的问题在于,随着时间发展,它们变得愈加复杂,以至于重写它们实际上比培训新人让他们真正理解代码并做出贡献的成本
原创 2021-05-20 13:15:37
2688阅读
这篇文章作者尝试使用简单的观点将各种架构的共通之处和最终目标说清楚。全文要说清楚的就是一件事“如何写出整洁的架构”。作者希望在架构系统的时候只需要秉持最简单的两个观点(分层和依赖规则)开发,就能开发出干净整洁的系统架构。以下是译文​​​过去几年间有许多关于系统架构的观点。比如:1 六角架构(​​Hexagonal Architecture​​​ )。 这种架构是由Alistair Cockburn
原创 2022-01-18 15:22:25
473阅读
整体式架构构建整体式架构一直是默认的建筑风格。我的意思是,一开始我们每个应用程序都有一个文件,然后我们开始拥有包含多个文件的应用程序,直到1990年代,我们才开始看到由其他应用程序组成的应用程序(尽管第一次实验是在1980年代)。巨石本身进化了。当应用程序开始使用多个文件构建时,没有太多关于它们的推理,也不需要这种推理,因为应用程序相对简单。随着应用程序变得越来越大,越来越复杂,需要对要创建的文件
作者 | Angad Sharma策划 | 万佳整洁架构是结构化代码的好方法,这样就可以不必在意敏捷迭代或快速原型所带来的复杂性,并且它与数据库、客户端接口和框架无关。本文是一个 Clean Architecture(架构整洁之道)的实用指南。上周天,闲来无事,我随意浏览 GitHub 时,偶然发现一个非常流行的库,它有超过 10k 的 commits。我不打算说出其“真名”。即使我了解项目的技术
原创 2021-04-17 17:04:03
850阅读
这篇文章作者尝试使用简单的观点将各种架构的共通之处和最终目标说清楚。全文要说清楚的就是一件事“如何写出整洁的架构”。作者希望在架构系统的时候只需要秉持最简单的两个观点(分层和依赖规则)开发,就能开发出干净整洁的系统架构。以下是译文​​​​ 过去几年间有许多关于系统架构的观点。比如:1 六角架构(​​Hexagonal Architecture​​ )。 这种架构是由Alistair Cockbur
转载 2018-11-09 19:35:00
96阅读
一,设计和架构高层架构和底层设计不可分割,共同定义了整个软件系统。软件架构的终极目标是,用最小的人力成本来满足构建和维护该系统的需求。软件工程师真正偷懒的地方在于——持续低估那些好的、良好设计的、整洁的代
原创 2021-12-27 10:47:11
414阅读
目标用最少的人力成本满足构建和维护该系统的需求衡量指标版本迭代 -- 工
原创 2022-10-14 11:37:10
129阅读
目标用最少的人力成本满足构建和维护该系统的需求衡量指标版本迭代——工程师团队规应该和变更的...
原创 2022-09-18 08:23:45
721阅读
Android架构Android架构的目的是通过隔绝业务逻辑和外部变化以实现关注点分离,这样,就可以在不借助任何外部单元依赖的情况下对业务逻辑进行测试。为了达到这个目的,我的方案是将整个项目划分为3层,每一层都有各自明确的意图并且各层独立工作。值得说明的是每一层都使用各自独有的数据模型,这样才能实现各层之间独立工作(查看代码,你会发现我们需要数据映射器(data mapper)来实现数据的转换,这
转载 2024-01-25 21:08:32
136阅读
  • 1
  • 2
  • 3
  • 4
  • 5