分析架构中的每个零件:零件考虑的是需求(作用是什么,用来做哪些事,不会被用来做哪些事)和规格(接口是什么样的,如何跟其他零件连接在一起)
架构思维:架构的第一步是需求分析,抓住稳定点(核心能力)和变化点(做扩展性);
编程语言的发展历程 二进制-->汇编-->
编程语言是人类知识传承的一次进化:书籍只能是平面化的记录,而程序声音,视频,交互等还原和模拟。
编程范式的进化:
--》过程式(以一条条命令的方式让计算按我们的意愿进行执行)
--》函数式:对过程式编程的一种约束,它最核心的主张就是变量不可变,函数尽可能没有副作用
--》面向对象:在过程式的基础上引入对象(类)和对象方法(类成员函数),它主张尽可能把方法(过程)归纳到合适的对像(类),不主张全局函数(过程)。
面向对象的特点:
1、清晰的使用界面:
2、信息封装:不使用接口入侵到对象的内部实现细节
3、接口,实现了多态
4、继承:继承与组合的使用方法判断
--》面向连接:go的特点,核心就是组合
其他方面的进化:
-->工程化进化
架构的宏观设计(摘自许式伟学架构)
架构设计时的对使用开发语言选择考虑因素:开发效率,后期维护