我正在考慮自學C#,但我可以找到的所有書籍都是基於官方.NET。我是一個Linux用戶,當然,我的應用程序主要運行在Mono上(儘管xplatform到.NET會很好)。面向.NET上的C#的書會對Mono上的C#有用嗎?C#for .NET和C#for mono有沒有真正的區別?
2
A
回答
4
除了來自小錯誤&角落的情況是不完全一樣的單聲道遵循相當密切的C#規範和有關C#語言將沒有申請任何問題的書。
主要區別在於類庫其中某些部分並不總是以單聲道和其他部分實現,但您不應該使用。
示例是WPF(一種用戶界面庫),不存在於Mono或WinForms(舊的用戶界面庫)中,但在linux下,您應該使用GTK#。
所以,你應該看看你的書究竟講什麼,並選擇功能。一些非常不好的書從如何使用visual studio開始,然後輸入你的第一個WPF hello world,它們顯然是你不想作爲C#linux程序員的東西。
儘管mono項目包含良好的文檔,但查找某些類是否受支持的好方法是瀏覽https://github.com/mono/mono/tree/master/mcs/class上的源代碼,並且如果命名空間不存在或者填充了拋出NotSupportedException的類,那麼您知道不能用它。
如果我會推薦一本書,它會是Mono: A Developer's Notebook它的目標人羣已經編程,並希望學習與單聲道的C#。
2
絕大多數C#/ .Net圖書都適用於其他平臺上的Mono/C#。他們都執行相同的規範。 Mono Develop在其他平臺上也是一個不錯的選擇。
當然,任何特定於平臺的平臺都會有所不同。例如:
- 微軟*命名空間
- P/Invoke來的Win32 API
- COM/COM互操作
下面是關於這一主題的相關線索:
相關問題
- 1. C++ Builder 6和C++ Builder Seatle For IntToStr方法有什麼區別?
- 2. Zlib for Mono/.Net沒有一個已知的校驗和
- 3. sftp for .net c#
- 4. C#.net For()Step?
- 5. C c有沒有區別;和C c = C();?
- 6. graph api和c#SDK for facebook之間有什麼區別
- 7. C#.net和Visual Basic.net有什麼區別?
- 8. C#和.NET有什麼區別?
- 9. Mono for Android安裝沒有繼續..!
- 10. MXML和ActionScript for mobile的真正區別是什麼?
- 11. Perl中'for'和'foreach'有什麼區別?
- 12. Eclipse for Java和RCP有什麼區別?
- 13. CGAL for .Net(或C#)
- 14. Mono for Android LVL和
- 15. DotnetBrowser和Mono for ARM
- 16. 在陰影方面,for each和traditional for for循環之間有什麼區別?
- 17. XSLT to XHTML for C#.NET SyndicationFeed
- 18. Workflowengine或BP-Engine for C#/。NET
- 19. c#(mono,dotgnu)for arm嵌入式問題
- 20. 使用C#mono for android或java?
- 21. .Net和Mono中的C#Task.WaitAll()
- 22. C#中IEnumerable類的foreach和for循環之間的區別
- 23. 託管C++和C#有什麼區別?
- 24. Managed C++和C++/CLI有什麼區別?
- 25. printf中%c和%C有什麼區別?
- 26. \ c和\\ c有什麼區別?
- 27. C++和C++ CLI有什麼區別
- 28. Visual C++和C++有什麼區別?
- 29. &c和* c聲明有什麼區別?
- 30. 區別有和沒有ObjectResult
我鼓勵你閱讀莫諾的常見問題:http://www.mono-project.com/FAQ:_General –