历史
软件历史
- 机器语言:直接使用二进制码0和1进行编程
- 汇编语言:清晰了,仍需要了解底层
- 高级语言:程序员不需要再关注及其底层
- 第一次软件危机:软件逻辑复杂。提出软件工程、结构化程序设计(自顶向下、模块化),控制复杂度
- 第二次软件危机:软件扩展跟不上硬件。面向对象流行
软件架构历史
软件架构出现:随着软件系统规模的增加,计算相关的算法和数据结构不再构成主要的设计问题;当系统由许多部分组成时,整个系统的组织,也就是所说的软件架构,导致了一系列新的设计问题。
只有较大规模的软件系统才会面临软件架构相关的问题:
- 系统规模庞大,耦合严重,开发效率低
- 耦合严重,扩展、修改难
- 逻辑复杂、排错困难
架构并非必要,也不一定提升效率,也不一定能促进业务发展。不能因为需要架构而硬上架构。
架构设计的真正目的是降低软件的复杂度。
举例分析
需求
大学学生管理系统,包括登录、注册、成绩管理、课程管理等。
分析
- 性能:访问频率不高,性能不怎么复杂。MySQL胜任。
- 可扩展性:该类系统功能基本不便,可扩展性不复杂。
- 高可用:宕机影响不大,负载均衡不需要;数据需要高可用,因此使用主备方案。
- 安全性:不是强隐私,中等强度。
- 成本:几台服务器足够。
根据以上分析,可得架构:
总结回顾软件和架构的发展历史,重申架构的真正目的,举例分析架构设计的目的和方法。
先这样吧
若有错误之处请指出,更多地关注煎鱼。
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