如何解决生产代码中面向方面的C不是C ++
| 这是从上一个问题中进一步得出的一个问题:https://stackoverflow.com/questions/1834485/aspect-iented-programming-aop-in-c-not-c-anyone-doing-it 这个问题的答案为我们指出了皇后大学的一些研究实践: http://sailhome.cs.queensu.ca/~bram/aspicere/index.html。 除了研究工作之外,有人知道生产代码中面向方面的C在现实世界中的用法吗?如果没有,您认为困难在哪里?如果是,那使它不受欢迎的障碍是什么? 我认为AOP的好处显而易见。但是,在AOP-Java流行了十年之后,AOP-C仍然几乎不存在,这一定是有原因的。您对此有何见解?解决方法
经过一番思考后,我相信答案是C缺乏可用于连接方面横切面的结构构造。
为了解决这个问题,一个项目必须施加严格的结构约定,这很难让程序员达成共识。如果确实有程序员同意这样的约定,那么该项目很可能会选择更好的语言。
,我认为主要原因是,在C / C ++中实现AOP的传统方法需要复杂的框架才能使工作正常。
另外,C ++是严格的类型语言,这使得实现比C还要困难。
但是,这是旧时光。新的C ++ 11〜17提供了一些非常强大的功能供您完成所有技巧。
您可以检查以下内容:https://github.com/whitebob/qaop
一个非常轻巧的,仅标头的AOP框架,并且易于使用。
我是这个正在进行的项目的作者,因此,如果您有任何建议或投诉,请与我联系:p
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。