C#,深入淺出全接觸(一)

來源:互聯網
上載者:User

標籤:

一、什麼是 C#? 
C# 是由Microsoft開發的一種新型程式設計語言,由於它是從C和C++ 中派生出來的,因此具有C++的功能。同時,由於是Microsoft公司的產品,它又同 VB一樣簡單。對於web開發而言,C#象 Java,同時具有Delphi的一些優點。Microsoft宣稱:C#是開發.NET架構應用程式的最好語言。 
二、Java與 C# 
要學習C#,不能不首先看一看Java語言。 
相對於其他編程語音,Java有一個無庸置疑的優點:使用者以及編譯器第一次不必瞭解產生可執行代碼的特定CPU細節。Java引入了一個編譯代碼中介層,叫做位元組代碼,並使用一個虛擬抽象的機器,而不是一個真實的機器。當Java編譯器結束了一個源檔案的編譯後,你所得到的不是可以立即在一個給定平台上啟動並執行代碼,而是可以在任何真實的平台上啟動並執行位元組代碼,唯一的條件就是這個平台要理解和支援Java。這些發展包含著一個文化的變革。作為一個開發人員,你只需要確定Java虛擬機器(JVM)提供的抽象層,不同的OS銷售商負責執行代碼層,從而將中立於平台的位元組代碼映射到主機平台的機構中。在這種情況下,Java似乎是統一分散式運算機世界的領袖候選人了。“編寫一次,永遠運行”(並且無論在哪裡)一度成為Java誘人但卻真實的口號。 
那麼為什麼說Java只是“似乎”是一個好東西呢?跨平台理論的發展很好地證明了這一點。我們看到,將Java代碼從一個平台移植到另一個平台—Java這個語言最重要和最受吹捧的特點—並不象宣傳的那樣容易。任何Java平台都有其自己的虛擬機器,它可以理解通用的位元組代碼,並且及時地將其編譯為本地代碼。矛盾由此產生,不同虛擬機器的執行也很不相同,這一點足以使代碼的移植比預期耗費多得多的時間,而且基本上不是自動的。 
那麼,Java模型的好處在哪裡呢?首先,Java是一種先進的、物件導向的語言,包含了預防常見錯誤的內建功能,並在僅僅一兩個對象中攜帶了許多經常需要用到的功能。與C++相比,Java更易於讀寫,不容易出錯,而且更加美觀,但是它速度較慢也不太靈活。想實現在任何軟體和硬體平台上都可虛擬移植,Java儘可能少地使用了公分母模型,也就是說放棄了將每個平台開發到極限的能力。第二,虛擬機器的概念本身就是可移植和可共用的,因此對於分布式環境來說是理想的。Java對於為非Windows平台開發代碼是最好的語言。 
那麼對於Windows平台來說,Java又怎麼樣呢?讓Java適應Windows是不可能的,這是由於Sun的許可約束問題。但是Java實在是太吸引人了,Microsoft比誰都能更清楚這一點。因此,Microsoft又一次採取了“拿來主義”的手法,很好地利用了Java 的眾多特性,隆重推出了Windows平台的新銳力量,它就是相當簡單但十分強大的物件導向的C#程式設計語言。C#超過了C++,它天生就包含了.NET架構類庫中的所有類,並使文法簡單化。 
可以說,Java具備的優點,C#都可以或者都將具備! 
三、C#的主要特徵 
C# 是.NET的關鍵性語言,它是整個.NET平台的基礎。與C#相比,.NET所支援的其它語言顯然是配角身份。比如,VB.NET的存在主要是對千萬個VB開發人員的負責。對於JScript.NET和 Managed C++ 也同樣可以這麼說,後者只是增加了調用.NET類的C++ 語言。C#是唯一沒有在設計思路中加入了前輩語言某種遺傳的新事物。 
.NET平台將 C#作為其固有語言,重溫了許多Java的技術規則。C#中也有一個虛擬機器,叫做公用語言運行環境(CLR),它的對象也具有同樣的層次。但是 C#的設計意圖是要使用全部的Win32 API甚至更多。由於C#與 Windows的體繫結構相似,因此 C# 很容易被開發人員所熟悉。 
Java的目的是要拯救分散式運算世界,C# 則不同。C#本質上是C++的進化產物,使用了包括聲明、運算式及操作符在內的許多C++特徵,但是 C#還有更多的增強功能,比如型別安全(type-Safe)、事件處理、片段帳集、代碼安全性等。在C#中,除了可以使用許多API,更能使用.NET類。特別地是,我們可以處理COM的自動化和C類型的函數。 
C#還讓你調用無管理的代碼,也就是在CLR引擎控制之外的代碼。這種不安全的模式允許你操作原始指標來讀和寫內建片段帳集控制以外的記憶體。 
四、安裝運行環境 
安裝.NET SDK 是在機器上運行C# 的第一步。.NET SDK 可以安裝在Windows ME、Windows NT或Windows 2000上,但是最好的選擇是Windows 2000上。選擇了作業系統後,再執行以下步驟: 
●安裝 IE 5.5 
●安裝Microsoft .NET Framework SDK。它是免費的,可以從以下網站下載.NET Framework SDK. 
●完成以上安裝後,就可以在任何文字編輯器中編寫代碼了,最後儲存為副檔名為.cs的檔案

C#,深入淺出全接觸(一)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.