国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

[讀書筆記]C#學(xué)習(xí)筆記一:.NetFramwork

2019-11-14 13:36:33
字體:
供稿:網(wǎng)友

前言: 
一次偶然的機會  在園子里看到@Learning hard 出版的一本書: <<C#學(xué)習(xí)筆記>>, 然后買來 一直到現(xiàn)在讀完, 感覺很不錯, 適合入門, 書中內(nèi)容是從C#1.0 到5.0. 很全面也很細致.

下面就來分享一下這本書中自己感覺需要記錄的一些東西. 

這里先貼上@Learning hard本人在博客園的主頁: http://www.survivalescaperooms.com/zhili/    
以及本書中的一些知識點: http://www.survivalescaperooms.com/zhili/category/421637.html  

 

一: .Net Framework

1.1.Net Framework 就是應(yīng)用程序運行時的執(zhí)行環(huán)境, 為應(yīng)用程序的執(zhí)行提供一下幾種服務(wù):

  >全面的類庫
  >內(nèi)存管理
  >通用類型系統(tǒng)
  >開發(fā)結(jié)構(gòu)和技術(shù)
  >語言互操作性  

1.2 .Net Framwork的組成

  1.公共語言運行時

    公共語言運行時是.Net Framwork的核心基礎(chǔ). 我們可以將CLR看成一個在執(zhí)行時管理代碼的代理, 它提供了內(nèi)存管理, 線程管理和異常處理的服務(wù), 而且還負責(zé)對代碼實施嚴(yán)格的類型安全檢查, 保證了代碼的正確性. 我們將受CLR管理的代碼稱為托管代碼(managed code), 將不受CLR管理的代碼稱為非托管代碼(unmanaged code).

    CLR包含兩個組成部分: 通用類型系統(tǒng)(Common Type System, CTS)和公共語言規(guī)范(Common Language Specification, CLS).

 

1.3 .Net Framwork 類庫就是一組DLL程序集的集合.

 

1.4 C# 代碼的執(zhí)行過程

  >C#代碼編譯為中間語言代碼的階段

    在編譯C#代碼時, C#的編譯器(VS中集成了C#編譯器)把代碼譯為通用中間語言(Common Intermediate Language, CIL)代碼

  >中間語言代碼編譯為本季代碼的階段

    要使C#代碼能夠運行, 還需進一步將CIL代碼轉(zhuǎn)換為特定CPU的機器碼, 該過程由即時編譯器(Just-In-Time, JIT)來完成.

  ●并不是只有C#代碼才能夠被編譯為中間語言代碼, 其他面向.Net的語言在執(zhí)行之前也都需要先編譯為中間語言代碼. 該過程由編譯器來完成.

  ●JIT編譯生成本機代碼之后, 編譯好的代碼會被放置到一個緩沖區(qū)緩存, 下次再調(diào)用相同的代碼時, 可直接運行緩存區(qū)中現(xiàn)有的本機代碼, 從而避免重新驗證IL代碼以及把它編譯成本機代碼的過程. 使用這種方法, 系統(tǒng)只在首次調(diào)用時才會造成一些性能損失(即發(fā)生JIT過程).

 

C#代碼編譯為中間語言代碼階段: 

中間語言代碼編譯為本機代碼階段

PS: 今天本來想寫更多內(nèi)容的, 但是時間已經(jīng)不早了.  這里還欠缺幾張圖片, 明天再來補上, 有時間的話會分享一下在工作中學(xué)習(xí)的東西: 比如遠程Debug, sql PRofiler等.


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 祁连县| 江西省| 中山市| 郓城县| 大宁县| 岱山县| 南乐县| 南川市| 招远市| 化隆| 合江县| 库尔勒市| 桃江县| 焦作市| 杭州市| 盖州市| 星座| 宜都市| 武宣县| 香格里拉县| 丰台区| 榆林市| 荆门市| 南安市| 武穴市| 通江县| 文登市| 大余县| 新郑市| 佛教| 三亚市| 新源县| 惠州市| 罗甸县| 略阳县| 奉新县| 伊宁市| 衡阳市| 海晏县| 黄骅市| 铁岭市|