2021非科班生的Android面试之路,看完你还觉得算法不重要?文末有彩蛋
前言
程序员说不焦虑其实是假的,因为无论是现在还是最近几年,很早就有人察觉Android开发的野蛮生长时代已经过去。过去的优势是市场需要,这个技术少有人有,所以在抢占市场的时候,基本上满足需要就已经可以了。但是现在,各式各样的APP层出不穷,APP的质量成为新的竞争标准。这也意味着不管是系统设计还是性能优化等方面,市场都给Android开发者提出了更高的要求。那么,Android是不是真的不吃香了呢?其实不是的,高级及以上还有很大的需求缺口,非常稀缺人才。但是初级开发者真的已经不吃香了。丧气的说一句,初级学者在市场中的竞争优势其实是很少的。

学习思维脑图

对应脑图学习笔记

Android 开发分成 :
1. "开发" 一般的开发技能
2. "移动应用开发" 移动应用开发相关概念思想
3. "Android 开发" 特指与 Android 开发直接相关知识技能
正如你可能所想的那样,这样的问题不像1 + 1等于2那样,有一个简单确切的答案.真正答案因人而异. 下面我以自己几年的Android 开发经验,与你分享一二,就按我上面所分解的几个方面来说一说:
一: 开发技能
你可以看成是一般的编程技能,这方面你可以从:
-
编程语言的熟练掌握
-
面向过程编程思想
-
面向对象的思想
-
函数式编程思想
-
设计模式
-
算法与数据结构
-
网络编程,TCP/IP 协议
-
重构
-
版本管理(Git 等)
-
等方面的检查和提高自己
二: 移动应用开发
你可以看成是 App 开发,估计这可能是你更感兴趣的,这方面你可以从: MVC 这成三个方面来对照检查下
M: 数据层
- 移动应用数据结构特点
- 数据存储 :SQLite数据库,文件存储
- 数据格式: XML 格式,JSON格式 序列化与反序列化
- 数据查询: 移动应用一般数据库主要是 用SQLite
- (说回来,单是 SQLite 数据库,就可以花不少时间来深入学习下,
- 因为对一个应用来说,数据基本是核心)
V: 视图层
- 移动应用界面特点
- 移动应用构建界面常用方法
- 移动应用交互特点
- 移动应用动画
- 系统 UI 系统特点,优点,缺点及局限
C: 控制层
- 移动应用控制层特点
- 控制层的生命周期
- 多线程,UI 线程,后台线程
E: 事件层
- 事件处理,触控事件,手势,事件响应链
三: Android 开发
工具篇 - 工欲善其事,必先利其器
- Android Studio 掌握用得怎么样了?
- Adb 及相关工具会用吗?
- Gradle 构建系统呢?
- 文档篇 - 看 Android 官方是怎么定义开发各种技能的.
相信常看 Android 开发者官方网站,你会收益良多,我下面写的也不必看了.
系统篇
- Android 多线程编程,异步编程特点 - Loop,Handler,IntentService,Broadcast,MessageQueue
- Android UI 框架特点,优势和不足
然后你再按 MVC 将 Android 各部分再分析分析,总结总结.
最后
下面是辛苦给大家整理的学习路线,有需要的可以点击这里免费获取

浙公网安备 33010602011771号