软件架构已经成为每一个软件项目的重要组成部分,架构师需要在构建可靠的软件体系结构时,确定系统的主要组成部分,考虑这些部分如何组合在一起,并在设计这些系统时做出关键决策。
开发人员更专注于底层细节,例如类和方法,而架构师则侧重于高层细节,例如组件之间的交互,持久层应该如何表现以及重要的系统设计决策等,这也是软件架构师和高级开发人员的***区别,许多开发人员都是朝着架构师的方向提升自己
今天就和大家推荐一个后端架构师技术图谱,内容真的是太全面了,整个知识图谱涵盖的方面比较多,各个方面都有———architect-awesome
从最基础的数据结构、算法、操作系统、设计模式到并发、运维、测试、中间件、网络、安全、性能、数据库全都有,当然也包括系统的分布式、项目管理这些全都有囊括。
- 数据结构
- 常用算法
- 并发
- 操作系统
- 设计模式
- 运维 & 统计 & 技术支持
- 中间件
- 网络
- 数据库
- 搜索引擎
- 性能
- 大数据
- 安全
- 常用开源框架
- 分布式设计
- 设计思想 & 开发模式
- 项目管理
- 通用业务术语
- 技术趋势
- 政策、法规
- 架构师素质
- 团队管理
- 资讯
- 技术资源
每一个部分又划分为若干个小点,逐一讲解,非常细致,比如数据结构底下还有队列、集合、链表、数组、字典、关联数组、栈、树、BitSet
目前,这一份后端架构师技术图谱已经在Github上获得 35258个Star,10793个Fork(github地址:https://github.com/xingshaocheng/architect-awesome)
此外,在这个项目里面还推荐了一份Java技术书籍大全,Java入门书籍,Java基础及进阶书籍,框架与中间件,架构设计,设计模式,数学与算法,JVM周边语言,项目管理&领导力&流程,职业素养与个人成长,格局与视野,面试参考书等。
这份书单已经收录 277 本 Java相关领域经典技术书籍,从初级开发者到资深架构师,涵盖 Java 从业者的各个阶段,并持续更新。(Github地址:https://github.com/sorenduan/awesome-java-books)