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

首頁 > 編程 > .NET > 正文

.Net開發平臺研究(三)

2024-07-10 12:59:39
字體:
來源:轉載
供稿:網友
visual c++,這個現有的用于編寫低層代碼和windows程序的程序設計語言,還將繼續存在,但是它將被修改更新以支持.net開發平臺。

特別地, visual c++將獲得新的關鍵字和數據類型(稱為managed extensions to visual c++),它使程序員可以創建可控制代碼。不過,這些擴展是可以選擇的;.net framework 所帶的visual c++版本完全向后兼容它的前身:visual c++6.0,開發者可用它寫不可控制代碼。

這使c++在.net領域中具有一個獨特的位置。所有其他的微軟語言需要向.net開發平臺進行完全的轉換——例如,無法使用vb.net創建一個運行在老的vb runtime上的vb風格組件,也無法直接將一個c# 應用程序編譯為 本機 intel指令。不過visual c++仍有本機編譯器。結合clr將新的可控制代碼與已有的不可控制代碼相連的本領,這些都意味著c++開發者可以繼續使用同他們過去一直在用的完全相同的語言和環境。

即使有了managed extensions,使用visual c++編寫可控制代碼仍然比較困難,并容易出錯,由于.net開發平臺數據類型和c++的之間的差異,這意味著開發者首先使用visual c++,正如現在所用的那樣,編寫諸如低層設備驅動程序這樣的不可控制代碼,然后使用managed extensions來讓這些代碼能夠與某些其他來源的可控制代碼協作,或與它們合并。



jscript.net

jscript.net是微軟的javascript (或ecma script)腳本描述語言的更新版,它與java 和visual j#(參看下文)都不同。與vb.net 對vb的突破相比,jscript.net對當前jscript語言(通常用于客戶端瀏覽器腳本描述)的根本性突破比較少,這是因為jscript已經支持和clr所提供的相類似的數據類型和特征。盡管如此,jscript.net并非全部后向兼容,微軟也還沒有宣布任何計劃來支持源代碼向更新版語言的移植。

對于那些現在使用jscript,并且想要利用自己已有的知識發揮clr和類庫優勢的者,jscript非常有吸引力。



visual c#

介于使用visual c++創建可控制代碼的困難,微軟 創造了一種類似的語言,稱作visual c#,專門用于編寫可控制代碼。

c#是微軟唯一一種從一開始設計就專門針對clr的語言,微軟本身已經使用c#來創建諸如類庫和asp.net等子系統中的可控制代碼。事實上,雖然支持多種語言是clr的主要設計目標,也不妨認為c#和clr被有效地設計在一起,并且每一個的設計都會影響另一個。這是不是意味著所有的程序員都應該使用c#?當然不是。

盡管c#比c++更為簡單,它仍深深植根于“c”語言家族。這意味著它繼承了vb這樣的語言所沒有的特征。例如,c#語言大小寫敏感,而vb則大小寫不敏感。c#要求開發者明確地轉換數據類型,而vb則進行了某些缺省的轉換。c#包括對能夠更直接訪問底層.net開發平臺基礎結構的不可控制代碼的支持,例如,c#開發者可以使用指針類型指令訪問緩沖內存并檢查該緩沖。

微軟明智地決定不在vb.net中使用這些能力,因為這樣做將使vb語言更為復雜化,卻只不過對于較少的高級vb程序員有益。

簡而言之,c#更能吸引現在用visual c++ 或java工作的程序員,對于開發組件的高級vb程序員,并且他們需要一門使用clr和類庫的易于學習的語言,c#也有吸引力。



visual j#.net

這是一種新語言,它給程序員提供了從現有的visual j++ java環境向新的.net開發環境遷移的途徑。

visual j# .net是visual studio的一個外接式附件,它使程序員能夠使用java語法寫應用程序,但最終的應用程序使用.net framework 類庫和clr而非sun的java 2 api和java visual machine(jvm)(java虛擬機)。visual j#.net還提供工具用以導入和轉換j++應用程序,程序然后能在clr下運行,并且通過clr和com協同工作性的功能來訪問j++庫(例如windows foundation classes(windows基本類庫))。visual j# .net沒有使用任何sun java技術,因此不能輕易地將應用程序移植到sun兼容java上。



