架构设计与架构思维
前言 会打狗棒法的不一定是丐帮帮主,比如杨过。 不会打狗棒法的不一定就不能当丐帮帮主,比如乔峰。 架构设计不一定要有一个架构师的头衔,有架构师头衔的人不一定就懂架构,或者有机会真正参与架构设计。对于程序员来说,即使没有架构师的 title,我们也可以练好架构的功夫,只要武功高强,一样潇洒地行走江湖。接下来,聊一聊架构的一些东西 一、好的架构师有什么特点 技术好。至少代码容易读,容易扩展,重用性好,这不仅需要学习面向对象和设计模式,还要通过大量的编码实践,不单单是停在纸上谈兵的阶段 懂得业务。不了解业务,就不能设计出贴合业务的架构,而行业的相关知识也不是短时间能积累起来的。良好的沟通能力。架构师需要沟通确认需求,需要让团队理解架构设计。有架构思维。懂得用抽象、分治、复用、 迭代等思维降低软件复杂性 二、什么是架构思维 降低软件复杂性,有几种有效的方式:抽象、分治、复用和迭代,架构思维就是这几个的集合 1. 抽象思维 架构是为了满足业务需求而存在,需要通常是一些文字性的描述、原型、UI 设计图,这些最终都会变成代码让机器执行。我们必须先进行抽象,把需求变成计算机能识别的模型。例如,抽象出各个用户、订单、内容等模型,划清各个角色的责任以及对象交互的方式,隐藏很多无关紧要的细节。 2. 分治思维 对复杂的系统分而治之,分解为小的、简单的部分。例如针对高并发场景