。
NET提供了一個(gè)運行環(huán)境,叫做公共語(yǔ)言運行時(shí)(CLR)。CLR管理代碼的執行并使開(kāi)發(fā)過(guò)程變得更加簡(jiǎn)單。
CLR是一種受控的執行環(huán)境,其功能通過(guò)編譯器與其他工具共同展現。 自描述組件的一個(gè)主要優(yōu)點(diǎn)是,使用它們并不需要其它文件。
類(lèi)的定義不需要單獨的頭文件;通過(guò)檢查原數據對類(lèi)的定義可以從組件自身獲得。 跨語(yǔ)言或過(guò)程邊界訪(fǎng)問(wèn)組件并不需要各自的IDL文件、類(lèi)型文件或proxy/stubs;所必需的信息已存在于元數據之中。
為識別開(kāi)發(fā)者請示的服務(wù)屬性,并不需要展開(kāi)各自的配制信息。 最主要的是,由于元數據是在編譯過(guò)程中由源代碼生成,并與可執行代碼儲存在一起,它將永遠和可執行部分同步。
除了改善對單個(gè)組件的配制,Microsoft 。NET框架定義了一個(gè)應用程序配制模板,以解決定置應用程序安裝和DLL版本化(通常被稱(chēng)為“DLL Hell”)這一復雜過(guò)程的問(wèn)題,運行語(yǔ)言提供了支持這個(gè)模板的服務(wù)。
Microsoft 。 NET框架 引入了組合體的概念。
一個(gè)組合體是一組資源和類(lèi)型,并包括有關(guān)這些資源和類(lèi)型的元數據,也就是被作為一個(gè)單元配制的。元數據被稱(chēng)為組合體的名單,它包含象類(lèi)型和資源表之類(lèi)能被組合體外看得見(jiàn)的信息,這個(gè)名單也包括有關(guān)從屬關(guān)系之類(lèi)的信息,例如組合體建立時(shí)的版本號。
開(kāi)發(fā)人員可以指定版本策略,以指示運行語(yǔ)言是否裝入系統上已安裝的依賴(lài)于組合體的最新版本,裝入一個(gè)指定版本,或在編譯時(shí)使用的版本。 某軟件組件的多個(gè)拷貝總可以存在于同樣的操作系統上,然而,通常說(shuō)來(lái),只有其中的一個(gè)拷貝能被操作系統注冊、調入內存、執行。
對系統來(lái)說(shuō),定位和調入內存的策略是全局性。
NET Framework Common Language Runtime 增加了所必須的體系架構以支持管理組件定位和調入的每個(gè)應用程序策略,這通常被稱(chēng)為并行配制。 組合體可以被一個(gè)應用程序私有,或被多個(gè)應用程序共享。
一個(gè)組合體的多個(gè)版本可以同時(shí)配制在同一臺機器上。應用程序配制信息定義了到何處去查找組合體,這樣runtime就能為同時(shí)運行的兩個(gè)不同的應用程序裝入同一組合體的不同版本。
這就消除了由組件版本的不兼容性引起的問(wèn)題,提高了系統整體的穩定性。如果必要,管理員可以為配制時(shí)刻的組合體增加配制信息,例如一個(gè)不同的版本策略,但是編譯時(shí)提供的原始信息永遠不會(huì )丟失。
因為組合體是自描述的,所以并不需要在系統上進(jìn)行顯式注冊。應用程序的配制簡(jiǎn)單到只需將文件拷貝到目錄中既可(如果為了使應用程序能夠運行,必須安裝未經(jīng)組織過(guò)的組件的話(huà),情況會(huì )稍微復雜一點(diǎn))。
配制信息保存在可被任何文本編輯器編輯的XML文件中。 最后,運行語(yǔ)言也提供完整的、普遍深入的安全服務(wù),以確保未經(jīng)授權的用戶(hù)不能訪(fǎng)問(wèn)機器上的資源,并且代碼不會(huì )執行未經(jīng)允許的動(dòng)作。
這就提高了系統整體的安全性可靠性。 由于運行語(yǔ)言用于裝入代碼、生成對象、執行方法調用,所以當受控代碼裝入內存執行時(shí),運行語(yǔ)言能進(jìn)行安全檢查,強化安全策略。
Microsoft 。NET框架不僅規定代碼訪(fǎng)問(wèn)安全,還規定基于角色的安全。
通過(guò)代碼訪(fǎng)問(wèn)安全機制,開(kāi)發(fā)人員能為應用程序指定完成工作所必需的權限。例如,代碼或許需要寫(xiě)文件或訪(fǎng)問(wèn)環(huán)境變量的權力。
這類(lèi)信息和有關(guān)代碼標志的信息一起存儲在配制級上的。 當代碼裝入內存及執行方法調用時(shí),運行語(yǔ)言驗證是否能給予代碼所要求的權限。
如果不能,將記錄一條安全沖突信息。給予權限的策略,這被稱(chēng)為信任策略,是由系統管理員建立的,并且是建立在關(guān)于代碼的證據基礎之上,比如:代碼是誰(shuí)發(fā)布的,是從什么地方獲得的,以及在組合體中找到的代碼標志和它要求的權限。
開(kāi)發(fā)人員可以指定他們顯然不需要的權限,以防止其它人惡意使用他們的代碼。如果所需要的權限依賴(lài)直到運行時(shí)刻才會(huì )知道的信息,那么就可寫(xiě)入綱鄰性的安全檢查。
除了代碼訪(fǎng)問(wèn)安全,運行語(yǔ)言還支持基于角色的安全。基于角色的安全建立同代碼訪(fǎng)問(wèn)安全一樣的權限模板,只是這些權限是建立在用戶(hù)的身份之上,而不是建立在代碼的標志之上。
角色表明了用戶(hù)所屬的類(lèi),并且可以在開(kāi)發(fā)和配制階段定義。給予權限的策略被分配到每個(gè)預定義的角色。
在運行時(shí)刻,用戶(hù)的身份被確定,代碼將代表這個(gè)身份運行。運行語(yǔ)言決定用戶(hù)是哪個(gè)角色的成員,然后給予基于這個(gè)角色的權限。
ASP.NET是做web開(kāi)發(fā)的。
你需要學(xué)習的前提知識有:HTML、T-SQL、Javascript、C#、B/S原理
在學(xué)習ASP.NET的時(shí)候,你需要掌握好:ASP.NET的系統對象、各種控件使用方法和特征、Web Service、
XML讀取寫(xiě)入、文件讀取寫(xiě)入、ASP.NET AJAX核心控件以及擴展控件的使用和特征。
這些知識都是基本的知識。如果要做好開(kāi)發(fā)那么還要了解跟多的技術(shù)知識,以及最重要的行業(yè)經(jīng)驗。
.net自然離不開(kāi)語(yǔ)言,比如你說(shuō)的C#。
當然懂得html、javascript、css那就更好了。
還是根據你自己的工作來(lái),學(xué)一些和工作先關(guān)的,這樣可以邊工作,邊學(xué)習,邊學(xué)邊用,進(jìn)步就會(huì )很快了!
還有一點(diǎn),要看你的工作是涉及前端的多些,還是后臺。如果是前端的html、javascript、css就顯得很重要了。如果是后臺,C#語(yǔ)言的靈活應用,通常的接口調用,通信數據交互就顯得尤為重要!
主要是,我自己在工作中的一點(diǎn),算是經(jīng)驗吧。呵呵
asp.net可以使用VB、C#等任意語(yǔ)言,不管何種語(yǔ)言,輸出到瀏覽器端的東西差不多,HTML語(yǔ)言是最最基礎的。以上語(yǔ)言,學(xué)好一個(gè)就行了,根據你的情況,建議你C#吧。
需要的相關(guān)知識大致如下:
1,數據庫部分,不管Access還是MySQL抑或SQLSERVER,都需要掌握SQL語(yǔ)言,他們之間的不同在于效率,語(yǔ)言操作查詢(xún)很相似,MYSQL可能稍微難操作一些。
2,客戶(hù)端腳本部分,這里主要是JS。其實(shí)你JS學(xué)好了,C#就問(wèn)題不大,或者說(shuō)他們的語(yǔ)法和理念差不多。
3,在深入學(xué)習\開(kāi)發(fā)的話(huà),需要掌握的東西主要為系統組件\控件,用戶(hù)控件,動(dòng)態(tài)控件,IHttpHandler,多線(xiàn)程等。
4,另外,平時(shí)多多注意編寫(xiě)\收集并分類(lèi)C#編程用到的一些好的程序片段\類(lèi)等,這對于你快速編程很有幫助。比如,專(zhuān)門(mén)操作數據庫的類(lèi)等。
希望對你有幫助。
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權,根據《信息網(wǎng)絡(luò )傳播權保護條例》,如果我們轉載的作品侵犯了您的權利,請在一個(gè)月內通知我們,我們會(huì )及時(shí)刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習?shū)B(niǎo). 頁(yè)面生成時(shí)間:3.306秒