成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Kotlin在鴻蒙開發中的實踐

開發
kotlin作為一門現代的語言,語法更簡潔,而且具有很多高級特性,比如:Null Safe、Data Class、擴展、操作符重載、lambda表達式、閉包等.

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

先說一說kotlin

我們知道:

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

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

kotlin的最大優點就是與java的互操作性。

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

kotlin是一門現代高級語言。

java也是高級語言,但開發效率很低。

kotlin作為一門現代的語言,語法更簡潔,而且具有很多高級特性,比如:Null Safe、Data Class、擴展、操作符重載、lambda表達式、閉包等

第一次嘗試

我使用的鴻蒙ide是DevEco Studio 3.0.0.800。要使用kotlin,肯定要把相應的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識別.kt文件、高亮顯示、語法提示等)

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

把下載的zip包直接拖拽到DevEco界面上就會自動安裝。

kotlin在鴻蒙開發中的實踐-鴻蒙HarmonyOS技術社區

建一個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.     } 

 結果:

能夠識別.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沖突。這個問題,已經超出了我的能力范圍。

有沒有別的辦法呢?

第二次嘗試

既然org.jetbrains.kotlin:kotlin-gradle-plugin和com.huawei.ohos:hap沖突,我們再建一個java library的module,把.kt文件放在這個module下,是否可行呢?答案是:可行!

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

總結

雖然,我們經過嘗試,可以在鴻蒙app開發中使用kotlin,但是,我還是不建議在實際中大量使用。說不準哪一天,DevEco Studio 中完全不支持kotlin了,那樣之前寫的代碼維護會不太方便。但是,如果有一些平臺不相關的代碼,比如,在android和鴻蒙上都會使用,那么我們完全可以放心使用kotlin來實現。

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

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

 

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2020-07-08 10:01:07

SDP網絡安全安全框架

2010-04-20 09:14:33

Struts

2024-07-01 00:00:06

ASP.NET開源

2022-09-09 10:01:11

服務網格云原生交付請求

2023-04-07 18:35:23

StarRocks貨品運營

2018-09-10 15:57:52

IstioUCloudIPv6

2009-11-26 10:31:55

配置IPS最佳實踐

2017-05-22 08:05:46

HBase阿里搜索實踐

2023-09-22 10:12:57

2021-07-28 09:00:00

編程語言Kotlin開發

2023-08-31 22:40:01

2012-12-25 10:48:35

IBMdW

2017-06-02 10:25:26

Java異常處理

2022-03-22 13:45:10

云計算混合云工具

2023-07-31 13:49:11

2022-05-30 07:48:11

DevOps測試策略

2024-09-25 10:10:35

2023-12-06 21:44:28

RocksDBvivo

2016-09-07 13:49:11

AppiumAndroid UI應用

2024-04-17 07:21:52

物化視圖查詢加速器數據倉庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 97视频成人| 日日夜夜av| 操人网站 | 精品国产乱码一区二区三区a | 91精品国产乱码久久蜜臀 | 一区二区视屏 | 天天操欧美 | 日韩久久精品 | 久久精品国产免费高清 | 国产高清免费视频 | 亚洲综合久久网 | 国产精品免费观看 | 亚洲精品久久久久久首妖 | av在线一区二区 | 久久久久亚洲 | 九色 在线| 99成人| 亚州影院 | 亚洲一区二区久久 | 精品国产91亚洲一区二区三区www | 久久久久久综合 | 亚洲性视频网站 | 国产日韩精品视频 | 99精品国产一区二区三区 | 亚洲精品中文字幕在线观看 | 欧美成人在线免费 | 久久久久亚洲精品 | 成年人视频免费在线观看 | 亚洲在线一区二区 | 国产精品完整版 | 亚洲精品日韩在线观看 | 久久不射电影网 | 欧美亚洲视频在线观看 | 国产日韩精品一区 | 中文在线视频 | a在线视频 | 国产二区视频 | 中文字幕动漫成人 | 国产成人精品久久二区二区91 | 欧美中文一区 | 欧美日韩免费在线 |