第一时间关注程序猿(媛)身边的故事
  
  谷歌钦定的编程语言Kotlin大揭秘
  
  语法+高级特性+实现原理;移动开发者升职加薪宝典!
  
  谷歌作为世界级的科技公司巨头,强悍的技术研发与创新能力使其一直是业界的楷模,其在各个领域的每一次创新,都能够引领一个新的时代!
  
  Kotlin便是其最新的一个创新力作。
  
  这几年互联网领域先后经历了几次大革命,包括物联网、大数据、云计算等,如今则处于人工智能的火热时代。在这个时代,人们极其努力地开启机器智慧,在大数据样本下,通过算法,让机器进行一定的模糊识别,从而解决很多传统办法解决不了的棘手问题。伴随其中的一个重要的编程语言便是Java,因为Java的口号是“write once, run anywhere”(即:一次编写,到处运行)。Java由于其强大的跨平台(主要指操作系统)能力,而备受各种中间件组件开发人员的钟爱。而Java之所以能够跨平台,主要归功于JVM虚拟机。
  
  JVM虚拟机内部针对不同的底层平台进行了通用性抽象,从而可以让Java这种上层编程语言对外提供统一的API,例如在进行多线程开发时,开发者无须在不同的平台上引入不同的类库,而在开发界面视图时,Java也提供统一的界面组件类库。平台的差异化工作都交给底层的JVM虚拟机进行适配处理,从而让高层业务开发人员可以专心进行业务设计与逻辑实现,不用再关心底层各种纷繁复杂的硬件和平台特性。开发人员唯一需要感知的平台差异性仅仅在于需要在不同的平台上下载平台相关的JVM软件而已。
  
  在Java刚推出来的几年里,由于JVM的性能低下,导致不太被认可。但是后来随着各种黑科技的引入,例如JIT即时编译、基于Java字节码的栈顶缓存技术、垃圾回收算法的改进、JDK高性能类库(例如并发包、NIO等)的发布,等等,JVM的性能得到长足改进和飞速提升,早已今非昔比,在部分场景下甚至比C/C++的性能还要高,例如运行期所进行的方法与线程级的逃逸分析以及C1、C2分级动态编译等技术。人们再也没有任何理由拒绝使用Java,所以Java得到了飞速发展,多年来稳居服务端应用编程语言使用率第一的宝座。
  
  同时,JVM是一个开源的产品,在技术体系上也是开放的,当然,并不是无条件的开放,而是在统一的技术规范下,不对实现做任何约束。因此各种基于JVM规范的编程语言也得以被发明出来,例如Scala、Clojure、Groovy等,甚至PHP、Ruby等程序也可以转换到JVM规范。不管高级编程语言是Java还是Scala,只要能够被翻译成Java字节码,JVM都能够执行,这便是技术规范的开放性。
  
  虽然Java与JVM在最近这些年取得了巨大的成功,但是也并非没有缺点。例如Java是一种严格的面向对象设计的编程语言,一切编程要素都被严格编写在Java类型内部,你不可能像C语言那样,直接在源程序中定义一个函数。这种完全的面向对象设计的特性也给Java自己造成了很多不便,例如无法对底层类库进行扩展,除非你去继承并实现一个新的类型。
  
  同时,Java编程语言的语法太过于严格和死板,不像很多其他编程语言那样,有不少让人心动的功能特性,这种死板和严格往往会造成工作效率的低下。
  
  于是,Kotlin诞生了。
  
  640?wx_fmt=www.dasheng178.com jpeg
  
  《揭秘www.dashuj5.com Kotlin编程原理》
  
  主要内容
  
  Kotlin被谷歌宣布为官方语言以来,引发了极大的关注,并成为学习的热点。
  
  本书主要从封装、继承和多态三个方面全面介绍了Kotlin面向对象设计的语法特性及其背后实现方式。全书可分为基础篇、实战篇与提高篇,内容上层层深入,揭示了Kotlin对属性包装、多种形态的函数定义方式、以及各种特殊类型的定义等方面的背后实现机制。
  
  作者简介
  
  封亚飞,阿里巴巴技术工程师,关注Java,现任职于菜鸟网络,负责中间件开发。著有《揭秘Java虚拟机:JVM设计原理与实现》一书,倍受读者好评。
  
  编辑推荐
  
  Kotlin的底层是基于Java虚拟机(www.tygj178.com JVM)的,而本书的作者恰恰是口碑畅销好书《揭秘Java虚拟机:JVM设计原理与实现》的作者,他对Kotlin语言的透彻理解和分析,以浅显易懂的形式完整地浓缩在本书中。
  
  因此,在本书中,读者不仅能清晰地了解Kotlin的语法、高级特性,还能真正地掌握Kotlin背后的实现机制和设计哲学,形成对Kotlin语言既直观、又深刻的认识——在此基础上,读者能准确、快速地上手实践,大大提升自己的移动开发能力。
  
  例如,Kotlin在不违反JVM规范的基础上,融合了众多编程语言的特性:它打破了Java封闭的彻底性,让开发者可以体验“面向过程”编程的感觉;它充分吸收了其他编辑语言中的好特性,提供了诸如VB语言中的“with语法”www.abo1ge.com……此外,它提供了这样一种能力,不用修改原有类,也无须通过继承的方式,就能为某个类增加新的行为,等等。
  
  Kotlin的这些特性和实现机制,可以帮助开发者扫清开发道路上的一些障碍,让开发变得更加简单!《揭秘Kotlin编程原理》是一本值得拥有,能切实帮助读者加薪提职的好书!
  
  本书写给谁看
  
  《揭秘Kotlin编程原理》适合各种编程语言的开发者阅读,不管你是Java开发、Kotlin开发、Android开发,还是PHP、JSP,或者是C、C++、VB、Go语言的爱好者,都可以翻开阅读。因为里面总会有让你感到熟悉的一些语言特性,当你看到Kotlin中也有这样一种特性的时候,你一定会会心一笑!

