伸进女同桌乳沟里摸爽了,小雪解开乳罩给老杨摸,少妇被按摩师摸高潮了,亲嘴扒胸摸屁股激烈视频,强摸秘书人妻大乳BD,摸BBB揉BBB揉BBB视频

新疆軟件開(kāi)發(fā)

本站首頁(yè) 軟件開(kāi)發(fā) 成功案例 公司新聞 公司簡(jiǎn)介 客服中心 軟件技術(shù) 網(wǎng)站建設(shè)
  您現(xiàn)在的位置: 新疆二域軟件開(kāi)發(fā)公司 >> Java技術(shù) >> 文章正文

解析c#語(yǔ)言和java語(yǔ)言最相似的地方

        C#和Java都是很不錯(cuò)的語(yǔ)言。他們通過(guò)類似的方式達(dá)到了類似的目的,盡管C#比Java多出來(lái)一些和句法相關(guān)的東西,例如foreach關(guān)鍵字和一些更加讓人高興的擴(kuò)展/實(shí)現(xiàn)架構(gòu)。不幸的是,這些改進(jìn)的光芒被削弱的東西掩蓋掉了。在本文里,我將比較兩種語(yǔ)言,并盡量避免深入到JVM和CLR層。
Java:無(wú)可爭(zhēng)辯地具有C++所有的精華
在比較Java和C#的時(shí)候,你不可能不注意到它們諸多的相似之處,這在某種程度上要?dú)w結(jié)于它們共同的來(lái)源:C和C++。但是,當(dāng)Gosling和他的同事們坐下來(lái)創(chuàng)造Java的時(shí)候,他們不僅吸取了C++的能力,而且更重要的是,他們減掉了一些無(wú)用特性,后者讓C++更容易出錯(cuò)誤而且更難學(xué)習(xí)。C#的設(shè)計(jì)者加入了很多C++的特性,而Java也加入了這些特性,但是C#卻沒(méi)有去掉C++的最糟糕的一些特性。其結(jié)果就是這樣一門語(yǔ)言,它仍然為所有人提供了所有的特性,但其結(jié)局是內(nèi)部沖突不斷,而且過(guò)于復(fù)雜。

散漫的句法缺陷
最容易找出的錯(cuò)誤是流控制和句法。C#提供了goto command,將其作為更改程序執(zhí)行點(diǎn)的機(jī)制。自從Edsger W. Dijkstra在1968年出版了他的《關(guān)于Go to陳述式害處的考慮(Go To Statement Considered Harmful)》。Goto語(yǔ)句導(dǎo)致代碼難以調(diào)試,而且很難被測(cè)試工具處理。

在另一種不同的情況下,操作符過(guò)載同樣也有很大問(wèn)題,只不過(guò)層次不一樣罷了。當(dāng)“+”根據(jù)操作數(shù)的類型而代表任何東西的時(shí)候,代碼的功能就不再透明,難以預(yù)料的副作用就會(huì)發(fā)生。

C#在安全上的削弱
C#有一個(gè)用于將代碼區(qū)域標(biāo)示為不安全的簡(jiǎn)單機(jī)制。在這些不安全的區(qū)域里,Java以及后來(lái)的C#安排到位了一些安全措施,用以防止程序員直接修改內(nèi)存位置,以及使用點(diǎn)運(yùn)算,但是這些措施是值得懷疑的。在使用具有垃圾清理功能的高級(jí)語(yǔ)言時(shí),如果下到內(nèi)存地址這一層,就會(huì)把對(duì)象/內(nèi)存之間有意作出分離弄混。錯(cuò)誤就會(huì)容易出現(xiàn),調(diào)試成了惡夢(mèng),緩沖區(qū)溢出再次抬頭,C和C++里著名的安全漏洞再次現(xiàn)身。

C#還允許對(duì)主機(jī)系統(tǒng)上本機(jī)庫(kù)的簡(jiǎn)單訪問(wèn)。這個(gè)與非.NET對(duì)象相結(jié)合的訪問(wèn)同Java本機(jī)接口(JNI)所提供的功能類似,但是它更加危險(xiǎn)。JNI被設(shè)計(jì)用來(lái)小心地限制Java代碼以及本機(jī)代碼同已定義好的接口之間的交互操作,.NET使得調(diào)用本機(jī)對(duì)象文件變得極其簡(jiǎn)單,結(jié)果導(dǎo)致開(kāi)發(fā)人員在做這的時(shí)候,無(wú)法意識(shí)到他們?cè)谶@一過(guò)程中把平臺(tái)的可移植性也扔出了窗外。

