你认为Android现阶段什么方向最值得学习

开头先问一句,你们有想我吗?告诉我,我偷电瓶车养你!


今天这个议题很有意思,叫做 [你认为Android现阶段什么方向最值得学习]


首先,这个议题会让大家争论不休,因为这的确没有合适的答案,所以我加了你认为这三个字,你认为的就是对的,所以答应我,不要激动,你开心就好。


并且,这里提到的是方向,就是你已经做了好几年的Android,现在想进一步了解,进阶一些新的方向性,比如React Native,Framework等,所以说RxJava,进程保活等的独秀同学,请你坐下。


那我首先枚举一些吧

  • React Native

  • Flutter

  • Kotlin

  • Framework

  • 音视频

  • 小程序 / 快应用

  • 物联网 / 车载


我举例子的比较笼统,各位独秀同学也可以补充,我在下一期也会补上


我先把我枚举的这些说一遍,咱们再来讨论吧


React Native

React Native 刚出来的时候是挺风光的,他是Facebook于2015年4月开源的跨平台移动应用开发框架,是Facebook早先开源的JS框架 React 在原生移动应用平台的衍生产物,目前支持iOS和安卓两大平台。RN使用JavaScript语言,类似于HTML的JSX,以及CSS来开发移动应用,因此熟悉Web前端开发的技术人员只需很少的学习就可以进入移动应用开发领域。


当然,有优点也有缺点

  • 优点

  • 它比原生要灵活一些,H5体验也还不错

  • 替代了传统的WebView,更加高效

  • 比较丰富的第三方插件等

  • 和原生相得益彰,可互补

  • 热更新

  • 缺点

  • 跨平台太笼统,两个平台的特性不一致也很麻烦

  • App体积会增大

  • Android上的兼容问题麻烦


前几年还很多人使用,但是最近貌似很多大团队都开始弃用了,个人觉得你如果会H5和JS的话,那你可以去了解学习一下,但是如果你都不会还是想深入研究,那相对来讲,你要学习比较多的前端知识以及RN Api,也是要费一番功夫的。


  • 教程:http://facebook.github.io/react-native/docs/getting-started.html


Flutter

Flutter是Google在2018年2月27日,在2018世界移动大会上发布的用以帮助开发者在ios和Android两个平台开发高质量原生应用的全新移动UI框架


  • 官网:https://flutter.io/

  • 中文论坛:http://flutter-dev.cn/


Flutter我还不是太了解,不过是Google发布的,就前景来看,还是值得肯定的,先待定,以后补充,如果有小伙伴了解的话可以投稿或者留言评论。


Kotlin

Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,被称之为 Android 世界的Swift,由JetBrains 设计开发并开源。


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

在Google I/O 2017中,Google 宣布 Kotlin 成为 Android 官方开发语言。


他有几个特色很值得肯定


  • Android 官方开发语言

  • 与Java互通,可相互转换

  • 简洁安全等


我个人是非常看好KT的,也非常建议各位去学习一下,而且你学习之后会觉得这门语言还是很棒的,快快学习起来吧,Github上用KT写的Android项目越来越多啦...


  1. Kotlin 官网:https://kotlinlang.org/

  2. Kotlin 文档:https://kotlinlang.org/docs/reference/

  3. Kotlin 中文文档:http://www.kotlincn.net/docs/reference

  4. Kotlin GitHub:https://github.com/JetBrains/kotlin


Framework

想进阶的话,Framework是有必要了解的,你要linux sync一份源码,了解一下编译,Build系统,mk脚本,一些机制的启动过程,一些组件的执行过程,一些控件的绘制过程等,博大精深,这是一条很长很长的路,天将降大任于斯人也。


学习还是要学习的,就是要看你想深入到什么地步,是只是想简单理解,还是想修改,乃至ROMer,这样你的Android道路也会越来越宽,同样的,你的头发也会和我一样,越来越少。


至少你要明白的是,你需要了解Linux的常用命令和使用技巧,C/C++的基本语法,源码的结构树,以及各种脚本的大致含义,比如你内置一个第三方Apk,mk脚本应该怎么写,同样的,你想知道四大组件的工作过程,也要追踪源码一路跟下去


