1. 程式人生 > >CSharp和.net的簡單介紹

CSharp和.net的簡單介紹

C#和.net的關係
.net是一個平臺,這個平臺裡面可以支援很多種語言,c#只是其中的一種,.net支援的特性C#不一定支援,C#支援的.net不一定支援比如(運算子過載)。

公共語言執行庫
.net framework的核心是其執行庫執行環境,成為公共語言執行庫(CLR)或.net執行庫。通常將在CLR控制下執行的程式碼稱為託管程式碼(managed code)。CLR執行編寫好的原始碼之前需要編譯他們。.net中編譯分為兩個階段:
(1)把原始碼編譯為Microsoft中間語言(IL).
(2)CLR把IL編譯為平臺專用的程式碼。
它與Java位元組碼是同一中理念,可以快速的轉換成本地機器碼,這種精心的設計有很重要的優點:平臺無關性,提高效能和語言的互操作性。

平臺無關性
目前.net只適合在windows平臺執行,不能像java那樣。但是可以用mono專案跨平臺。

提高效能
IL總是JIT編譯(即時編譯)的。JIT並不是把整個應用程式一次編譯,而是隻編譯它呼叫的那部分程式碼。編譯一次後得到的本地可執行程式就儲存起來,直到退出該程式為止,這樣在下次執行這部分程式碼時就不需要從新編譯了。開發完C#專案進行編譯成中間語言,然後執行時把IL通過JIT根據不同的CPU進行優化後轉換成本地CPU指令,不是全部一次轉換完成,而是執行哪部分就轉換哪部分,當轉換後會儲存在快取中,下次執行的時候直接取,直到程式退出。

語言互操作
可以把其他語言編譯成IL(中間語言),然後就可以通過編譯的程式碼與其他語言編譯過來的程式碼進行互動。

相關推薦

CSharp.net簡單介紹

C#和.net的關係 .net是一個平臺,這個平臺裡面可以支援很多種語言,c#只是其中的一種,.net支援的特性C#不一定支援,C#支援的.net不一定支援比如(運算子過載)。 公共語言執行庫 .net framework的核心是其執行庫執行環境,成為公共語言執行庫(CL

LDAP服務器的概念原理簡單介紹

SM wrap add PE tle 多個 ural pager alc 1. 目錄服務 目錄是一個為查詢、瀏覽和搜索而優化的專業分布式數據庫,它呈樹狀結構組織數據,就好象Linux/Unix系統中的文件目錄一樣。目錄數據庫和關系

3htmlcss簡單介紹

html和css簡單的介紹 1. base標籤 網頁中的所有連結的基礎連結,base標籤裡面的連結會影響頁面中的所有的連結,除非連結設定了協議。 2. form表單 作用:登陸或者註冊,上傳,輸入使用者名稱和密碼。 2.1 form標籤中的常見的屬性 action

Django入門系列之(Django簡介rom簡單介紹)

1 django中app的概念: 大學:----------------- 專案 資訊學院 ----------app01 物理學院-----------app02 ****強調***:建立了app,要在配置檔案中註冊 ...2 模板路徑配置: 1 templates資料夾 2 settings裡註冊一下 3

面試系列:常見的容器listmap簡單介紹

Android 列表資料結構一般常用兩種ArrayList和LinkedList 兩種列表結構主要是根據不同的需求選用。 ArrayList的底層是陣列結構,多用於查詢。這應該也是我們最長使用的資料結構了,因為android中的列表展示資料過於多,配合ListView和R

開源許可協議,開源許可證GPL、BSD、MIT、Mozilla、ApacheLGPL簡單介紹

文章來源: 《開源時代》2010.02 第十七期 借鑑博文: 當Adobe、Microsoft、Sun等一系列巨頭開始表現出對”開源”的青睞時,”開源”的時代即將到來!現今存在的開源協議很多,而經過Open Source Initiative組

Java NIO介紹(二)————無堵塞ioSelector簡單介紹

無堵塞IO介紹 既然NIO相比於原來的IO在讀取速度上其實並沒有太大區別(因為NIO出來後,IO的低層已經以NIO為基礎重新實現了),那麼NIO的優點是什麼呢? NIO是一種同步非阻塞的I/O模型,也是I/O多路複用的基礎,而且已經被越來越多地應用到大型應用伺服器,成為解決

