addr 有基礎(chǔ)入門安卓,kotlin還是java?
有基礎(chǔ)入門安卓,kotlin還是java?作為一名至今仍處于編碼階段的一線開發(fā)者,下面提出自己的見解,拋磚引玉,歡迎大家留言討論。先說說結(jié)論,當(dāng)然首選Java。首先從友好型來說,Java我們可以在網(wǎng)上
有基礎(chǔ)入門安卓,kotlin還是java?
作為一名至今仍處于編碼階段的一線開發(fā)者,下面提出自己的見解,拋磚引玉,歡迎大家留言討論。
先說說結(jié)論,當(dāng)然首選Java。
首先從友好型來說,Java我們可以在網(wǎng)上找到大量的優(yōu)秀文檔、源碼等學(xué)習(xí)資料。
其次,再來看看招聘需求,基本招聘上Android開發(fā)的,100%你得懂點(diǎn)Java吧;可是Kotlin并不是必須的,只能作為你得加分項(xiàng)。下面是在某勾招聘網(wǎng)站的一項(xiàng)Android開發(fā)職位描述。
Kotlin 是什么?是“更好的 Java”。只有用慣了Java而又想繼續(xù)改進(jìn)工作效率的人,才會(huì)真正去“用”Kotlin。在你真正掌握J(rèn)ava、掌握面向?qū)ο笏枷牒?,再去學(xué)習(xí)Kotlin,將會(huì)是手到擒來。
學(xué)是為了用,如果只是為了寫“Hello World”那就無所謂了,隨便哪個(gè)都可。
在谷歌開的I/O大會(huì)上宣布用Kotlin語言作為首選語言,Java將面臨何種處境?
Kotlin之于Android,就像Swift之于iOS
Java畢竟是表達(dá)能力比較差的語言,很多開發(fā)者可能早就按耐不住要去使用這個(gè)集編程語言的最新研究成果為一身的新秀語言了。
而Kotlin與Java良好的interop,更是讓開發(fā)者沒有包袱能夠漸進(jìn)式遷移過去。
畢竟Kotlin想要完全取代Java,還是需要社區(qū)做一些準(zhǔn)備的。優(yōu)化優(yōu)化工具鏈,instant run,編譯優(yōu)化,常用的java庫的wrapper等等。
但是站在長(zhǎng)遠(yuǎn)來看,用kotlin的開發(fā)效率,代碼的可讀性都會(huì)比java高,若是愿意付出學(xué)習(xí)成本的話,還是比較有好處的。
為什么有些Java程序員非常喜愛Kotlin?
它更加易表現(xiàn):這是它最重要的優(yōu)點(diǎn)之一。你可以編寫少得多的代碼。 它更加安全:Kotlin是空安全的,也就是說在我們編譯時(shí)期就處理了各種null的情況,避免了執(zhí)行時(shí)異常。你可以節(jié)約很多調(diào)試空指針異常的時(shí)間,解決掉null引發(fā)的bug。 它可以擴(kuò)展函數(shù):這意味著,就算我們沒有權(quán)限去訪問這個(gè)類中的代碼,我們也可以擴(kuò)展這個(gè)類的更多的特性。 它是函數(shù)式的:Kotlin是基于面向?qū)ο蟮恼Z言。但是就如其他很多現(xiàn)代的語言那樣,它使用了很多函數(shù)式編程的概念,比如,使用lambda表達(dá)式來更方便地解決問題。其中一個(gè)很棒的特性就是Collections的處理方式。我稍后會(huì)進(jìn)行介紹。 它是高度互操作性的:你可以繼續(xù)使用所有用Java寫的代碼和庫,甚至可以在一個(gè)項(xiàng)目中使用Kotlin和Java兩種語言混合編程。一行Java一行Kotlin,別提有多風(fēng)騷了。