日韩欧美亚州-日韩欧美亚洲国产-日韩欧美亚洲国产高清在线-日韩欧美亚洲精品-色135综合网-色91在线

技術(shù)文:初學(xué)者如何選擇Java和.net?



自從.Net問(wèn)世以來(lái),程序員都很關(guān)心的一個(gè)問(wèn)題是「該學(xué)Java或.NET」。

想要兼顧兩者,其實(shí)不太容易。投入在.NET的時(shí)間越多,所能花費(fèi)在Java的時(shí)間自然就少了,反之亦然。在信息爆炸的時(shí)代,重要的不是信息的取得,而是信息的抉擇。信息太多,時(shí)間太少,如果不能慎選適合的技術(shù),只會(huì)平白浪費(fèi)許多時(shí)間,斫喪自己的競(jìng)爭(zhēng)力。

一 開(kāi)發(fā)效率方面
對(duì)我們來(lái)說(shuō)選擇開(kāi)發(fā)工具的最需要衡量的就是這一因素:表現(xiàn)層開(kāi)發(fā):J2EE這方面非常欠缺,把這一任務(wù)丟給了應(yīng)用服務(wù)器廠商和編程人員,不象.Net擁有很牛的.Net Studio,不過(guò)Jbuilder 6已經(jīng)出來(lái)了,支持EJB2.0 也不算太落后,但一直沒(méi)有解決方案的就是頁(yè)面用戶控件(當(dāng)然Turbine的Action Event也算一種),缺乏可視化設(shè)計(jì)和Servlet應(yīng)用程序框架生成。我期望的一種方式是具有象.Net Studio一樣的可以所見(jiàn)即所得的編輯模板(Template),綁定用戶按鈕事件處理。目前可以通過(guò)javascript庫(kù),模板庫(kù)及宏庫(kù)略微緩解一下Servlet的開(kāi)發(fā)。ASP .Net和Servlet都支持動(dòng)態(tài)更新表現(xiàn)層。

二 XML支持能力:
.Net一直叫囂的就是我集成了XML和Web Service,但JDK1.4也搞出了XML規(guī)范,這方面已經(jīng)差不多了,不過(guò).Net的易用性好得很,而且就此一家,程序員不必費(fèi)心思選組件或產(chǎn)品。

在采用XML和XSLT的開(kāi)發(fā)模式中:微軟的SQL Server 2000直接提供了HTTP Query到XML數(shù)據(jù)的功能,不過(guò)我用dbxml也能做得這一點(diǎn)嘛,還適用于大多數(shù)的主流RDBMS,更牛!這種開(kāi)發(fā)模式應(yīng)該是未來(lái)的方向。

三 理解的兩者本質(zhì)
Java是綁定于一種語(yǔ)言的跨系統(tǒng)的平臺(tái),是一個(gè)有多家供應(yīng)商提供競(jìng)爭(zhēng)性產(chǎn)品的規(guī)范。
.net是綁定于一種系統(tǒng)的多語(yǔ)言平臺(tái),是一個(gè)規(guī)范性較弱的壟斷性產(chǎn)品。
一個(gè)是規(guī)范一個(gè)是產(chǎn)品,本來(lái)就不同。于是.net的發(fā)言人說(shuō),規(guī)范和產(chǎn)品沒(méi)得比,要比就比具體產(chǎn)品。但,Java天生是規(guī)范,這不是Java的錯(cuò),.net生來(lái)是迎戰(zhàn)Java的,孤軍奮戰(zhàn)是他的命。

隨便問(wèn)一個(gè)稍有頭腦的Java程序員,Java最大的好處是什么,他會(huì)毫不猶豫地告訴你:“簡(jiǎn)潔”。Java為Internet而生,也為自己“簡(jiǎn)單易用并提高生產(chǎn)效率”的理念而活。

Java討人喜歡,因?yàn)樗鸭业琢脸鰜?lái),鼓勵(lì)大家發(fā)揮聰明才智幫他進(jìn)步。那么多開(kāi)源項(xiàng)目,都在競(jìng)爭(zhēng)中求發(fā)展,對(duì)Java的發(fā)展貢獻(xiàn)巨大。Java作為規(guī)范,吸收成果不計(jì)出身,善于否定自己、自我揚(yáng)棄的優(yōu)點(diǎn)有目共睹。EJB3.0就是一例,EJB是Java 2企業(yè)版(即J2EE)的殺手锏,在企業(yè)級(jí)應(yīng)用中廣受推崇,占據(jù)大型企業(yè)應(yīng)用的高端市場(chǎng)。但EJB2.x也因其不易開(kāi)發(fā)、部署受到批評(píng)。新近通過(guò)的EJB 3.0幾乎是對(duì)EJB2.x的全盤(pán)否定,丟棄了重量級(jí)的EJB2.x,引入輕量級(jí)開(kāi)源項(xiàng)目Hibernate的設(shè)計(jì)理念,公布不久就獲得多方支持。為了理想,Java不惜付出代價(jià),要不然哪有Highway帖子里.net設(shè)計(jì)師的評(píng)價(jià):“Java發(fā)展到現(xiàn)在,還能相對(duì)那么緊湊精干,不容易!”