谷歌钦定的编程语言Kotlin大揭秘相关推荐

  1. cleanmymac3.9.6_Android Studio 3.6 特征大揭秘

    Android Studio 3.6 特征大揭秘 为开发 Android 应用提供一切必备功能 Android Studio 是 Android 的官方 IDE. 它专为 Android 而打造,可以 ...

  2. 360黑匣子之谜——奇虎360“癌”性基因大揭秘

    360黑匣子之谜--奇虎360"癌"性基因大揭秘 http://www.nbd.com.cn 2013-02-26 01:33 核心提示: 360怎么了?这是一家什么样的企业?带着 ...

  3. 诗人般的机器学习,ML工作原理大揭秘

    诗人般的机器学习,ML工作原理大揭秘 https://www.cnblogs.com/DicksonJYL/p/9698208.html 选自arXiv 作者:Cassie Kozyrkov 机器之心 ...

  4. catia利用宏批量改名的方法_CATIA批量改名功能大揭秘

    原标题:CATIA批量改名功能大揭秘 CATIA Product中批量改名,或者批量重命名这种操作,想必是很多使用CATIA的攻城狮们的需求. 而这种操作,如果仅仅通过CATIA软件自带的功能,恐怕很 ...

  5. VB 程序大揭秘(转载)用VB的不得不看的好东西!

    http://cnprogram.myrice.com/article/vb/vb396.html 程联盟--技术文章 VB 程序大揭秘 1.Visual Basic程序概况 我用W32Dasm(Ve ...

  6. 芙拉机器人_【诉说实情】芙拉2020新品女士小号斜挎包心形印花怎么样?别花冤枉钱,内幕大揭秘 | 智能扫地机器人评测...

    [诉说实情]芙拉2020新品女士小号斜挎包心形印花怎么样?别花冤枉钱,内幕大揭秘[FURLA官方旗舰店]FURLA芙拉以优良品质吸引讲潮流重品质的都市女性,多色可选,赠运费险. 说下我的选购经历,开始 ...

  7. 抢先报名 | gTech 职业大揭秘,17 日 19:30 等你来

    在 Google 内部有这么一个神秘的团队- 为全球百万客户提供技术资讯与详尽解决方案- 对多款产品了如指掌,而你对他们知之甚少- 是的,他们就是 gTech 团队! 想要了解他们的日常吗? 千万不要 ...

  8. 大学生英语竞赛大揭秘准备攻略

    大学生英语竞赛大揭秘&准备攻略 竞赛简介 2020年全国大学生英语竞赛 NECCS(National English Competition for College Students)面向全体 ...

  9. 学计算机用书包吗,起底大学生活 | 书包物品大揭秘

    原标题:起底大学生活 | 书包物品大揭秘 书包是上学的必备用品,它承载着知识,装载着希望,带领我们走向远方--大学生的书包里,又会有什么变化,有哪些不同呢,来随小编看看吧~ 视觉传达设计 我的书包里面 ...

最新文章

  1. linux dmesg 显示可读时间格式
  2. 深度学习(二十三)Maxout网络学习-ICML 2013
  3. 服务器2003系统文件,win2003图文详解文件服务器的安装步骤
  4. 关于Qt QFileDevice::map()接口的一些学习记录
  5. The Security Learning
  6. python中的set方法_Python中set与frozenset方法和区别详解
  7. java this 三种用法
  8. Spring Boot Logback 配置详解
  9. Oracle数据库SqlLoad常用技巧总结word版
  10. 009 - CSS预处理器less sass SAML SSO 单点登录 websocket socket.io
  11. 虚拟机Net模式下ping主机和连接外网
  12. 可以完成99%的静态页面的HTML标签
  13. 程序员的量化交易之路(17)--Cointrader之Temporal实体(5)
  14. emcee——Quickstart
  15. WSL : llvm、clang 和XTP
  16. jsp自定义标签库打包步骤
  17. NVMe驱动学习记录-1
  18. MP3、MP4、MP5、PSP
  19. 线程取消(pthread_cancel)
  20. IoT产品安全基线(一)硬件安全

热门文章

  1. ACM—TC 联合招新赛 Round2
  2. 人工智能数学基础之函数与极限(无穷小与夹逼定理),附视频详解【菜鸟窝出品】
  3. Python识别璇玑图中诗的数量
  4. java中类变量的特点_已正确定义JavaBean中boolean类型的成员变量published,则符合JavaBean特点的方法是选项( )。...
  5. HTML+CSS大作业:餐饮美食网页设计与实现——下午茶甜点美食带psd(6页)
  6. windows编译x265
  7. 采样频率和带宽的关系_ADI公司AD7380系列SAR ADC的片内过采样
  8. C语言指针 *p++和*++p及++*p的区别
  9. 22春天津大学《工程地质学》在线作业二
  10. Badger、Leveldb