TA的每日心情 | 开心 2024-9-19 21:14 |
---|
签到天数: 757 天 [LV.10]以坛为家III
管理员
- 积分
- 1312677
|
许式伟的架构课 极客时间
极客时间出品的《许式伟的架构课》由许式伟所作,许式伟是七牛云CEO,《许式伟的架构课》课程作者。本专栏课程将从源头出发,带你重新理解架构设计。
《许式伟的架构课》背景介绍
每一位程序员都有一颗成为架构师的心。
但是,很多人对于“架构”的理解,还停留在产品经理出需求,架构师依据产品设计给出实现,也就是所谓的架构设计方案这一阶段。
这一点恐怕是个误解。架构关乎整个工程,以及实现它的人,又因团队的能力而异。
同时,架构也关乎用户需求,作为架构师,我们不仅要知道当前用户的需求是什么,还要对需求未来可能出现的变化做出合理预判。
预判什么会发生,而什么一定不会发生。其中,后者更为重要,只有做到这一点,才能真正防止架构的过度设计,把简单的事情复杂化。
所以,想要成长为优秀的软件架构师,关键在于四个字:掌控全局
掌控全局,就是要对系统的全貌了然于胸,在自己心中重新构建出整个世界。而不是一上来就沉浸在某个技术的实现细节中,除非它影响了你对这个世界构建过程的理解。
当你了解了世界的脉络和骨骼,你的感觉将完全不同,因为,你已经成为了世界的构建者。而架构的本质,不正是构建和创造么?这种透过层层代码的业务层级,窥见整个信息世界的来龙去脉的能力,才是架构师的终极能力。
我们现在所在包罗万象的信息世界,正是在最底层的冯·诺依曼的基础体系上搭建而成,我们熟知的架构,则是最上层的业务架构。
《许式伟的架构课》作者介绍
对于架构师来说,不只需要想清楚业务应该怎么做分解,实际上,整个应用从底层的操作系统、编程语言到顶层的业务架构,每一层都需要进行各种决策。
作者许式伟,七牛云 CEO,超过 19 年的互联网从业经验,曾在金山、盛大从事技术研究方面的工作,是 WPS 2005 的首席架构师。他在 2011 年创办了七牛云,成功打造了全新的公有云存储服务。首席架构师口传心授,带你重新理解架构设计,一起成为信息世界的创造者。
《许式伟的架构课》模块介绍
专栏共 58 讲,分为 6 大模块。
基础平台
如果把应用程序比作一座大厦,那大厦的架构师就需要把大厦的结构搭建好,让程序员可以把砖填充进去。而一个大厦的结构建得是否稳固,与其地基密不可分。基础平台模块就是介绍与应用程序相关的“地基”,这其中包括冯·诺依曼体系结构、操作系统、计算机体系结构等。
桌面端与服务端平台
对于架构师来说,不是只需要想清楚业务应该怎么做分解。实际上,整个应用从底层的操作系统、编程语言到顶层的业务架构,每一层都需要进行各种决策。这两个模块会开启全局视角,帮你理解桌面端应用和服务端应用体系结构以及核心逻辑。
架构思维
思维方式对于一个人来说至关重要,同样,具备架构思维也是让你脱颖而出的关键。这一模块将会介绍架构师必须掌握的架构思维方法论,每一个架构师都应该把这些架构思维内化为自己的基本功,比如架构和业务的关系、架构的边界、重构、接口设计的准则等等。
通用架构范式
日常在编程中经常会遇到一些通用的问题,比如错误跟踪、缓存、文本处理,这些问题和领域关联性并不大,但又至关重要。这一模块将会系统讲解这些问题的最佳解决方案,以及背后的关键思路。
软件工程
架构师的关键目标是交付结果,所以架构师的着眼点一定不只是技术、业务这些内容,还应该包括团队协同、过程管理等等。这一模块将会重点介绍软件工程和架构的关系。
《许式伟的架构课》课程大纲
0.开篇词-怎样成长为优秀的架构师?
第一章 基础平台
架构设计的宏观视角
大厦基石:无生有,有生万物
汇编:编程语言是怎么诞生的?
编程语言的进化逻辑是什么?
操作系统的价值是什么?
操怍系统之输入设备
操作系统之输出设备
操作系统之存储设备
操作系统之进程管理
网络设备:连接世界的桥粱
安全管理:数字世界的守护
总结与回顾
第二章 桌面端平台
桌面开发的宏观视角
窗口系统与事件处理
为什么会有通用控件?
浏览器的价值点是什么?
小程序和PWA是想解决什么问题?
桌面幵发的未来展望
总结与回顾
第三章服务端平台
服务端开发的宏观视角
负载均衡的架构逻辑是什么?
存储中间件
数据库
对象存储
日志管理
监控与报聱
发布与版本管理
容器带来的计算革命
云计算
服务端开发的未来
总结与回顾
第四章架构思维
架构优劣的判断标准
少谈点框架,多谈点业务
边界,不断重新审视边界
架构的分解过程
全局性功能的架构设计
设计文档
开闭原则
接口设计的准则
架构老化与重构
总结与回顾
第五章通用架构范式
不断完善的架构范式
锗误跟踪与排查
文本处理
Undo/Redo 设计
高并发设计
缓存设计
业务的可支持性
总结与回顾
第六章软件工程
软件工程的宏观视角
团队的共识管理
阅读别人的代码
发布单元与版本管理
单元测试
持续构建与持续发布
云服务与外包管理
总结与回顾
|
|