内容简介:随着2019元宵节的过去,新年已经随之远去,又将迎来新的一年。突然发现已经有将近一年半的时间没有更新博客了。过去一年多的时间,项目有点忙再加上辅导孩子作业所以人都搞的有点疲惫,没啥精力去更新博客了。时间一长发现人都变的越来越懒惰了。趁着新年刚刚过去,工作还比较相对空闲的时候,来充实下自己,再动手写点啥吧。过去的一年多,移动(Android)开发发生了一些值得记录的事件,根据自己的了解,简单谈谈个人感觉对移动开发有比较大影响的一些事件和项目的动态。主要有 AndroidX、Kotlin、Flutter、Dar
随着2019元宵节的过去,新年已经随之远去,又将迎来新的一年。突然发现已经有将近一年半的时间没有更新博客了。过去一年多的时间,项目有点忙再加上辅导孩子作业所以人都搞的有点疲惫,没啥精力去更新博客了。时间一长发现人都变的越来越懒惰了。趁着新年刚刚过去,工作还比较相对空闲的时候,来充实下自己,再动手写点啥吧。
过去的一年多,移动(Android)开发发生了一些值得记录的事件,根据自己的了解,简单谈谈个人感觉对移动开发有比较大影响的一些事件和项目的动态。主要有 AndroidX、Kotlin、Flutter、Dart等。另外最后再受邀发布一个招聘信息,对移动开发感兴趣的高级 码农 可以了解下,看看新的机会(据说该公司即将准备IPO哦)。
Jetpack 和 AndroidX
Android Jetpack 是去年安卓开发团队推出的一套应用开发组件套装,来帮助开发者更高效的开发出更稳定的优质应用。之前广大开发者所熟知的安卓开发库是 Android Support 库。而去年随着 Support 库的扩充,为了更合理的分类这些项目安卓开发团队把所有相关的 Support 项目以及新的几个项目重新打包组合为 Android Jetpack 项目发布。并且启用了新的包名:androidx,就和 javax 包名是 java 包名的扩充一样,现在 androidx 包名下的库也会长期伴随广大的安卓开发者了。
Jetpack 一共分为四大组件:
- 基础组件:这里面包含之前的 Support-V4 v7 等兼容性的支持库, Multidex 支持库和 测试相关的支持库,所以被称之为最基础的支持组件,一般的安卓应用开发都会使用到这些基础的库。 在这里面还包含了一个 Android KTX 项目(KTX 是 Kotlin extensions 的缩写),里面包含了一些常用的 Kotlin 语音的扩展函数,使用这个库可以进一步提高 Kotlin 语言的开发效率。
- 架构组件:这里面包含了安卓官方推荐的应用架构组件。之前的安卓开发广大的开发者分别推出了各种不同的开发架构,比如MVC、MVVM 等。现在安卓官方团队推出了一个统一的开发架构供广大开发者使用,这样以后安卓开发者之前的架构就统一了,有利于提高安卓开发社区的效率。这里面包含数据绑定、数据库、生命周期管理、工作调度管理等子项目。
- 行为组件:这里面包含了一些和安卓系统服务相关的一些 工具 项目。帮助开发者更好的使用系统的一些服务,比如下载服务可以用来下载大的文件、媒体服务可以用来管理流媒体的播放操作、通知服务可以方便兼容各种系统版本来管理应用发出的通知等。
- UI组件:提供了一些常用的UI控件,这些控件在标准的安卓系统中并不存在,但是随着时间的演变,各种UI交互形式和动画效果都会被设计出来,针对常用的控件和效果,安卓开发团队会开发出来放到这里供广大开发者使用,这样广大的应用开发者只需要关注本身的业务开发,而不用再重复创建这些通用的控件了,提升了开发效率和稳定性。这里面包含动画处理、自动补全功能、Emoji表情、布局以及安卓手表上使用的特殊UI控件等项目。
Kotlin
Kotlin 语言吸收了现代语言(Ruby、Scala等)的语法,并且避免了很多 Java 语言的问题,Kotlin 语言在创建之初就考虑和 Java 的互操作行,Kotlin 代码可以编译为 Java 字节码在 JVM 中运行,所以 Kotlin 语言已推出就收到很多 Java 开发者的喜爱。 随着 Kotlin 语言的稳定,现在 安卓开发团队也拥抱该语言了。最明显的标志就是,去年安卓开发文档中有关于如何用 Kotlin 语言编写安卓应用的专门介绍了,并且文档中的代码示例也都同时提供了 Java 语言和 Kotlin 语言两种语言了。
如果您在安卓应用开发中还没使用 Kotlin 语言,那么说明您有点落伍了。
Flutter
Flutter 是谷歌推出的一个实验性项目,推出之初主要考虑如何开发出同时支持 安卓和苹果 手机的项目,现在经过几年的发展,该项目终于发布了1.0版本,标识着该项目逐步成熟了,在移动应用的开发中可以使用该框架了。同时 Flutter 还是谷歌神秘的 Fuchsia OS 项目的应用开发框架。
目前 Flutter 只能支持在 安卓 和 苹果 系统上运行,但是下一个版本 Flutter 计划支持 Web,也就是同一个代码可以在 安卓、苹果和浏览器中执行,未来还能支持PC(Linux、MacOS、Windows)运行。
目前Flutter 适合那些和手机系统弱交互的项目使用,不依赖于手机系统的一些硬件。比如 电商项目(淘宝、外卖、团购)、学习培训等。
Dart
提起 Flutter 框架就不得不提起 Dart 开发语音,Flutter 框架就是使用的 Dart 开发语音。 Dart 语言也是集合了很多现代语言特点的新的开发语言,是有谷歌开发出来的。 本来是计划替代日益臃肿的 JavaScript 语言,所以 Dart 语言在创立之初就支持编译为 JavaScript 运行,并且早期谷歌还在 Chrome 浏览器中为 Dart 语言开发了一个运行环境,这样 Dart 语言可以直接在 Chrome 浏览器中运行。 之后考虑到各大浏览器厂商的竞争问题,除了 Chrome 浏览器之外,其他浏览器都不会考虑支持 Dart 语言直接运行的,所以最终谷歌只能重点发力如何把 Dart 语言编译为 JavaScript 而放弃了在其他浏览器推广直接运行 Dart 。
后来随着 Flutter 框架的出现, Dart 语言又找到了一个新的应用场景。
Dart 和 Kotlin 语言非常类似,都是吸收了近几十年编程语言优点。如果您熟悉 Kotlin,那么对 Dart 也是非常了解的。
招聘信息
今天受邀发布的招聘信息为出门问问公司,这是一家以语音交互和软硬结合为核心的人工智能公司,拥有自主研发的语音交互、智能推荐、计算机视觉及机器人SLAM技术。
至2017年4月,出门问问共完成六轮融资,投资方包括红杉资本、歌尔声学、Google、大众汽车集团。出门问问与Google、大众汽车集团均达成战略合作伙伴关系。
如果您对该公司感兴趣,愿意来为中国的AI加砖添瓦,并且可以独立完成以下题目,请发简历和下面题目的答案到如下Email: admin(at)goodev(dot)org
Find an 8 letter string of characters that contains only letters from acdegilmnoprstuwh such that the hash(the_string) is 25834396686443 if hash is defined by the following pseudo-code:
Int64 hash (String s) { Int64 h = 7 String letters = "acdegilmnoprstuwh" for(Int32 i = 0; i < s.length; i++) { h = (h * 37 + letters.indexOf(s[i])) } return h }
For example, if we were trying to find the 8 letter string where hash(the_string) was
26011490414321, the answer would be “wadoptig”.
一些相关的项目地址
出门问问:https://www.chumenwenwen.com/aboutus/intro.html
Jetpack:https://developer.android.google.cn/jetpack/
Android:https://developer.android.google.cn/kotlin/ktx KTX
Android:https://developer.android.google.cn/topic/libraries/architecture/ Architecture
AndroidX:https://developer.android.google.cn/jetpack/androidx/
Kotlin:https://kotlinlang.org/
Develop:https://developer.android.google.cn/kotlin/ Android apps with Kotlin
以上所述就是小编给大家介绍的《2019 新希望 新征程》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。