獲得客戶端IP地址IPV6簡單介紹

今天查詢資料庫的表資料時發現有些儲存的IP地址是 ::1,查看了一下原始程式碼是使用Request . ServerVariables [ "REMOTE_ADDR" ]獲得的客戶端IP地址,::1是使用IP v6 的地址格式表示的是回送地址,即本機地址(127.0.0.1)

H264x264簡單介紹

1. 前言 本文分析了 H.264 視訊編碼器的原理,對當今流行的 H.264編碼器進行了比較,以 X264 開源編碼器為例進行了原始碼級的分析,詳細介紹了 X264 中的主要資料結構和函式呼叫關係。本文的分析能使使用者對 H.264 視訊編碼原理有更深入的認識,併為自

Android 加密 MD5Base64簡單介紹

今天瞭解了下加密,因為我的賬號系統的密碼是沒有進行加密的,是將密碼,使用者名稱等資訊作為post引數傳遞的。 MD5加密 先看下MD5加密,網上搜索到了很多方法,我挑一個簡單的方法先展示出來,以後有興趣再深入學習。轉載自:http://blog.csdn.net/rand

qt-qml移動開發之在ios上開發部署app流程簡單介紹

mod target auto 100% rda 自己 color ans ora qt5.3已經全面支持移動開發,除了mac,windows,linux。還支持ios,android,wp,meego等移動平臺,本教程是作者依據自己的經驗,從頭講怎麽樣在ios上公布

步步為營-70-asp.net簡單練習(文件的上傳下載)

public post local 程序 上傳 summary 提交 created lns 大文件的上傳一般通過FTP協議,而一般小的文件可以通過http協議來完成 1 通過asp.net 完成圖片的上傳 1.1 創建html頁面   註意:1 method="post"

Furure的簡單介紹使用

bpa cfb idm fat pwm actions ddl effect knn 引子: 上圖是兩個系統交互的情況,現在我想將對外系統的調用做成異步實現,那麽就需要考慮兩個問題: 主線程可以得到異步線程的結果,在得到結果之後再進行operation-4 ?主線程如何得

TextInputLayout TextInputEditText 的簡單介紹以及使用

watcher 信息 cal line led retext name sign 控件 TextInputLayout 和 TextInputEditText 是屬於 design 包裏面的控件 吶,就是這個:compile ‘com.android.support:des

一致性Hash簡單介紹使用

mes red second count main ace 背景 -- file 背景: 一致性Hash用於分布式緩存系統,將Key值映射到詳細機器Ip上,而且添加和刪除1臺機器的數據移動量較小,對現網影響較小 實現: 1 Hash環:將節點

SpringMvcservlet簡單對比介紹

標簽 word div ron -name ride path eight edi 引言:由於最近要開始springMVC的學習,所以現在先簡單介紹一下springMVC,自己也是一個初學者,所以也有很多不懂,主要是以討論為主。 一、servlet實現登錄。 咱們先來看

Android界面坐標圖示Rect(矩形)簡單介紹

log sof rac android界面 ng- 矩形 blog 介紹 trac Android界面的坐標是以左上角為起始點。平行的為X軸,垂直的為Y軸,數值都是遞增的。例如以下圖所看到的: Android的Rect類是形成一個矩形的區域。區域

SerializableParcelable的簡單介紹

重新 出現 ray listen android lee long tag cti   Serializable和Pacelable接口可以完成對象的序列化過程,當我們需要通過Intent和Binder傳輸數據時就需要使用Parcelable或者Serializable。

Java靜態檢測工具/Java代碼規範質量檢查簡單介紹(轉)

pub 詳細 職責 web 循環 問題: 集成 死鎖 參考 靜態檢查: 靜態測試包括代碼檢查、靜態結構分析、代碼質量度量等。它可以由人工進行,充分發揮人的邏輯思維優勢,也可以借助軟件工具自動進行。代碼檢查代碼檢查包括代碼走查、桌面檢查、代碼審查等,主要檢查代碼和設計的一致

幾個常用規則引擎的簡單介紹演示

規則引擎 drools ilog odm Ilog JRules 是最有名的商用BRMS;Drools 是最活躍的開源規則引擎;Jess 是Clips的java實現,就如JRuby之於Ruby,是AI系的代表;Visual Rules(旗正規則引擎)國內商業規則引擎品牌。今天對比了一下這四個頗