5月18日谷歌在今日举行的I/O开发者大会上宣布,将Kotlin语言作为安卓开发的一级编程语言。Kotlin由JetBrains公司开发,与Java 100%互通,并具备诸多Java尚不支持的新特性。

  谷歌称还将与JetBrains公司合作,为Kotlin设立一个非盈利基金会。JetBrains在2010年首次推出Kotlin编程语言,并在次年将之开源。下一版的Android Studio(3.0)也将提供支持。

  值得一提的是,发布会上,Kotlin将作为安卓一级语言消息的宣布获得台下最热烈的欢呼声。

那问题就来了,很多Android开发人员,又不得不学习这样一个新语言,Google做事,向来言出必行,之前放弃用Eclipse,推行Android Studio,现在基本都已经普及了。相信Kotlin也不例外。哈哈,培训机构又有活干了,这可是下一个风口。笔者根据多年编程经验,编程语言都应该在思想上互通的,如果,没有想到这一点。学习之路苦不堪言。今天分享下,当拿到一个新语言时,如何来学习。

1

Kotlin是什么?

Kotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发。

Kotlin可以编译成Java字节码,也可以编译成JavaScript,方便在没有JVM的设备上运行。

JetBrains,作为目前广受欢迎的Java IDE IntelliJ 的提供商,在 Apache 许可下已经开源其Kotlin 编程语言。

2

Kotlin的特性

  • Kotlin是一种兼容Java的语言;

  • Kotlin比Java更安全,能够静态检测常见的陷阱。如:引用空指针;

  • Kotlin比Java更简洁,通过支持variable type inference,higher-order functions (closures),extension functions,mixins and first-class delegation等实现;

  • Kotlin可与Java语言无缝通信。这意味着我们可以在Kotlin代码中使用任何已有的Java库;同样的Kotlin代码还可以为Java代码所用;

  • Kotlin在代码中很少需要在代码中指定类型,因为编译器可以在绝大多数情况下推断出变量或是函数返回值的类型。这样就能获得两个好处:简洁与安全;

3

如何学习Kotlin

  • 官网:http://kotlinlang.org/:无疑是最正规的,二手知识,有好有坏,不过最好看官网文档:http://kotlinlang.org/docs/reference/android-overview.html

  • 国内中文文档:https://huanglizhuo.gitbooks.io/kotlin-in-chinese/content/

  • 国内中文文档2:http://www.liying-cn.net/kotlin/docs/reference/

4

Android Studio使用Kotlin

Kotlin-github地址

https://github.com/JetBrains/kotlin

使用Android Studio下载Kotlin相关插件

执行 Settings -> plugins -> BrowseRepositories中搜索“Kotlin

安装Kotlin

使用Kotlin创建Kotlin File/Class或者是Kotlin Activity

Kotlin插件安装成功后,执行new操作,会发现弹窗多出了两个Kotlin相关选项:

1)“KotlinFile/Class”:一般Kotlin类

/*** Created by hejunlin on 2017/5/18.* blog: http://blog.csdn.net/hejjunlin*/
import com.squareup.okhttp.OkHttpClientobject OkClient{private val client = OkHttpClient()fun instance() = client
}

2)“Kotlin Activity”:Activity类

/*** Created by hejunlin on 2017/5/18.* blog: http://blog.csdn.net/hejjunlin*/
import android.support.v7.app.AppCompatActivity
import android.os.Bundleclass Main2Activity : AppCompatActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.activity_main2)}
}

5

撸一个项目

学习一个语言最快方式:动手实践一个项目

一个用Kotlin写的简单漫画APP:https://github.com/wuapnjie/PoiShuhui-Kotlin

       

第一时间获得不止个人原创 android/音视频技术干货,问题深度总结,FrameWork源码解析,插件化研究,FFmpeg研究,直播技术,最新开源项目推荐,还有更多职场思考,欢迎关注我的微信公众号,扫一扫下方二维码或者长按识别二维码

