2010-05-10 30 views
1

好吧,所以在StackOverflow中的初始搜索顯示沒有任何相關的問題。所以在這裏:最簡單的方法開始在網點

讓我們假裝你剛剛開始從事計算機編程的職業生涯。讓我們說,無論出於何種原因,您決定使用.Net框架作爲編程的基礎。我們還要說,你已經接觸過一些編程背景,但沒有一個是.NET的,所以在你看來,這似乎是陌生的。最後,你沒有25年的Win32 API暴露的好處,這就解釋了爲什麼當你開始看它時,它對你來說顯得很陌生。

所以問題是:

  1. 什麼是.NET是什麼樣的全面概述?它似乎是一個運行時環境,一組語言,一組通用庫以及其他一些東西的組合......所以它就像泥巴一樣清晰。具體來說,.Net的關鍵組件是什麼?
  2. 什麼是最簡單的方法來理解.Net編程有關可用的API?
  3. 哪種語言最適合從微軟提供的「股票」語言開始編程? (C++,C#,VB等)
  4. 。程序語言中的.Net編程和編程有什麼區別(又名Pascal,Modula等)
  5. .Net編程和編程有什麼區別一種「傳統」的面嚮對象語言? (又名Smalltalk,Java,Python,Ruby等)
  6. 正如我目前所瞭解的那樣,CLR爲所有其他語言運行提供了基礎。 CLR有哪些固有的侷限性?
  7. 考慮到要覆蓋的API數量巨大,考慮到您之前沒有接觸過Win32編程,是否值得使用.Net語言(使用Microsoft API)?
  8. 假設您使用.Net編寫營利性計劃。您可以轉售該程序而不會遇到許可問題嗎?
  9. 假設你用.Net編寫一個免費(免費)程序。您能否以「免費」許可(GPL,BSD,藝術等)的方式向公衆提供該程序,而不會違反許可問題?

預先感謝您的耐心等待。

+1

這對於一個問題來說太多了,但作爲一個從未使用過Win32 API的人,我發現它是一個非常低的從C#開始的入門障礙。至於8&9,對兩者都是(看看Mono - http://www.mono-project.com/) – 2010-05-10 04:54:30

回答

3

鍵控您的問題:

1).NET代碼的Web服務器(ASP.NET),客戶端應用程序的完整的框架(Microsoft和單聲道),和Silverlight上運行的應用提供了一些操作的系統。您使用哪些部件以及核心部件取決於您正在構建的應用程序。

2)見#1 - 您通常使用Web服務器上運行比你使用哪種語言取決於你想做的事,你喜歡哪種編程模型是什麼客戶

3)不同的API。它們從函數式編程(F#)到adhoc管理腳本(PowerShell),以及C#,VB.NET和.NET框架支持的動態語言(IronPython和IronRuby)都有所不同。最好的文檔和最流行的語言可能是C#。

4)取決於你使用哪種語言 - VB提醒我一種程序語言,但這可能就是我。 5).NET支持IronPython和IronRuby,可能還支持JSharp。底層框架庫是不同的,但我相信語言語義是相似的。

6)CLR並不是無處不在 - 儘管在Mono項目和Silverlight之間定期添加更多平臺。

7)除非你打算在IL中編程,否則.NET不是一種語言 - 它更像是一個運行時環境。 .NET框架類比原生的Win32 APIs更容易學習和使用,我知道大多數.NET程序員從未使用Win32進行編程。

8)是 - 許多大型的商業軟件版本使用的是.NET技術編寫的

9)是 - 看CodePlex上和SourceForge上 - 有許多.NET開源項目

1

如果您已經有一些編程經驗,Microsoft Visual Studio C#教程對C#和.Net有很好的介紹。

0

什麼是 的全面概述.Net是什麼?它似乎是一個運行時環境, 一組語言, 庫的常見組合,以及可能還有其他一些 事物的組合 ......因此它與 泥漿一樣清晰。具體來說,什麼是.Net的關鍵 組件?

CLR Via C#將解釋這一點和更多。

由於我目前的理解,CLR 提供所有 其他語言上運行的基礎。什麼是 CLR的一些固有侷限性 ?

上面的這本書將教你所有你需要知道的CLR。