SOAP的集成
C#,及其更大的擴(kuò)展.NET,已經(jīng)同SOAP Web服務(wù)緊密地集成在一起。SOAP是使用XML指定參數(shù)和結(jié)果值來(lái)進(jìn)行遠(yuǎn)程過(guò)程調(diào)用的好標(biāo)準(zhǔn),但是它并不是唯一的方式。利用用于Web服務(wù)的外部庫(kù)能夠允許Java開(kāi)發(fā)人員輕易地更改其Web服務(wù)的風(fēng)格,使其成為SOAP、XML-RPC,或者什么還沒(méi)有發(fā)明的東西。當(dāng)然,C#的開(kāi)發(fā)人員總是能夠選擇將外部庫(kù)用于SOAP的Web服務(wù),但是由SOAP標(biāo)準(zhǔn)的緊密集成所造成的限制要比它能夠做的東西更多。


所有者的恐慌
C#里最令人恐慌的特性可能就是其所有者了。微軟已經(jīng)為將C#和.NET用于非Windows平臺(tái)進(jìn)行了精心的展示,但是這在很大程度上還只是作秀。其用于非Windows平臺(tái)的CLR是問(wèn)題多多,錯(cuò)誤多多。它通過(guò)ECMA標(biāo)準(zhǔn)化過(guò)程來(lái)運(yùn)行C#??這一步連Sun也不敢在Java上邁出。其擔(dān)心來(lái)自于微軟對(duì)此可能封鎖的程度,如果它愿意的話。微軟已經(jīng)申請(qǐng)了一個(gè)專利,以排斥他人編寫第三方的CRL,例如Mono計(jì)劃。如果微軟決定對(duì)免費(fèi)的C#和.NET社區(qū)施壓,它就有能力拿票子和法律的大棒把其開(kāi)發(fā)活動(dòng)趕回到Win32平臺(tái)??當(dāng)然這也不是它想看到的情況。

而Java語(yǔ)言則相反,不是ECMA標(biāo)準(zhǔn)的,真可惜Sun沒(méi)有遵從這一標(biāo)準(zhǔn)。但是,它是可以實(shí)現(xiàn)的,而且沒(méi)有專利的阻礙,其虛擬機(jī)和核心類庫(kù)都有來(lái)自第三方的開(kāi)放和封閉源代碼的實(shí)現(xiàn)。C#看起來(lái)是免費(fèi)的,其實(shí)不然,而Java看起來(lái)限制很多,但是它能夠依據(jù)法律通過(guò)免費(fèi)的途徑來(lái)實(shí)現(xiàn)。

最后,我從來(lái)都沒(méi)有想到我會(huì)說(shuō)這個(gè),但是Java具有更好工具的支持,即使是在考慮到集成開(kāi)發(fā)環(huán)境(IDE)的情況下。Visual Studio .NET是一個(gè)很不錯(cuò)的IDE。它代表了多年的努力,而且特性很豐富。但是,Eclipse IDE包括了對(duì)Java的支持,它在穩(wěn)定性、易用性和所提供的特性上超過(guò)了Visual Studio。IBM對(duì)Eclipse的貢獻(xiàn)舉足輕重,而且如果你信奉原來(lái)的軟件格言“創(chuàng)建一個(gè)扔掉的(Build one to throw away)”,那么你可以把Visual Age作為第一個(gè)(被拋棄掉了的)嘗試。對(duì)于使用C#的開(kāi)發(fā)人員來(lái)說(shuō)幸運(yùn)的是,Eclipse的.NET版本正在開(kāi)發(fā)中。