對于那些已使用visual j++工作過,并且熟悉java語法,但又不想轉換到.net開發平臺的程序員,visual j# .net非常有吸引力。

visual j# .net是在visual studio.net之外的一個獨立的開發計劃,最新版是一個測試版,它還不能與visual studio .net的最終版本相兼容。



visual studio .net

2002年2月,微軟發布了visual studio.net(vs.net)的最終版本,這是微軟極力推薦的創建.net應用程序的軟件開發工具集。vs.net第一次讓開發者仔細體會了微軟在語言上進行的革命性的改變,同時也解決了許多過去困擾開發者使用微軟工具創建應用程序的問題。

隨著visual studio.net在調試方面的改進,以及它將開發者所需的工具緊密集成到一個單一的環境上去,vs.net將大大影響web應用程序的開發。

以前,開發者只能在web頁中嵌入vb script或jscript。現在,web頁可以用vs.net中的任一種語言來生成。ide也提供了從web 表單控件中創造web頁的拖放式 gui,它是完全動態的,易于編碼,能自動處理狀態問題,根據瀏覽器兼容能力生成純html,并且將用戶界面問題與編碼問題相分離。

只需簡單地將一個外部的web services拖到設計頁面上,就可將它與項目連接起來。創建web services只需向代碼中添加標簽屬性。可以使用增強的html和腳本編輯器。對于許多web創建者來說,這是一方樂土。

此外visual studio.net還提供了完全集成的數據處理,尤其是xml和數據庫集成,通過和數據源相連結合起來,大大簡化了對來自不同種類的數據源的聯合數據(例如將來自一oracle數據庫的雇員數據合并到基于xml的銷售成績列表中)的處理。

以前,支持某些控件的代碼被隱藏起來,開發者很難發現并修改。現在,所有控件發出的代碼,包括格式化代碼,都可以顯示出來,這樣便于高級開發者修改表單和控制件的缺省行為,并且在應用程序的外觀上給予它們更緊湊的控制。(為了保留大多數vb用戶經驗,vs.net ide使用大綱功能來隱藏代碼,直到開發者想要瀏覽它。)







選擇.net語言的經驗規則

·當前的程序員有哪些技巧,以及雇傭新程序員有多容易?

·正在開發的組件是用于單一的終端用戶應用程序,還是在不同的情況下被其他程序員重用的基礎組件?

·應用程序需要從頭編寫新代碼,還是可能只需修改和改寫已有的代碼?

·可以使用第三方(non-windows)語言和工具嗎?

下面的經驗規則可以幫助開發者選擇.net開發平臺語言:

·大多數vb程序是繼續使用vb(vb .net)或許將受益很多。

·對于那些已經熟悉vb的更高級的功能的vb開發者,需要關注一下c#,作為另一種工具。

·已經熟悉java或j++的開發者將發現c#最適合他們的技巧。

·正在將已有的本機代碼改寫為.net代碼的c++開發者應使用managed extensions to c++。那些繼續開發本機應用程序的c++開發者應繼續使用現有的c++語言。

·正在開發新的應用程序和代碼基礎的c++開發者需要在c#和managed extensions to c++中做出選擇。大多數情形中,這些開發者將發現使用c#的收益非常符合學習曲線。

·對腳本描述web頁非常感興趣,并且使用jscript完成過這種工作的,應轉向jscript.net。

·使用過j++以及喜歡java語法的開發者應考慮j#。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 庄河市| 民权县| 沧州市| 顺平县| 荥阳市| 高碑店市| 天祝| 石棉县| 上饶县| 东兰县| 清远市| 确山县| 灵台县| 大理市| 玉山县| 嘉定区| 太和县| 清新县| 惠东县| 历史| 屯门区| 彰化县| 青铜峡市| 甘孜| 新丰县| 娄烦县| 昭觉县| 建宁县| 托克逊县| 丽江市| 宜昌市| 赣榆县| 曲松县| 文水县| 越西县| 东源县| 泊头市| 高陵县| 黔江区| 南召县| 资中县|