.net不同,出生于老牌商人世家,什么理念啦,原則啦,對(duì)商人來(lái)說(shuō)不重要。重要的是要保住市場(chǎng),搶占市場(chǎng)。

他的主人以操作系統(tǒng)雄霸桌面電腦,曾經(jīng)對(duì)互聯(lián)網(wǎng)不屑一顧。當(dāng)終于發(fā)現(xiàn)自己犯了原則錯(cuò)誤,不得不迎頭趕上時(shí),.net應(yīng)運(yùn)而生。.net世交多,要盡量保持親戚關(guān)系,還要讓親戚的支持者原windows平臺(tái)開(kāi)發(fā)人員保住飯碗,象EJB3.0那種過(guò)河拆橋痛下殺手的事情還沒(méi)干過(guò)。新功能要加,歷史物件也要留。但他和自家親戚關(guān)系緊密,外人從親戚家拐個(gè)彎就到他家,自在,沒(méi)有陌生感,也沒(méi)有路費(fèi)。人留住了,市場(chǎng)就留住了。至于跨平臺(tái),有違家族利益,不符合祖訓(xùn),所以理論上的跨平臺(tái),他不打算認(rèn)真對(duì)待。但中小企業(yè)應(yīng)用的市場(chǎng),他占住了。

于是呢,Java陣營(yíng)繼續(xù)為理想而戰(zhàn),.net陣營(yíng)繼續(xù)為市場(chǎng)而戰(zhàn),各得所需,都忙得不亦樂(lè)乎。

四 站在用戶的立場(chǎng)上
雖然Java和.net奮斗的目標(biāo)不同,但是都是B/S結(jié)構(gòu)軟件市場(chǎng)的生力軍。

Java對(duì)大中小型系統(tǒng)都適用,只要搭配不同的操作系統(tǒng)、應(yīng)用服務(wù)器等等,大到銀行綜合信息系統(tǒng)、全國(guó)全省的統(tǒng)一應(yīng)用系統(tǒng),小到手機(jī)游戲,Java可以大小通吃,來(lái)者不拒。尤其是中國(guó)政府的重要系統(tǒng),全沒(méi)有.net的份,為啥?你不給我看家底,我怎么知道你有沒(méi)有留了后門(mén),改天偷偷溜進(jìn)我家?

.net照顧中小型應(yīng)用毫無(wú)問(wèn)題,而且開(kāi)發(fā)速度快,作為用戶,付了錢(qián)很快能看到回報(bào),當(dāng)然歡喜。大型應(yīng)用么,.net是不是真的支撐不了,我不知道,但諸如windows不穩(wěn)定不安全的評(píng)論由來(lái)已久,.net建構(gòu)于這些親戚的基礎(chǔ)上,壞事就脫不了干系。

系統(tǒng)交貨早,功能實(shí)現(xiàn),運(yùn)行穩(wěn)定,安全性不出紕漏,用戶就滿意。

跨不跨操作系統(tǒng),這個(gè)考量不重要,哪有沒(méi)事整天換操作系統(tǒng)的用戶?

五 站在開(kāi)發(fā)商的立場(chǎng)上
Java還是.net?繼續(xù)頭疼。跨平臺(tái)對(duì)開(kāi)發(fā)商是一個(gè)巨大的誘惑。一次開(kāi)發(fā),多個(gè)平臺(tái)使用,降低了遷移成本,有利。但Java的開(kāi)發(fā)工具沒(méi)有.net順手,對(duì)編碼人員的要求比.net要高。

.net培訓(xùn)成本低,上手快。尤其如果開(kāi)發(fā)人員以前都是做windows開(kāi)發(fā)的話,轉(zhuǎn)型成本低得讓老板眉開(kāi)眼笑。 最重要的決定力量是市場(chǎng)。開(kāi)發(fā)商所定位的市場(chǎng)用戶的需求和開(kāi)發(fā)上在技術(shù)上的歷史積累,決定了開(kāi)發(fā)商最終的策略。

六 站在從業(yè)人員的立場(chǎng)上
從業(yè)人員被市場(chǎng)所驅(qū)動(dòng),反過(guò)來(lái)也引導(dǎo)市場(chǎng)。Java起手的過(guò)程比較漫長(zhǎng)。Java開(kāi)發(fā)者要做很多DIY工作,才能寫(xiě)出第一個(gè)像樣的程序。DIY多了,對(duì)于從業(yè)的基礎(chǔ)素質(zhì),必有提高。