我在看一本叫做《深入解析Android5.0》的书,但是说实话,还是有些晦涩,0基础的同学建议再往浅一点学习,一步步进阶。


  • 清华大学开源软件镜像站:https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/


如果你有梯子,可以下载Google官方源码,这里推荐你下载清华大学源的AOSP


音视频

目前市场急需音视频人才,这是毋庸置疑的,南抖音,北快手的崛起,加上头条等小视频,直播等兴起,这个行业很吃香是真的。


不过音视频这块也是比较难的,音频的录制,解码等,包括视频,你要学习的东西有很多,熟悉Mediacodec,NDK,JNI,C/C++等基本技术,还需要了解ffmpeg, OpenGL等相关,学习难度较大,但是回报也是比较大的。


如果你有C/C++基础,倒是可以试试,但是如果你还要从头学习C/C++,那就有些许麻烦了,学会这两门不是一朝一夕的,了解api的同时,实践也很重要。


小程序 / 快应用

小程序是基于微信这个亿级流量入口所衍生出来的产品,而快应用,快应用是九大手机厂商基于硬件平台共同推出的新型应用生态。用户无需下载安装,即点即用,享受原生应用的性能体验,不过个人觉得,他已经凉凉了,小程序倒是挺看好的,腾讯这座大山,微信这座凉亭,你想不凉快都难,不过他最终的定位目前并不是很清晰,一直不温不火的进行着,其实很容易的就想到了,腾讯的一贯作风,就是融入你的生活,蚕食市场,就比如近几年电竞的火热,潜移默化的让人们接收女孩子也可以玩游戏,从早期的王者荣耀宣传妹子多,到QQ飞车到吃鸡等,还别说,妹子真多.....


这些就不扯了,回到正题,我还是觉得和RN一样的态度,你是否刚需,比如你公司有需求,那你可以去学习,如果你什么都不会,那就要斟酌一下到底对你合不合适了,这个谁也说不上来,冷暖自知吧。


物联网 / 车载

这是我所在的行业,不温不火,技术不会那么前沿,积累最重要,这个行业需要了解的东西太多了,一定要沉淀,深度沉淀。


之前一个做移动端的朋友来我这上班,然后就开始感慨,我之前这些东西有一个月的时间,这里只有两周的时间


物联网不等于车载,我为什么要提出来呢,是因为物联网范围比较大, 我拿车载来讲,这也是我比较熟悉的


你入这个行业,首先,你要对整个源码有稍微一点了解,基本的编译,烧录还是要会的,其次就是一些本地化的东西,比如串口,蓝牙,WIFI等,其次是上层应用,比如多媒体,收音机,你要理解解码,MCU通信,如果做Launcher,Setting,也需要了解一些你做互联网应用接触不到的东西,比如系统权限,系统接口,并且对你编码能力有一些要求,毕竟设备的配置不高,性能优化的要求还是比较高的


而且除了这些专业知识,你还需要了解一些课外知识,比如让你做空调系统的语音控制,你需要了解方控,指示灯标识,各种模式的空调模式等,你会开车还好说,你不会开呢? 同理还有很多需要注意的细节。


但是这个行业还是值得进军的,每天都倍感压力的工作何尝不是天天在进步。


描述的比较粗浅,大致就是发表了一下自己的看法,所以你现在认为Android现阶段什么方向值得学习呢? 答案应该已经在你心中了


我每篇文章末尾,都会对上篇文章的一些有意思的留言进行一些简单的回答,一起来看下上一篇的留言:


640?wx_fmt=png

这位同学目的性很明确,这是值得赞同的

640?wx_fmt=png

这位同学直接从良了


其中上篇细心的同学发现了一些错别字,手工码字,漏了一些,今后我会更加细心的复查的,感谢指出,谢谢


文末,再抛出几个议题


[程序员如何锻炼自己]

[程序员的系统桌面应该是什么样的]


嗯,就这么多,赶紧点赞+留言吧。


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值