安卓開發(fā)用kotlin還是java 有基礎(chǔ)入門安卓,kotlin還是java?
有基礎(chǔ)入門安卓,kotlin還是java?作為一個仍處于編碼階段的一線開發(fā)人員,我想提出自己的看法,歡迎大家留言討論。。首先,在友好的Java方面,我們可以在網(wǎng)上找到很多優(yōu)秀的文檔、源代碼和其他學習資
有基礎(chǔ)入門安卓,kotlin還是java?
作為一個仍處于編碼階段的一線開發(fā)人員,我想提出自己的看法,歡迎大家留言討論。
。
首先,在友好的Java方面,我們可以在網(wǎng)上找到很多優(yōu)秀的文檔、源代碼和其他學習資料。
其次,我們來看看招聘要求?;旧?,招聘是由Android開發(fā)的。你需要了解Java。然而,科特林是沒有必要的。只能作為附加項使用。這是一個招聘網(wǎng)站上的android開發(fā)職位描述。
什么是kotlin?它是“更好的Java”。只有那些習慣Java并希望繼續(xù)提高工作效率的人才會真正“使用”kotlin。在你真正掌握了Java和面向?qū)ο蟮乃枷胫?,你可以很容易地學習kotlin。
為什么沒有一種編程語言是中國國內(nèi)開發(fā)出來的?
六十年代是微電子、計算機技術(shù)、編程技術(shù)和操作系統(tǒng)的黃金時代。當別人發(fā)展技術(shù)的時候,我們反對地主,把教授當作資本家,打得死去活來,教育癱瘓,人才萎縮。彌補人才缺口需要幾十年的努力。沒有人才,怎么發(fā)展技術(shù)。
改革開放的大門一打開,我們就知道世界已經(jīng)進入了信息時代。各種協(xié)議和規(guī)則早就解決了。如果我們想和他們玩,我們只能遵循他們的規(guī)則。
因此,由于文化大革命,我們今天被技術(shù)壓制了。我們在尋找自己的死亡,不能責怪別人。
Kotlin真的值得學習嗎?
會Java,學一周就快了。我想兩天差不多。它是否值得學習取決于你如何衡量它。你所花費的只是一點時間,你得到的是開發(fā)效率和代碼簡單性的提高。當然,你不得不說kotlin能做什么,Java也能做什么,而且本身沒有質(zhì)的變化。如果你想說kotlin可以取代Java,我仍然持懷疑態(tài)度。畢竟,在kotlin之前,JVM上有許多語言想要取代Java,它們的語法特性比Java好得多。讓我們舉幾個例子,groovy Scala。在中國有多少人在使用這些語言?國內(nèi)媒體也對科特林進行了報道。據(jù)估計,這場火災(zāi)將持續(xù)一段時間,人們每天都會大喊著更換Java。我想兩三年后,大多數(shù)人會忘記科特林是什么。個人建議,學會長見識,自己玩,很不錯。然而,如果你在一家公司工作,大部分時間你不能使用任何你想使用的語言。你說如果你想在這個項目中使用kotlin,首先需要得到老板的批準
作為一個企業(yè),從2018年的排名可以看出,Java編程仍然是最好的,占的比例最大。而且有上升的趨勢。是什么讓Java語言如此強大?這與Java語言的特點密不可分。
首先考慮的是成本。Java作為一種古老的開發(fā)語言,經(jīng)歷了這么多年的發(fā)展。人才和社區(qū)都有相對完善的生態(tài)鏈。我認為企業(yè)不會因為這是一門新語言就冒這樣的風險。一種語言的生態(tài)鏈不是一朝一夕就能形成的,就像golang,在互聯(lián)網(wǎng)時代被稱為C,但是經(jīng)過這么多年,只在一些特定領(lǐng)域(服務(wù)器端編程)取得了一些成就,所以我認為沒有必要強調(diào)這種語言是如何工作的,這種語言是如何工作的。就像當年的七牛一樣,為了把哥朗推向神壇,python說它一文不值;所有的開發(fā)語言都有自己的優(yōu)缺點,所以不必上網(wǎng);
安卓開發(fā),Kotlin為什么還沒有全面取代JAVA?
kotlin是基于JVM的,現(xiàn)有的Android API可以直接使用,也可以輕松編譯成文件可以由現(xiàn)有的Android運行。
Go語言將被編譯成機器識別二進制(本機),旨在取代C。也可以完全支持Go語言,但這需要很長時間。
為何google會選擇kotlin作為第一開發(fā)語言,而不主推自己的go語言?
答:主要是因為交換機不適合實際復(fù)雜的業(yè)務(wù)系統(tǒng)需求。業(yè)務(wù)在不斷變化和迭代。一旦需求發(fā)生變化,條件的復(fù)雜性就很高,交換機無法處理。
開關(guān)何時合適?它的場景是基于單個變量的值(例如枚舉),這比if條件更可讀。
從上面的場景來看,它太有限了。讓我簡單地談?wù)勊囊恍┤秉c:
1。真正的業(yè)務(wù)場景非常復(fù)雜,條件也不單一。一旦需求發(fā)生變化,維護代碼就會崩潰。
2. 開關(guān)經(jīng)常忘記寫中斷。據(jù)估計,很多人都忘了粗心地寫。如果你看看Google的代碼規(guī)范,你會發(fā)現(xiàn)Google對switch有很多要求。
事實上,有些人仍然使用交換機,這部分是由于歷史原因。然而,隨著科學技術(shù)的發(fā)展,原有的設(shè)計和設(shè)計都相對滯后。
某些編程語言(如python)沒有開關(guān)語法。當然,一些新的語言golang和kotlin仍然是繼承的,但是switch被打包了,被誤解的語法被刪除了,這使得switch更加靈活。沒有包裝很難使用。
通過上述缺點,即if語句更加靈活,并且根據(jù)業(yè)務(wù)邏輯條件編寫,可維護性高。同時,只要代碼質(zhì)量高,可讀性就會更高。
實際業(yè)務(wù)非常復(fù)雜,我不建議您必須使用大量的if,相反,它應(yīng)該盡快返回以減少嵌套,從而增加可讀性并降低維護成本。
為什么很多程序員不用switch,而是大量的if……else if?
讓我給你舉個例子。我們現(xiàn)在經(jīng)常寫“0 1 2 3 4 5 6 7 8 9”。這些數(shù)字是阿拉伯文而不是中文,中文是“0 1 2 3 4 5 6 7 89”。為什么我們在算術(shù)中用阿拉伯數(shù)字代替中文數(shù)字?
這表明,社會進步,當有許多方法時,總是選擇最簡單和最有效的方法。另外,也有先入為主的觀念,除非后人發(fā)明的方法更好。