.net入門(mén)快,windows最大的好處“可視化”在.net延續(xù),集成環(huán)境好,單步調(diào)試強(qiáng),這是Java團(tuán)隊(duì)中下至程序員上達(dá)項(xiàng)目經(jīng)理歷來(lái)羨慕的地方。做慣了windows和.net下的開(kāi)發(fā),難免覺(jué)得Java下的開(kāi)發(fā)調(diào)試實(shí)在比較原始:代碼大多要一行一行寫(xiě),單步調(diào)試很多時(shí)候不可能。

但Java人員的付出也有回報(bào)。我還記得當(dāng)年P(guān)ascal編程課和Unix操作系統(tǒng)帶給我的思維沖擊,那門(mén)編程課應(yīng)該更準(zhǔn)確地說(shuō)成“結(jié)構(gòu)化編程――pascal”。Pascal強(qiáng)調(diào)的結(jié)構(gòu)化編程帶來(lái)了非結(jié)構(gòu)化語(yǔ)言如Fortran之流無(wú)法比擬的美和樂(lè)趣,Unix崇尚的“小即是美”、“沒(méi)有消息就是好消息”深入我心。在軟件開(kāi)發(fā)這一生產(chǎn)過(guò)程中,除了得到維持生計(jì)所需的報(bào)酬,同時(shí)能得到美的享受和滿足的心情,實(shí)為天賜。Java從業(yè)者樂(lè)于談?wù)揓ava的美,這一點(diǎn)上比.net有福。

結(jié)束語(yǔ)

就服務(wù)端市場(chǎng)來(lái)講,Java目前在技術(shù)先進(jìn)性上有絕對(duì)優(yōu)勢(shì)。應(yīng)用系統(tǒng)需要各個(gè)層面的框架(framework),Java都有大量已完成或正在進(jìn)行的開(kāi)源項(xiàng)目幫助開(kāi)發(fā)人員更好地完成自己的任務(wù)。諸如struts/JSF類的框架,.net沒(méi)有對(duì)應(yīng)物,而且Java在揚(yáng)棄的同時(shí)保持著相對(duì)的穩(wěn)定。

.net開(kāi)發(fā)效率差不多是Java的三倍(經(jīng)驗(yàn)數(shù)據(jù)),致命的誘惑。在Java放棄的客戶端程序上,.net是老大,但在服務(wù)端,.net還是個(gè)小弟弟,有待成長(zhǎng)。微軟最初想要構(gòu)建一個(gè)新的技術(shù)來(lái)回應(yīng)J2EE,但發(fā)現(xiàn)一己之力還辦不到。于是匆匆祭出com/com+,被絕大多數(shù)程序員評(píng)為“丑陋繁雜,遲早會(huì)被替換掉”。什么時(shí)候替換呢?這一替換對(duì)應(yīng)用的影響有多大呢?微軟的新操作系統(tǒng)對(duì).net又會(huì)有多大影響?拭目以待。

繞來(lái)繞去的意思是,我不覺(jué)得兩個(gè)平臺(tái)有截然的高下之分。在這個(gè)互動(dòng)的世界上,不想被淘汰的競(jìng)爭(zhēng)者始終保持警惕,努力學(xué)習(xí)對(duì)手的優(yōu)點(diǎn)。Java的努力之一就是提供更易用的工具幫助開(kāi)發(fā)人員快速輕松地開(kāi)發(fā)Web應(yīng)用程序。而.net的當(dāng)務(wù)之急是改進(jìn)架構(gòu),完善框架。

還是那句話:沒(méi)有最好的技術(shù),只有對(duì)于具體項(xiàng)目來(lái)說(shuō)最適用的技術(shù)。
北大青鳥(niǎo)網(wǎng)上報(bào)名
北大青鳥(niǎo)招生簡(jiǎn)章
主站蜘蛛池模板: 久久99视频| 国产一级做a爰片...| 国产jk福利视频在线观看| 亚洲欧美日韩高清综合678| 美女张开大腿让男人桶| 亚洲天堂2017| 韩国毛片基地| 亚洲一区在线视频观看| 男女生性毛片免费观看| 亚洲精品中文字幕一区| 韩国免费毛片在线看| 亚洲欧美日韩在线一区| 国产成人综合亚洲亚洲欧美| 在线a国产| 久久久久99精品成人片三人毛片| 亚洲精品一区二区三区在| 国产区一区二区三区| 色偷偷亚洲精品一区| 中国欧美一级毛片免费| 久久99精品综合国产首页| 一本色道久久爱| 国产精品一在线观看| 欧美aaaaa一级毛片在线| 91视频一区二区| 久草资源在线视频| 日韩毛片久久91| 高清一区二区三区四区五区| 欧美日韩一区二区三区在线| 性感美女一级片| 国产成人精品综合| 日韩三级免费观看| 亚洲一区二区三区影院| 国产乱码精品一区二区三区卡 | 国产精品视频免费一区二区三区| 亚洲成人高清| 亚洲综合伦理一区| 国产成人综合网在线观看| 免费看岛国视频在线观看| 欧美精品国产精品| 亚洲综合网在线观看| 超级碰碰碰视频视频在线视频|