偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Kotlin在鴻蒙開發(fā)中的實(shí)踐

開發(fā)
kotlin作為一門現(xiàn)代的語言,語法更簡(jiǎn)潔,而且具有很多高級(jí)特性,比如:Null Safe、Data Class、擴(kuò)展、操作符重載、lambda表達(dá)式、閉包等.

想了解更多內(nèi)容,請(qǐng)?jiān)L問:

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com

先說一說kotlin

我們知道:

kotlin目前是安卓首選的編程語言。

安卓逐漸拋棄java,擁抱kotlin這是大的趨勢(shì)。

kotlin的最大優(yōu)點(diǎn)就是與java的互操作性。

kotlin編譯的產(chǎn)物和java一樣是bytecode(不抬杠,本文只說面向jvm的kotlin)。

kotlin是一門現(xiàn)代高級(jí)語言。

java也是高級(jí)語言,但開發(fā)效率很低。

kotlin作為一門現(xiàn)代的語言,語法更簡(jiǎn)潔,而且具有很多高級(jí)特性,比如:Null Safe、Data Class、擴(kuò)展、操作符重載、lambda表達(dá)式、閉包等

第一次嘗試

我使用的鴻蒙ide是DevEco Studio 3.0.0.800。要使用kotlin,肯定要把相應(yīng)的gradle插件、ide插件等配置上。

gradle插件(作用:編譯.kt文件)

project的gradle.build中配置

  1. buildscript { 
  2.     dependencies { 
  3.      classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.10" 
  4.     } 

 entry的gradle.build中配置

  1. apply plugin: 'kotlin' 

 ide插件(作用:讓ide識(shí)別.kt文件、高亮顯示、語法提示等)

DevEco Studio 3.0.0.800是基于IntelliJ IDEA212.5457.46,所以我們找到相應(yīng)的版本并下載https://plugins.jetbrains.com/plugin/6954-kotlin/versions/stable/150173

把下載的zip包直接拖拽到DevEco界面上就會(huì)自動(dòng)安裝。

kotlin在鴻蒙開發(fā)中的實(shí)踐-鴻蒙HarmonyOS技術(shù)社區(qū)

建一個(gè)kotlin的Data Class, User

  1. data class User(val name: String, val age: Int

 在MainAbilitySlice中使用User

  1. public class MainAbilitySlice extends AbilitySlice { 
  2.     @Override 
  3.     public void onStart(Intent intent) { 
  4.         super.onStart(intent); 
  5.         super.setUIContent(ResourceTable.Layout_ability_main); 
  6.         User andy = new User("andy", 28);//使用Data Class ,就像java的類一樣 
  7.  
  8.         Text text = (Text) findComponentById(ResourceTable.Id_text_helloworld); 
  9.         text.setText(andy.getName()); 
  10.     } 

 結(jié)果:

能夠識(shí)別.kt文件,并且語法高亮都沒問題,說明ide插件配置成功。

但是,編譯失敗,提示The 'java' plugin has been applied, but it is not compatible with the Hap plugins.。我的理解是,org.jetbrains.kotlin:kotlin-gradle-plugin和com.huawei.ohos:hap沖突。這個(gè)問題,已經(jīng)超出了我的能力范圍。

有沒有別的辦法呢?

第二次嘗試

既然org.jetbrains.kotlin:kotlin-gradle-plugin和com.huawei.ohos:hap沖突,我們?cè)俳ㄒ粋€(gè)java library的module,把.kt文件放在這個(gè)module下,是否可行呢?答案是:可行!

直接看源碼吧----> https://gitee.com/andych008/HMkt

總結(jié)

雖然,我們經(jīng)過嘗試,可以在鴻蒙app開發(fā)中使用kotlin,但是,我還是不建議在實(shí)際中大量使用。說不準(zhǔn)哪一天,DevEco Studio 中完全不支持kotlin了,那樣之前寫的代碼維護(hù)會(huì)不太方便。但是,如果有一些平臺(tái)不相關(guān)的代碼,比如,在android和鴻蒙上都會(huì)使用,那么我們完全可以放心使用kotlin來實(shí)現(xiàn)。

另外,在華為開發(fā)者大會(huì)上(2021-10-22),華為表示,將發(fā)布自研編程語言。我們就暫時(shí)忍受一下難用的java吧。華為的自研編程語言,在特性上肯定會(huì)和kotlin、swift之類的現(xiàn)代語言一樣?,F(xiàn)在學(xué)習(xí)使用kotlin對(duì)以后一定會(huì)有用的!

想了解更多內(nèi)容,請(qǐng)?jiān)L問:

51CTO和華為官方合作共建的鴻蒙技術(shù)社區(qū)

https://harmonyos.51cto.com

 

責(zé)任編輯:jianghua 來源: 鴻蒙社區(qū)
相關(guān)推薦

2010-04-20 09:14:33

Struts

2020-07-08 10:01:07

SDP網(wǎng)絡(luò)安全安全框架

2024-07-01 00:00:06

ASP.NET開源

2022-09-09 10:01:11

服務(wù)網(wǎng)格云原生交付請(qǐng)求

2023-04-07 18:35:23

StarRocks貨品運(yùn)營(yíng)

2021-07-28 09:00:00

編程語言Kotlin開發(fā)

2023-08-31 22:40:01

2018-09-10 15:57:52

IstioUCloudIPv6

2009-11-26 10:31:55

配置IPS最佳實(shí)踐

2017-05-22 08:05:46

HBase阿里搜索實(shí)踐

2023-09-22 10:12:57

2012-12-25 10:48:35

IBMdW

2017-06-02 10:25:26

Java異常處理

2022-12-23 19:22:47

前端單測(cè)

2024-10-16 21:49:24

2022-05-30 07:48:11

DevOps測(cè)試策略

2024-09-25 10:10:35

2016-09-07 13:49:11

AppiumAndroid UI應(yīng)用

2022-03-22 13:45:10

云計(jì)算混合云工具

2023-07-31 13:49:11

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)