簡體   English   中英

生產代碼中面向方面的C(非C ++)

[英]Aspect Oriented C (not C++) in Production Code

這是從上一個問題中進一步得出的一個問題: 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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM