C++代碼生成器:xsd2cc
Xsd2cc是一個霸氣的C++代碼生成器,直接從指定的XML數據格式定義文件(.xsd)生成對應的C++類代碼,然后將這些代碼和xsd2cc庫結合(自帶的),就可以非常方便的寫XML數據解析了(未來準備自動生成)。Xsd2cc是基于C++的對象模型構建的,僅僅依賴libxml庫,支持快速、高效的XML文檔解析。Xsd2cc是由STL實現,無異常,無需手工內存管理,安全、可靠,簡單易用。
根據作者大量調查分析,目前xsd2cc是此類場景下最好用的C++開源軟件。如果你正在處理類似的場景,xsd2cc正是你需要的,千萬不要錯過。高效的自動化代碼生成才是王道,才是應對變化的秘密武器。Xsd2cc在GPL下開源,歡迎使用和反饋。
Xsd2cc的主要產出物:
(1)xsd2cc: 可執行程序,用于從.xsd生成C++代碼文件;
(2)libxsd2cc.a: 業務編寫所需的靜態庫;
(3)xsd2cc.h: 業務編寫需要的API文件(已include到自動生成的代碼中)。
xsd2cc的主要特色:
(1)從指定的.xsd文件,生成高效的C++類代碼,以解析xsd對應的各種XML數據;
(2)支持XML的序列化和反序列化操作。通俗的講,就是XML的讀和寫;
(3)提供業務編寫所需的靜態庫xsd2cc和自描述的API文件;
(4)構建于C++對象系統之上,僅依賴于C++ STL,無需手工內存管理,安全可靠;
(5)生成的代碼遵從Google C++編碼規范,表里如一;
(6)具備良好的跨平臺移植能力(當然 Windows 除外);
(7)在GPL下開源。
xsd2cc的缺點:
(1)僅針對C++應用。
xsd2cc的TODO:
(1)多文件處理支持:進一步優化xsd語法中 include和import的支持;
(2)自動化生成XML讀寫代碼邏輯,減少用戶編寫代碼的量;
(3)代碼優化。
預知詳情,請訪問 http://xsd2cc.github.io 并參考 https://github.com/xsd2cc/xsd2cc/tree/master/tests 下的測試代碼。