不是那么差,但是還不是Java
客觀一點(diǎn)評(píng)價(jià),C#里并沒(méi)有什么很恐怖的東西。它沒(méi)有Visual Basic里的那些很恐怖的東西,而且它事實(shí)上也沒(méi)有繼承像C里的一些東西,而這些東西會(huì)讓開(kāi)發(fā)人員開(kāi)槍卻打中自己腳。但是,底線是,C#并沒(méi)有做很多東西,如果有任何東西比Java更好的話。它在某些方面很明顯的要更差。在這兩個(gè)非常類似的語(yǔ)言之間作選擇的時(shí)候,請(qǐng)選擇稍稍更好且經(jīng)歷風(fēng)雨的那個(gè):Java。

作者:lmx87579… | 文章來(lái)源:賽迪網(wǎng) | 更新時(shí)間:2008-2-29 15:20:42

  • 上一篇文章:

  • 下一篇文章:

  • 相關(guān)文章:
    JAVA開(kāi)發(fā)的6個(gè)實(shí)踐的例子
    JAVA中的抽象類型的一些概念
    java語(yǔ)言開(kāi)發(fā)程序中的幾個(gè)例子大家看看
    了解java開(kāi)發(fā)語(yǔ)言在軟件開(kāi)發(fā)中的幾個(gè)誤區(qū)
    C#實(shí)現(xiàn)短信發(fā)送程序的例子
    如何才能使用Java實(shí)現(xiàn)內(nèi)部領(lǐng)域的特定語(yǔ)言
    .net學(xué)習(xí):c#事件的深入分析
    Java開(kāi)發(fā)學(xué)習(xí)小心使用Date以及Time類
    sun最近修補(bǔ)了一部分java的安全補(bǔ)丁
    Java程序員應(yīng)該了解那些開(kāi)源協(xié)議
    軟件技術(shù)
    · 開(kāi)發(fā)語(yǔ)言
    · Java技術(shù)
    · .Net技術(shù)
    · 數(shù)據(jù)庫(kù)開(kāi)發(fā)
    最新文章  
    ·j2se 嵌入式腳本抓取引擎
    ·JAVA開(kāi)發(fā)的6個(gè)實(shí)踐的例子
    ·JBuilder7 / Weblogic7開(kāi)發(fā)
    ·JAVA中的抽象類型的一些概
    ·java語(yǔ)言開(kāi)發(fā)程序中的幾個(gè)
    ·了解java開(kāi)發(fā)語(yǔ)言在軟件開(kāi)
    ·如何才能使用Java實(shí)現(xiàn)內(nèi)部
    ·Java開(kāi)發(fā)學(xué)習(xí)小心使用Date
    ·Java程序員應(yīng)該了解那些開(kāi)
    ·java性能優(yōu)化的一些見(jiàn)解
    ·介紹JDK5.0一些collection
    ·基礎(chǔ)學(xué)習(xí):java中使用存儲(chǔ)
    ·解析c#語(yǔ)言和java語(yǔ)言最相
    ·Java語(yǔ)言學(xué)習(xí):jAVA中 的多
    ·Java是不是應(yīng)該增加新特性
    關(guān)于我們 | 軟件開(kāi)發(fā) | 下載試用 | 客服中心 | 聯(lián)系我們 | 友情鏈接 | 網(wǎng)站地圖 | 新疆電子地圖 | RSS訂閱
    版權(quán)所有 © 2016 新疆二域軟件開(kāi)發(fā)網(wǎng) www.zgna.net All Rights Reserved 新ICP備14003571號(hào)
    新疆軟件開(kāi)發(fā)總機(jī):0991-4842803、4811639.
    客服QQ:596589785 ;地址:新疆烏魯木齊北京中路華聯(lián)大廈A-5C 郵編:830000
     
    岳池县| 建平县| 七台河市| 贵德县| 襄汾县| 开封县| 翁源县| 乐山市| 荥经县| 罗平县| 宜丰县| 田林县| 扎赉特旗| 瑞丽市| 扎赉特旗| 苍溪县| 建昌县| 监利县| 彭阳县| 绍兴县| 乌海市| 宜宾市| 霍城县| 平乐县| 大理市| 长丰县| 汽车| 洛扎县| 龙山县| 襄樊市| 通渭县| 连南| 陆良县| 凤台县| 青河县| 邹平县| 宁津县| 郎溪县| 象州县| 思茅市| 万源市|