亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

將 Java 應用程序遷移到 .NET(1)

2019-11-18 12:12:42
字體:
來源:轉載
供稿:網友

  摘要:發現 Microsoft .NET 比 java 優越的地方,學習如何將 Java 應用程序轉換到 .NET。
  什么是 .NET?
  Microsoft? .NET(讀作“dot net”)既是軟件編寫方法,又是一套開發實現這些方法的軟件的工具。我們來看一些有關連接性和互操作性的常見業務問題,以說明促使 .NET 方法的發展的原因:大多數企業都與其他企業合作,但是它們的信息系統運作卻是孤立的。沒有建立起貫穿供給商的產品供給鏈;供給商與買方之間的聯系經常只局限于傳真或簡單的文本文件交換。人們通常將這一點看作提高生產率的障礙。更好地溝通可以使企業實現更高的效率。當供給鏈中的所有供給商都彼此連接起來時,每個供給商都能夠將庫存降低到最低水平、根據需求生產和更有效地協調。
  與此相關的是互操作性問題。當企業承諾互相連接起來時,假如他們的操作系統處于不同的再開發狀態或處于不斷變化中,他們就會面臨艱難的設計及實現連接的策劃工作。此外數據安全也是個復雜問題,因為通過企業防火墻與其交換數據的既是合作伙伴又是競爭對手。
  .NET 方法能更好地啟用這種能力,它使得編寫能夠在任意時間、任意地點和任意設備上安全地彼此連接和互操作的系統變得非常簡單。實現這一點的核心技術是 xml Web Service。這項技術既是一種方法,也是在不同機器、不同網絡及不同操作系統的組件之間傳遞信息的傳輸層。
  XML Web Service 得到了廣泛的支持。許多公司已經使用 XML Web Service 與合作伙伴連接。Microsoft 正在所有產品上加大對 XML Web Service 的支持。從開發人員的角度看,.NET 使得利用 Microsoft Visual Studio .NET、.NET Framework 以及 XML Web Service 編寫彼此連接的系統變得非常簡單。
  .NET Framework
  .NET 絕不僅僅是 XML Web Service。.NET 的核心是 .NET Framework,它由公共語言運行庫和類庫組成。這兩個組件為構建 .NET 應用程序提供了執行引擎和編程 API。
  為 .NET 編譯的應用程序不是被直接編譯成本機代碼,而是被編譯成一種稱為 Microsoft 中間語言 (MSIL) 的中間語言。當首次運行一個應用程序時,公共語言運行庫實時編譯器在程序執行前將 MSIL 代碼編譯成本機代碼。公共語言運行庫不是一個簡單的 JIT 編譯器,它還負責提供內存回收、異常處理、安全服務、運行時類型安全檢查等底層執行服務。由于公共語言運行庫在治理執行方面的作用,因此有時將以 .NET Framework 為目標的程序稱為“托管”應用程序。
  .NET Framework 是一組類,它們用于構建在公共語言運行庫上運行的應用程序。這些類庫為包括數據訪問、安全性、文件 IO、XML 操作、消息傳送、類反射、XML Web Service、asp.net 和 Microsoft Windows 服務在內的各種任務提供強大的支持。
  也許 .NET 最獨特的屬性是它的多語言支持。Microsoft 已經為 .NET Framework 發布了四種商業語言:Visual C#? .NET、Visual Basic? .NET、C++ 托管擴展及 Visual J# .NET。許多其他兼容 .NET 的語言也正在開發中,其中包括 Perl、Python 及 COBOL。
  為了幫助創建兼容 .NET Framework 的語言,Microsoft 設計了公共語言規范 (CLS)。每種語言要使用 .NET Framework 和公共語言運行庫,以及與用其他語言編寫的組件進行互操作,就必須提供 CLS 所描述的功能。假如一種語言實現了必需的功能,那么它就被稱為兼容 .NET。每種兼容 .NET 的語言都支持相同的數據類型,使用相同的 .NET Framework 類,編譯為相同的 MSIL,并且使用相同的公共語言運行庫治理執行過程。因此,各種兼容 .NET 的語言之間沒有優劣之別。開發人員可以自由地為特定的組件選擇最好的語言同時又不損失該平臺的能力和自由度。另外,使用一種語言編寫的組件也能夠很輕易地與用另外一種語言編寫的組件進行互操作。例如,您可以用 C# 編寫一個從用 Visual Basic 編寫的基類繼續而來的類。CLS 已經被提交給 ECMA 進行標準化,這鼓勵許多語言開發人員為許多語言創建兼容 .NET 的版本。在撰寫本文時有 20 多種兼容 .NET 的語言正在開發中。
  圖 1 展示了在操作系統之上的各種 .NET 組件。.NET Framework 由四個藍框組成,這些藍框分別代表 ASP.Net、Windows 窗體、ADO.NET 和 XML 以及子組件。
   將 Java 應用程序遷移到 .NET(1)
  Visual Studio .NET
  為了能夠進行 .NET 開發,Microsoft 重新編寫了其開發工具并重新將其組合為 Visual Studio .NET。Visual Studio .NET 支持使用一種或多種語言開發應用程序。設計、開發、調試和部署 .NET 組件均使用同一個集成開發環境 (IDE)。
  這個開發環境支持控制臺應用程序、Windows 應用程序、DLL、Web 應用程序、XML Web Service 以及手持設備應用程序的開發。該開發環境提供了一些獨特的高生產率功能:智能感知;針對 Web 窗體、Windows 窗體、XML 架構及數據的可視化設計器;可以無縫地從用一種語言編寫的代碼轉到用另一種語言編寫的代碼的跨語言調試器;與 .NET Framework 的緊密集成;能在鍵入時持續提供上下文相關幫助的動態幫助;顯示編譯器錯誤以及任務的任務列表;體系結構設計功能,例如 Visio 集成,以及用于可視化訪問數據庫的服務器資源治理器、Windows 服務、性能計數器和服務器端應用程序組件。
  Microsoft Visual Studio .NET 是一個獲獎的開發工具。到撰寫本文時,Visual Studio .NET 已經獲得了多種獎項,其中包括兩次 2002 SD Magazine 效率獎和 PC Magazine 的 2001 年度卓越技術獎(盡管該產品當時仍處于 Beta 階段)。
  比較 .NET 和 Java
  在經驗豐富的 Java 開發人員看來,.NET 可能與 Java 平臺很相似,它們都提供了一種創建應用程序的結構化方法,都有編譯為中間代碼的語言,都為應用程序開發提供了一個大型 API 庫。但實際上,.NET 的核心有一套與 Java 平臺不同的目標。
  從概念上講,Java 是兩樣東西:Java 平臺(運行時和 API)和 Java 語言。Java 平臺的用途是支持用 Java 語言編寫并被編譯為 Java 字節碼的應用程序。盡管進行了許多試圖將其他語言編譯為 Java 字節碼的工作,但是這些工作大部分都是學術活動。Java 的理想目標一直是“在多種平臺上使用一種語言”。
  .NET 也是兩樣東西:.NET Framework(運行時和 API)和大量支持它的編程語言。.NET Framework 的用途是支持用任一種語言編寫并被編譯為 MSIL 的應用程序。.NET 的目標是“多種語言共享一種平臺”。
  .NET 與 Java 相比的優點
  與 Java 相比,除了語言自由度之外,.NET 還有許多其他優點。下面總結了一些最重要的優點:
  框架類
  由于 Java 是多平臺的,因此傳統上其框架類被局限于那些所有平臺都提供的類。這影響了類的范圍和豐富度:類的范圍被局限于可用計算機和操作系統最通用的類。另外還影響了類本身的豐富度。內建 Java 類一般都非常簡單,開發人員經常在它們上面構建自己的框架或不得不尋找 XML 文件語法分析等第三方框架。在發行 JDK 1.4 之前必須使用第三方庫或編寫自己的語法分析程序來對 Java 中的 XML 文件進行語法分析。編寫自己的語法分析程序通常需要 100 多行代碼。
  
  .NET Framework 構建于 Windows 平臺之上。還有一個用于 FreeBSD 的公共語言運行庫和 .NET Framework 類庫版本。這些類包括了該平臺上的所有框架類。另外,這些類也比 Java 所能提供的類更豐富。.NET 提供了一個編程框架而不是一個構建編程框架的基礎。
  
  下面的 C# 例子說明在 .NET 中如何對 XML 文件進行語法分析。注重,.NET Framework 中已經提供了輔助類。這使得代碼編寫非常簡單:
  
  XmlTextReader myXmlTextReader = new XmlTextReader ("textToValidate.xml");
  XmlValidatingReader myReader = new XmlValidatingReader(myXmlTextReader);
  myReader.Schemas.Add(myXmlSchemaCollection);
  myReader.ValidationEventHandler += new ValidationEventHandler (this.ValidationFailureHandler);
  // 讀取 XML 數據。
  while (myReader.Read()){}
   .NET Framework 的保真度比 Java 平臺高。.NET 程序可以使用 Windows 的所有功能,而不象 Java 那樣只能使用 Windows 最通用的功能。
  “……真正的底線是:.NET 方法意味著 Microsoft 提供了 90% 以上開發人員都可能需要的符合標準的工具,而 Java 方法仍然意味著從各種來源搜集而來的各種碎片組合成的一個解決方案?!?br />  一次編寫,到處調試
  盡管 Java 的“一次編寫,到處運行”的理想很有吸引力,但是現在編寫的大多數應用程序都僅針對一個操作系統。造成這種情況的技術原因有兩個:由于 Java 框架在范圍和豐富度上受到局限,因此開發人員經常使用專有類來訪問目標平臺的可用功能。第二,由于各種 Java 執行程序之間無法消除的不兼容性繼續給真正的跨平臺工作帶來困難,因此開發人員必須在想要支持的所有平臺上測試代碼。因此,有些開發人員半開玩笑地將 Java 稱為“一次編寫,到處調試”的平臺。
  安全性
  .NET 的安全功能更豐富。除了加密 API、安全 cookie 和身份驗證之外,.NET 還是一個能夠根據代碼來源給不同用戶群分配不同權限等級的豐富的可擴展機制。例如,所有來自 Microsoft 的代碼都被看作是安全的??梢源饝蚪顾衼碜蕴囟?URL 的代碼讀/寫臨時目錄或屏幕等特定資源。另外,應用程序可以被標志為需要某種權限(例如需要訪問文件系統)。假如沒有這些權限,那么該應用程序就不會被加載。由于安全檢查是在加載時進行的,因此開發人員不必在整個應用程序中編寫安全失敗檢查邏輯。這一點是通過一項稱為“代碼訪問安全”的新技術治理的,這種技術對從 Internet 或本地機器加載的代碼都有效。
  版本控制
  .NET Framework 有一個比 Java 更強大的版本控制系統。在 Java 中

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品久久一区| 色噜噜狠狠狠综合曰曰曰88av| 国产精品偷伦视频免费观看国产| 久久久久久久999| 国产中文字幕亚洲| 国产v综合v亚洲欧美久久| 国产婷婷成人久久av免费高清| 91精品在线一区| 亚洲欧美另类自拍| 日韩美女在线播放| 91在线观看免费高清完整版在线观看| 欧美成人午夜免费视在线看片| 欧美日韩中国免费专区在线看| 亚洲精品免费在线视频| 日日狠狠久久偷偷四色综合免费| 97成人精品区在线播放| 欧美视频免费在线观看| 国产99视频在线观看| 久久久久亚洲精品国产| 久久精品国产亚洲7777| 亚洲欧美中文日韩在线| 中文字幕亚洲色图| 久久久久久尹人网香蕉| 国产视频福利一区| 日韩欧美999| 欧美电影在线观看网站| 欧美激情一级二级| 成人福利网站在线观看| 国产精品白丝jk喷水视频一区| 海角国产乱辈乱精品视频| 日韩专区中文字幕| 2019av中文字幕| 伦伦影院午夜日韩欧美限制| 日韩精品视频在线| 91日本视频在线| 性欧美xxxx视频在线观看| 日韩动漫免费观看电视剧高清| 国产精品久久久av| 久久亚洲国产精品成人av秋霞| 久久精品国产精品亚洲| 国产成人精品午夜| 两个人的视频www国产精品| 在线观看免费高清视频97| 久久视频中文字幕| 91精品国产综合久久香蕉最新版| 在线免费观看羞羞视频一区二区| 久久这里有精品| 国产一区二区三区视频在线观看| 国产亚洲精品美女久久久| 欧美大片在线免费观看| 欧美精品制服第一页| 亚洲欧美日韩在线一区| 国产免费一区二区三区在线能观看| 最新国产精品拍自在线播放| 久久精品国产99国产精品澳门| 51久久精品夜色国产麻豆| 精品亚洲一区二区三区| 国产精品免费福利| 色综合五月天导航| 伊人一区二区三区久久精品| 日韩经典中文字幕| 欧美中文字幕视频在线观看| 97视频免费观看| 欧洲一区二区视频| 欧美日韩精品在线| 日韩在线免费观看视频| 91福利视频在线观看| 国产aaa精品| 亚州av一区二区| 日韩一区二区福利| 久久天天躁日日躁| 午夜精品三级视频福利| 青青草原一区二区| 日韩大片在线观看视频| 久久综合国产精品台湾中文娱乐网| 亚洲人成在线一二| 在线视频免费一区二区| 国产精品极品美女粉嫩高清在线| 一区二区三区国产在线观看| 亚洲国产精彩中文乱码av| 国产精品福利网站| 亚洲欧美日韩国产精品| 久久av资源网站| 中文字幕不卡在线视频极品| 国产精品久久久久久久久| 国产做受高潮69| 欧美黑人xxxx| 亚洲精品理论电影| 欧美午夜丰满在线18影院| 久久精品国产亚洲一区二区| 国产精品视频网站| 日韩在线免费视频| 懂色av一区二区三区| 久久精彩免费视频| 成人免费在线网址| 国产精品一区二区久久| 欧美成人精品激情在线观看| 日韩视频免费大全中文字幕| 精品高清一区二区三区| www.日韩av.com| 日本最新高清不卡中文字幕| 中文字幕亚洲综合久久筱田步美| 亚洲嫩模很污视频| 中文字幕欧美日韩精品| 91精品久久久久久久久| 亚洲女人天堂成人av在线| 91高清视频在线免费观看| 中文字幕日韩av电影| 成人国产亚洲精品a区天堂华泰| www日韩中文字幕在线看| 欧美极品少妇全裸体| 欧美在线一区二区三区四| 中文字幕亚洲图片| 91精品免费久久久久久久久| 国产欧美日韩亚洲精品| 精品国产美女在线| 黑丝美女久久久| 日韩欧美精品免费在线| 久久男人av资源网站| 亚洲热线99精品视频| 亚洲视频在线播放| 国产亚洲一区精品| 亚洲天堂网在线观看| 日本高清不卡的在线| 欧美一区二区三区免费视| 91人成网站www| 欧美黑人极品猛少妇色xxxxx| 欧美精品在线观看| 91夜夜未满十八勿入爽爽影院| 欧美国产日韩一区| 日韩动漫免费观看电视剧高清| 国产精品96久久久久久又黄又硬| 日韩中文字幕不卡视频| 91精品国产色综合久久不卡98| 日韩在线观看免费全集电视剧网站| 国产热re99久久6国产精品| 国产97在线观看| 中文字幕日本欧美| 国产精品久久视频| 亚洲午夜未删减在线观看| 亚洲性夜色噜噜噜7777| 午夜精品99久久免费| 日韩精品免费在线观看| 茄子视频成人在线| 性欧美xxxx| 68精品久久久久久欧美| 国产欧美一区二区三区久久人妖| 日韩精品在线免费观看| 91人人爽人人爽人人精88v| 久久网福利资源网站| 97久久久久久| 日韩在线观看网址| 亚洲热线99精品视频| 91精品国产综合久久香蕉的用户体验| 久久精品视频免费播放| 日韩欧美精品在线观看| 视频一区视频二区国产精品| 精品国产一区二区三区久久狼5月| 在线丨暗呦小u女国产精品| 日韩欧美中文字幕在线观看| 日韩电影免费观看在线| 国产成人av在线| 欧美午夜影院在线视频| 亚洲综合中文字幕在线|