我正在設計一個專爲解決各種問題而設計的類庫。關於這個庫的一件事是它可以在本地使用幾種不同的語言和環境。例如,將會有一個完全用C++編寫的C++版本,用C#編寫的.NET版本和用Java編寫的Java版本,彼此之間沒有任何依賴關係......與使用C++編寫核心庫並簡單地提供.NET和Java綁定到它。如何整合不同語言/環境下的文檔?
每個不同形式的圖書館都有不同的解決方案,但有時甚至是非常相似的一組問題。例如,可能有許多類的成員在每種語言中的功能都是相同的,並且也會有很多類只會出現在圖書館的一個或兩個語言版本中,而不會出現在其他語言版本中。採取代表程序版本號的類或結構。 .NET已經有類(System.Version
),所以我不會將它包含在我的.NET版本中,但C++和Java庫將提供一個。
我面臨的問題是,對於存在於大多數或全部版本的庫中的類,文檔將保持相對相同(顯然)。針對Version結構的C++版本和Java版本的簡要文本應該類似於「以major.minor.build.revision的形式表示軟件版本號」......類似於詳細的類描述,以及所有成員的「文檔等。如您所知,.NET,Java和C++都有自己的文檔語法。有沒有什麼辦法可以嘗試以與語言無關的方式整合文檔(而不是單獨編寫文檔與源代碼 - 例如手動文檔,而不是使用doxygen/sandcastle/javadoc生成文檔)還是我堅持複製並粘貼相同的文本到每個版本的源文件?
+1,但我不會說C++有自己的文檔語法,除非你的意思是doxygen--但doxygen的大量語法配置選項使它幾乎不是一個標準。 – soulmerge 2010-06-19 07:40:02