DotGNU是GNU Project的一個退役的部分,旨在為Free Software Foundation提供微軟.NET Framework的免費軟體替代品,該項目的其他目標是更好地支持非Windows平台並支持更多的處理器。
DotGNU項目代碼庫的主要目標是提供一個符合100%通用語言規範(CLS)的類庫。
基本介紹
- 中文名:DotGNU
- 作用:GNU Project的一部分
框架結構,免費軟體,DotGNU和微軟的專利,
框架結構
Portable .NET類庫旨在為應用程式開發提供工具。 這些主要是用C#編寫的,但由於通用語言規範,它們可以被任何.NET語言使用。 類似於.NET,類庫被構造成命名空間和組件。它還有其他頂級命名空間,包括Accessibility和DotGNU。 在一個典型的操作中,Portable .NET編譯器生成一個公共語言規範(Common Language Specification,CLS)映像,如ECMA-335第6章所述,可移植.NET運行庫獲取該映像並運行它。
免費軟體
DotGNU指出它是免費軟體,它著手確保DotGNU的所有方面最大限度地減少對專有組件的依賴,例如調用Microsoft Windows的GUI代碼。 DotGNU是2007年7月31日至2008年10月2日的高優先權免費軟體項目之一。
DotGNU和微軟的專利
DotGNU對未提交給ECMA進行標準化的.NET堆疊的這些組件的實現項目的大部分時間內一直是專利侵權問題的根源。尤其是,微軟是否可以通過專利訴訟破壞DotGNU項目進行了討論。
提交給ECMA的基礎技術可能沒有問題。這些問題主要與微軟在.NET Framework之上開發的技術有關,例如ASP.NET,ADO.NET和Windows Forms(請參閱非標準化命名空間),即組成DotGNU Windows兼容性堆疊的部分。這些技術尚未在DotGNU中完全實現,並且不需要開發DotGNU應用程式。
在2009年,微軟在Apache License 2.0版本下發布了.NET Micro Framework,其中包含專利授權。但是,.NET Micro Framework是CLR的重新實現,以及用於嵌入式設備的基本類庫的有限子集。此外,Apache許可中的專利授權只會保護.NET Micro Framework的貢獻者和用戶,而不是像DotGNU或Mono等替代實現的用戶和開發人員。2014年,微軟在Apache許可證下發布了下一代官方微軟C#編譯器Roslyn。那年晚些時候,微軟宣布官方.NET Framework的“重啟”。該框架將基於.NET Core,包括根據MIT許可證發布的官方運行時和標準庫,以及明確保護接收方免受Microsoft擁有的有關.NET Core專利的專利授權。