欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

究竟是Net好還是Java好?

錢浩然2年前13瀏覽0評論

現(xiàn)在流行的語言,java是最爛的。

對于從C#轉(zhuǎn)過來的我來說尤其如此。在一個java項目告一段落之際,現(xiàn)在讓我吐槽一下:

1.java的泛型讓人費解。類型擦除讓泛型的優(yōu)勢蕩然無存。本來泛型的一大優(yōu)勢是避免裝拆箱的性能開銷。在java里,僅僅就剩下語法糖的功能。況且這顆糖非常的不好吃。

2.java里的lambda表達(dá)式實在是難看得要死。本來業(yè)界都用=>來代表箭頭函數(shù),java非要用->顯得和別人不同。這也就算了,凡用到lambda的地方還非要steam()轉(zhuǎn)一下,對于數(shù)組,還要Array.stream(),要多別扭就有多別扭,要多難看就有多難看。更坑爹的是,還不支持延遲加載,用過一次再接著用就報錯!

3.java的方法的異常處理聲明讓人惱火。我們知道,現(xiàn)在AOP編程,異常都是在框架上層集中處理的。底層只管拋就是了。一般情況下,不主張在底層用catch“吃掉”異常.這就導(dǎo)致,如果我不想吃掉異常,就得拋出,如果要拋出,就得在方法聲明后加throwsxxxException。而如果一個方法調(diào)了其他的方法,也要跟著throws這個Exception,如果調(diào)了n多有異常的方法就得throwsn多個Exception.當(dāng)然有人會說,你不會只throws單一的基類Exception嗎?這樣倒是可以簡單點。那這個throws機(jī)制還有什么用呢?

4.java沒有隨用隨丟的匿名對象,類似C#的new{a,b},或者像js那樣更簡單的{a,b}。這在傳給api傳參時,或者webapi返回的結(jié)果,是由幾個值組成,但又不值得定義一個類時,顯得特別啰嗦,導(dǎo)致我要么用一個hashmap來裝,要么再專門定義一個只用一次的類。

5.java沒有var的隱式類型聲明。接受一個很長的類型名的返回結(jié)果時,特別不簡潔。這個據(jù)說在java12以后支持。但是現(xiàn)在誰敢用java8以上的版本?

6.java沒有擴(kuò)展方法的機(jī)制。導(dǎo)致現(xiàn)在java的Util類滿天飛。你如果想想像別的語言那樣,一氣點下去,簡直是作夢。你不得不在寫好一個對象以后,發(fā)現(xiàn)它沒有你要的方法,然后不停把光標(biāo)調(diào)到對象前面,加util,再加括號,再移到對象后面,再加反括號。太不順暢了!

7.現(xiàn)在流行的spring-boot實在是太慢了。我寫一個單元測試,運行一次,初始化都要一分鐘,搞得我現(xiàn)在煙抽得越來越多!

當(dāng)我,我才寫兩個月的java代碼,難免對java有所偏見。歡迎各位java大神拍磚!

------分割一下------

我看有很多的java大神在噴我,評論比點贊還多,我說一下我沒有很極端,有些問題確實不及別的語言優(yōu)秀,我既然學(xué)它肯定還是一門好的語言。

C++之父BjarneStroustrup說過:世界上只有兩種編程語言,一種是整天被人罵的,還有一種是沒人用的。