From b7739f760258eccfc32af4490e36e24cd97fb640 Mon Sep 17 00:00:00 2001 From: xiaojiazhu <258828110.@qq.com> Date: Fri, 21 Jul 2023 19:22:15 -0700 Subject: [PATCH] backup. --- doc/design.md | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/doc/design.md b/doc/design.md index c3ede04..c5756de 100644 --- a/doc/design.md +++ b/doc/design.md @@ -58,7 +58,21 @@ libLogAbstract.a -->> -User:return ``` **只有main函数实际调用实例库的实例化接口时,log功能才会生效。** -#### 1.4.1.3. 多态单例总结: +#### 1.4.1.3. 多态单例目录结构规范 +   根据多态单例设计模式,指定使用多态单例模式开发的模块的源码目录结构,耦合思路清晰。 +``` +└── Log // 多态单例模式模块的目录 + ├── abstract // 多态单例模式抽象接口声明 + │   └── ILogAbstract.cpp + ├── include // 多态单例模块对外暴露的头文件目录,抽象接口定义 + │   └── ILogAbstract.h + └── src // 多态单例接口实例代码,目录名称可根据实际功能定义 + ├── LogAstract.cpp + └── LogAstract.h +``` +   构建时把abstract目录和src目录的源码分别编译成库,main线程根据实际需要链接并实例化即可。 + +#### 1.4.1.4. 多态单例总结: 1. 应用代码只使用抽象接口,禁止直接依赖实例代码; 2. 应用代码只有在main线程初始化时实例化实例模块即可; 3. 多态单例模块由两个库组成,一个是抽象接口库,一个是实例代码库,支持静态多态和动态多态;