谷歌宣布Kotlin成安卓开发一级语言,我们如何来学习它相关推荐

  1. 安卓开发裕语言程序---调用qq收藏作为远程更新实例

    安卓开发&裕语言程序---调用qq收藏作为远程更新实例 在裕语言环境下,做安卓个人开发的过程中,我们时有需要在软件内部实现动态远程公告更新,如果不采用传统方法,而改用QQ收藏来做,那么,如何实 ...

  2. 我和谷歌共成长-资深安卓开发的转型之路

    一.回顾2019: 故事一.有幸抽中了门票! 2019年gogole在上海举办了开发者大会,当时也是在CSDN参加的门票抽奖.有一天晚上,在一个人工智能的创业公司面试,然后收到了CSDN发来的短信,告 ...

  3. Kotlin成为Android开发首选语言——你绝对不能错过的

    继Java 和 C++ 之后,Google 在 I/O 2017 上宣布 Android 加入了对 Kotlin 编程语言的支持. 将Kotlin语言作为安卓开发的一级编程语言.Kotlin由JetB ...

  4. 安卓开发招聘!免费Android高级工程师学习资源,2年以上经验必看

    现状 后端转 Android 我该从何处下手,现在学习 android 晚吗? 我的回答是晚还不至于,因为目前是市场趋于稳定正常,这个是市场发展的比如趋势,现在火爆大家都看好的人工智能,大数据,犹如2 ...

  5. kotlin中mainactivity无法直接调用xml中的控件_个推TechDay广州站:使用Kotlin演进安卓开发生态...

    近日,个推TechDay携手GDG广州,邀请了多位跨领域的Android开发专家,以"Kotlin Everywhere,演进Android开发生态"为主题,与在场观众一同探索An ...

  6. 安卓开发新手入门教程!Android学习路线指南,复习指南

    互联网现状 如今的互联网,延续了2018年的态势.虽然前些年,每到年底的时候大环境都不好,然而来年照样春暖花开.但是现在的互联网环境是真的不好了. 首先各大公司争相优化员工,小公司我就不提了,咱就只说 ...

  7. 安卓开发Material Design ToolBar的DrawerLayout 学习经验

    首先介绍一下动作条,ActionBar就是活动最顶部的那个标题栏.但只能位于活动的顶部,多有不便.Google便又推出了ToolBar,它继承了ActionBar的所有功能,并且灵活性高.ToolBa ...

  8. 【安卓开发】数据库Room框架的学习和使用

    简单的轻量级框架,SQL语句不复杂.步骤如下: 添加依赖 dependencies {def room_version="2.3.0"implementation "an ...

  9. 安卓开发的两种语言比较——Java Kotlin

    首先介绍一下安卓历史和现状. 2005年8月,Google低调收购了成立仅22个月的高科技企业Android及其团队 2007年11月,Google以Apache免费开源许可证的授权方式,发布了And ...

  10. 【安卓】Kotlin编程语言基础(安卓开发基础)

    本文目录: 一.Kotlin特性 1.变量 2.常量 3.类型推断: 4.null类型限制: 5.分支(条件语句) 5.1 分支1:if-else 5.2 分支2:when.else.-> 的搭 ...

最新文章

  1. java8 camel_Meet Fabric8:基于Camel和ActiveMQ的开源集成平台
  2. 计算机应用综合实践实验心得,综合实践活动培训心得体会范文(精选5篇)
  3. 一个功能完备的.NET开源OpenID Connect/OAuth 2.0框架——IdentityServer3
  4. ​领域模型vs数据模型,应该怎么用?
  5. 设置Kafka集群的方法
  6. 2022年除了深度学习,人工智能算法有可能突破的10个方向
  7. 揭开阿里巴巴复杂任务资源混合调度技术面纱
  8. Bean的生命周期详解
  9. Eclipse 官方简体中文语言包下载地址及安装方法
  10. Navicat连接Oracle
  11. springboot starter自定义实现公共模块
  12. 量化交易6-backtrader编写策略的时数据获取
  13. RT-Thread柿饼常用应用代码汇总
  14. 生日祝福小程序_手边小程序新年祝福插件正式上线
  15. JMF介绍之媒体框架
  16. java 提现,利用java实现提现金额到支付宝账户的功能,提现一万手续费多少
  17. 1646. Prime Path
  18. 开机提示小娜无法在本计算机运行,解决Win10正式版开始菜单与小娜打不开问题的三种方法...
  19. C/C++后端学习秘籍
  20. 改动实体类后,报错java.io.InvalidClassException: XXXDTO; local class incompatibl

热门文章

  1. Python:身份运算符is和==的区别
  2. java 向DB2插入数据
  3. 相机参数及坐标系变换关系(增补)
  4. CVPR2022 Oral | CosFace、ArcFace的大统一升级,AdaFace解决低质量图像人脸识
  5. CUDA WarpReduce 学习笔记
  6. [洛谷P5431]【模板】乘法逆元2
  7. filter - date 日期插件
  8. 控制标记符分水岭分割算法 此博文包含图片
  9. 【Prison Break】第六天(4.2)
  10. 【事件驱动】【数码管识别】(C++多线程实现多幅图像的同步识别)