我目前在一家有相當(dāng)多的“我討厭Java”開(kāi)發(fā)人員的公司工作。它也用來(lái)扼殺我。我當(dāng)然討厭所有的Java技術(shù)的囤積。這使得做出決定太困難。它喜歡當(dāng)你有太多的選擇,你沒(méi)有選擇。你必須花時(shí)間與100年的框架真正想出的框架,為您工作。標(biāo)準(zhǔn)的Servelt架構(gòu)對(duì)于大多數(shù)應(yīng)用來(lái)說(shuō)是復(fù)雜的。這不是Ruby,Django和東西的情況。他們更多的是一個(gè)單一的框架,而不是語(yǔ)言。
我從開(kāi)發(fā)人員聽(tīng)到的大的投訴
語(yǔ)法太長(zhǎng)。只是打印我們要編寫的System.out.print。你不能真正使用一個(gè)簡(jiǎn)單的VI像編輯器,并在幾個(gè)小時(shí)內(nèi)寫出一個(gè)工作的代碼。
弱測(cè)試框架。即使測(cè)試框架在Java和Ruby中非常相似,Ruby也可以通過(guò)使事情容易用于測(cè)試來(lái)向前邁進(jìn)一步。如果您在應(yīng)用程序中廣泛使用DB,這尤其如此。即使許多Web框架不考慮測(cè)試。
模板是一種痛苦。使相對(duì)簡(jiǎn)單的語(yǔ)言成為面條湯。
不酷。大多數(shù)Java應(yīng)用程序都是用巨大的公司編寫的,這與官僚機(jī)構(gòu)有關(guān),并不適合開(kāi)發(fā)人員。人們不認(rèn)為Google當(dāng)他們認(rèn)為Java。 Google == Python。它也做了很多,沒(méi)有書(shū)出來(lái)指示在Y天的X。
不喜歡編譯。對(duì)大多數(shù)開(kāi)發(fā)人員來(lái)說(shuō),編譯是十年前的現(xiàn)象。它的意義在80年代與C,但現(xiàn)代計(jì)算機(jī)可以做更多。他們不編寫編譯語(yǔ)言的代碼。 Java是編譯和用于編寫Web應(yīng)用程序的極少數(shù)語(yǔ)言之一。
Oops概念太多。即使開(kāi)發(fā)者靜靜地采用了Oops域名。他們不喜歡它。他們不喜歡當(dāng)你寫一個(gè)應(yīng)用程序有10個(gè)類,每個(gè)類只做一件事。讓你打開(kāi)100年的文件,并想象100年的類,有時(shí)與框架的交互。使整個(gè)編程活動(dòng)變得繁雜。這在大多數(shù)語(yǔ)言中可能是真的,但我看到Java開(kāi)發(fā)人員非常重視類的作用。它的Java開(kāi)發(fā)人員經(jīng)常拿出100個(gè)類的代碼。從許多角度來(lái)看這是好的,但非java開(kāi)發(fā)者討厭它。
所以所有的Java在項(xiàng)目的開(kāi)始施加了一個(gè)陡峭的曲線,這意味著太多的錢要承諾。添加到這是一個(gè)巨大的社區(qū)附加到j(luò)ava,每個(gè)想法以不同的方式,沒(méi)有人真正的頭腦的整個(gè)社區(qū)。他們也沒(méi)有看到社區(qū)舉行的會(huì)談和會(huì)議炫耀所有酷的新事物。沒(méi)有新的酷書(shū)。 Java看起來(lái)會(huì)下降,因?yàn)樗糜诮鉀Q太多不同的問(wèn)題,幾年前。