我知道设计模式通常与 OO 编程相关,但是您在进行 C 编程时是否有一些经常使用的模式?
我对经典面向对象模式的简单翻译不感兴趣,请不要提及 Duff 的设备。 ;-)
我最喜欢的是“Patterns in C”系列亚当·托恩希尔 http://www.adamtornhill.com:
- 一流的ADT http://adampetersen.se/Patterns%20in%20C%201.pdf
- State http://adampetersen.se/Patterns%20in%20C%202,%20STATE.pdf
- Strategy http://www.adampetersen.se/Patterns%20in%20C%203,%20STRATEGY.pdf
- Observer http://www.adampetersen.se/Patterns%20in%20C%204,%20OBSERVER.pdf
- Reactor http://www.adampetersen.se/Patterns%20in%20C%205,%20REACTOR.pdf
另外:我总是想到goto
作为装饰器模式的一个伟大的穷人工具。
Update: 我强烈推荐使用Rust (rust-lang.org https://www.rust-lang.org/en-US/) or Zig (Ziglang.org https://ziglang.org/) 而不是 C,除非您需要使用 c。 Rust 具有 c 的所有优点,包括速度和与 c 的二进制库兼容性,但编译器处理大部分复杂性以确保代码内存安全并且不包含数据竞争。它也是可移植的,具有用于常见任务的标准库,并且更容易针对各种设计模式进行编程。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)