通用Linktable模块的接口参见上文中软件模块链表的接口范例linktable.h,对应的实现代码linktable.c
视频menu4-1.mp4
将通用的Linktable模块集成到我们的menu程序中后menu.c源代码
视频menu4-2.mp
在使用通用的Linktable模块之后menu程序业务代码变得复杂了一些,使用起来比较繁琐,是因为我们的接口定义的还不够好,后面我们会进一步改进接口设计。
1.简约而不简单——代码规范和代码风格
1.1.实验项目介绍
1.2.代码风格的原则:简明、易读、无二义性
1.3.编写高质量代码的基本方法
1.3.1.通过控制结构简化代码
1.3.2.通过数据结构简化代码
1.3.3.一定要有错误处理
1.3.4.性能优先策略背后隐藏的代价
1.3.5.拒绝修修补补要不断重构代码
1.3.6.编码过程中的团队合作
1.4.测试题
2.模块化软件设计
2.1.模块化的基本原理
2.2.模块化代码的基本写法
2.3.传统单体集中式架构与微服务架构
2.4.软件设计中的一些基本方法
2.4.1.KISS原则
2.4.2.使用本地化外部接口来提高代码的适应能力
2.4.3.保持设计结构和代码结构的一致性
2.5.测试题
3.可重用软件设计
3.1.消费者重用和生产者重用
3.2.接口的基本概念
3.2.1.软件模块接口举例
3.2.2.微服务接口举例
3.2.3.接口与耦合度之间的关系
3.2.3.1.公共耦合
3.2.3.2.数据耦合
3.2.3.3.标记耦合
3.2.4.同步接口和异步接口
3.3.可重用软件模块的接口设计范例
3.3.1.通用Linktable模块的接口设计
3.3.2.给Linktable增加Callback方式的接口
3.3.3.进一步改进Linktable的Callback方式的接口
3.4.通用接口定义的基本方法
3.4.1.参数化上下文
3.4.2.移除前置条件
3.4.3.简化后置条件
3.5.测试题
4.可重入函数与线程安全
4.1.线程的基本概念
4.2.函数调用堆栈
4.3.可重入函数
4.4.什么是线程安全?
4.5.Linktable软件模块的线程安全分析
5.子系统的可重用设计
5.1.menu子系统的可重用接口设计
5.2.Makefile工程文件
5.3.带参数的复杂命令函数接口的写法
6.工程化编程实战总结
6.1.看待软件质量的几个不同角度
6.2.软件设计的方法和原则
参考资料
推荐阅读:
推荐阅读:
完整课程点击下方【阅读原文】