2010-03-19 38 views
10

PocoCapsule當前狀態是什麼?它在不斷演變嗎?它是否與其他產品分開 ? 關於IoC for C++的整個想法是什麼?如果PocoCapsule不是 不斷髮展,是因爲IoC被認爲對C++沒有用,不安全, 其他模式出現或者其他?什麼是PocoCapsule當前狀態?

據我瞭解有2-3個,也許一些更多的產品,也 實施國際奧委會C++,可與 PocoCapsule是最成熟的人。

我看到在當前版本的幾個缺點(我看到它的1.1 谷歌代碼):

  1. 沒有單獨的命名空間。
  2. 頭文件需要在INCLUDE文件夾中正確 - 最好將它們放在子文件夾中。
  3. 生成工具依賴於Java。
  4. 默認情況下不會創建靜態鏈接庫。
  5. 如果我不需要重新配置功能,無法從setup.xml生成源代碼進行編譯並鏈接到我的應用程序。

有沒有人有同樣的想法?有沒有人在 這個清單上工作?是否有任何障礙開始工作,如專利?

回答

3

我通過電子郵件發送了柯金(維護者),他的回覆是,截至2011年7月14日,它並沒有處於當前積極的發展狀態。他沒有給出理由。

2

我一直在尋找這個我自己一段時間了,並且認識到在C++中沒有好的IoC容器。實施這個有很多問題。獲得類似C#IoC容器(Castle Windsor,Unity等)是遙不可及的。我的猜測是,如果你需要這樣的東西,你不會做C++。如果你使用C++,你可以自己製作或使用單身工廠(小玩笑);)

一個簡單的捷徑是使用Qt的QML。它是爲聲明式UI構建的,但可用於構建任何基於QObject的樹。

另一個好看的是CORBA Systems for C++,它們可能有一些你需要的東西。

只是我的提示其他地方看看......

+0

+1提到QML作爲可能的候選人。 – 2013-09-08 05:41:08

0

我認爲你可以成功使用Qt元對象系統通過重用QtCore庫和建設部編譯器在應用程序中。

使用元對象系統,您可以通過調用QMetaObject::invokeMethod()的任何模塊接口方法創建完全隔離的模塊。

而且所有工作都沒有QCoreApplication對象實例!將模塊定義爲QObject的子類,提供Q_OBJECT宏並用Q_INVOKABLE標記所有接口方法(當然,您應該在構建步驟中添加moc-compiler)。

相關問題