繼Jeff和Joel關於插件體系結構的討論之後。.Net和插件體系結構
C++中的插件(使用運行時加載的dll)總是有點痛苦。你必須做很多基礎工作才能啓用它們,然後插件也必須用C++編寫,通常甚至使用相同的編譯器。 COM對象和ActiveX解決了一些這些問題,但引入了一些自己的問題。
然後向C++應用程序添加一個python接口是一項大量的工作。
我正確地認爲用一種.Net語言編寫的所有庫(或程序集或任何你稱之爲它們)總是可以從另一個.Net語言調用嗎?數據類型是否可以自動在它們之間傳輸?
大概因爲所有.Net語言也使用WinForms(或WPF)作爲gui,所以給予主應用程序gui的插件訪問也相對簡單。
對不起,如果這是一個相當明顯的一點,我只是一個老式的C++程序員。但通過C++/CLI重用現有C++庫的容易性使我相信C#/ .Net可能值得更多的調查。
編輯 - 謝謝,我期待討論插件是否是去.Net的原因。能夠編寫ironpython,同時讓我的商業用戶能夠在VB中編寫一個簡單的插件,並且技術用戶能夠在F#中巧妙地編寫一些東西,而不需要我做更多的工作似乎是從C++切換的一個很好的理由
感謝這是一個關於插件是否是.IL – 2009-08-02 00:10:38