大厂Android工程师到底厉害在哪里?,作为一个Android开发者

38 阅读5分钟

基础知识主要是UI这块,要学习如何开发界面,并且不只是学习如何创建布局,而是从原理的角度理解UI底层,学习原理,可以达到的效果是:以后市面上绝大部分的UI特效,各种各样的产品需求都不用指望第三方sdk,,完全可以靠自己的能力写出来。

  • Activity

  • Fragment

  • Service

  • BroadcastReceiver

  • ContentProvider

  • 数据存储

  • View

  • 进程

  • Parcelable 接口

  • IPC

  • Window / WindowManager

  • Bitmap

  • 屏幕适配

  • Context

  • SharedPreferences

  • 消息机制

  • 线程异步

  • RecyclerView 优化

  • Webview

Android扩展知识点汇总

==========================================================================

扩展部分这里,就涉及了一些较为高级的技术。比方说:hook、架构相关的知识、NDK……

架构这块我想就不用多说了,不想当架构师的程序员不是好程序员~

像NDK主要是面对音视频开发,比如抖音这种现象级产品,app内播放视频,视频加特效,都可以通过NDK这块的学习完成,另外NDK会涉及C/C++知识,这块在未来,如果涉及到物联网的开发也能用得上,最重要的还是关于音视频的开发,音视频工程师的薪资水平基本比其他岗位高处30%,还有webrtc技术,也是非常值得深挖的。

  • ART

  • Hook

  • Proguard

  • 架构

  • Jetpack

  • NDK 开发

  • 类加载器

性能优化知识点汇总

=====================================================================

性能优化是针对整个app开发而言的。一个好的项目被开发出来,不单是产品要好,开发者也需要知道,为什么我开发的这个app能够在绝大多数的手机运行,为什么用户在使用的时候绝大部分的手机不会出现bug。我们的apk文件可以优化到很小的,比如你做一个项目,打包之后可能是10m,但是经过优化之后可能就只有8m,甚至更小。

另外,我们做的项目安全性如何?我们凭什么断定我们做出来的app安全性好。这都是进阶路上必须要思考的问题。

  • 启动优化

  • 存储优化

  • 网络优化

  • 耗电优化

  • 多线程并发优化

  • 安装包优化

篇幅有限,无法一个一个的展示(这些知识点均已收集在了这份“Android开发核心知识点笔记”里),觉得有需要的朋友可以自行前往 GitHub 查阅

Android开源库源码分析

==========================================================================

相信大家经常逛各大博客的话就会看到,很多大牛都会建议大家多读源码,技术的显著提升恰恰就是从看源码开始的。

  • OKHttp

  • Retrofit

  • Glide

  • GreenDao

  • RxJava

  • LeakCanary

  • ButterKnife

  • Dagger 2

  • EventBus

Kotlin知识点汇总

=======================================================================

  • 对象

  • 继承

  • 变量

  • 常量

  • 静态常量

  • 定义方法

  • 重载方法

  • 基本数据类型

  • 比较类型

  • 转换符

  • 字符串比较

  • 数组

  • 循环

  • 角标循环

  • 高级循环

  • 判断器

  • 构造函数

  • 类创建

  • 私有化 set 方法

  • 私有化 get 方法

  • 枚举

  • 接口

  • 匿名内部类

  • 内部类

  • 内部类访问外部类同名变量

  • 抽象类

  • 静态变量和方法

  • 可变参数

  • 泛型

  • 构造代码块

  • 静态代码块

  • 方法代码块

  • 可见修饰符

  • 无需 findViewById

  • Lambda

  • 函数变量

  • 空安全

  • 方法支持添加默认参数

  • 类方法扩展

  • 运算符重载

  • 扩展函数

  • 协程

设计模式汇总

==================================================================

  • 设计模式分类

  • 面向对象六大原则

  • 工厂模式

  • 单例模式

  • 建造者模式

  • 原型模式

  • 适配器模式

  • 观察者模式

  • 代理模式

  • 责任链模式

  • 策略模式

  • 备忘录模式

Gradle知识点汇总

=======================================================================

  • 依赖项配置

计算机网络基础

===================================================================

  • 网络体系的分层结构

  • HTTP 相关

  • TCP/IP

  • Socket

C++知识点汇总

====================================================================

  • 头文件

  • 数据类型

  • typedef

  • 类型限定符

  • 定义常量

  • 存储类

  • 引用 vs 指针

  • struct vs class

  • 成员函数

  • 析构函数

  • 拷贝构造函数

  • friend 友元

  • inline 内联函数

  • 继承类型

  • 运算符重载

  • 动态内存

  • 命名空间

  • 预处理器

  • 信号

  • 线程

  • 强制类型转换

  • 智能指针

  • 内存空间

【附】相关架构及资料

资料领取

点击这里免费获取Android IOC架构设计等资料

领取获取往期Android高级架构资料、源码、笔记、视频。高级UI、性能优化、架构师课程、NDK、混合式开发(ReactNative+Weex)微信小程序、Flutter全方面的Android进阶实践技术,群内还有技术大牛一起讨论交流解决问题。