前言
先简单交代一下背景吧本人毕业于某不知名985的本硕17年毕业加入阿里今年下半年跳槽到了头条一直从事后端研发相关的工作。
之前没有实习经历算是两年半的工作经验吧。这两年半之间完成了一次晋升换了一家公司有过开心满足的时光也有过迷茫挣扎的日子不过还算顺利地从一只职场小菜鸟转变为了一名资深划水员。
在这个过程中总结出了一些还算实用的划水经验有些是自己领悟到的有些是跟别人交流学到的在这里跟大家分享一下。
1、Java se基础
1).Java基本数据类型与表达式分支循环。 2).String和StringBuffer的使用、正则表达式。 3).面向对象的抽象封装继承多态类与对象对象初始化和回收构造函数、this关键字、方法和方法的参数传递过程、static关键字、内部类。 4).对象实例化过程、方法的覆盖、final关键字、抽象类、接口、继承的优点和缺点剖析对象的多态性子类和父类之间的转换、抽象类和接口在多态中的应用、多态带来的好处。 5).Java异常处理异常的机制原理。 6).常用的设计模式Singleton、Template、Strategy模式。 7).JavaAPI介绍种基本数据类型包装类System和Runtime类Date和DateFomat类等。 8).Java集合介绍Collection、Set、List、ArrayList、LinkedList、Hashset、Map、HashMap、Iterator等常用集合类API。 9).JavaI/O输入输出流File和FileRandomAccess类字节流InputStream和OutputStream字符流Reader和Writer以及相应实现类IO性能分析字节和字符的转化流包装流的概念以及常用包装类计算机编码。 10).Java高级特性反射和泛型。 11).多线程原理如何在程序中创建多线程(Thread、Runnable)线程安全问题线程的同步线程之间的通讯、死锁。
2、android UI编程
1)、Android开发环境搭建Android介绍Android开发环境搭建第一个Android应用程序Android应用程序目录结构。
2)、Android初级控件的使用
TextView控件的使用 Button控件的使用方法 EditText控件的使用方法 ImageView的使用方法 RadioButton的使用方法 Checkbox的使用方法 Menu的使用方法
3)、Android高级控件的使用
ListView的使用方法 GridView的使用方法 Adapter的使用方法 Spinner的使用方法 Gallary的使用方法 ScrollView的使用方法 RecyclerView
4、对话框与菜单的使用
Dialog的基本概念 BlockquoteAlertDialog的使用方法 DatePickerDialog的使用方法 Menu的使用方法 自定义Menu的实现方法
5.控件的布局方法
线性布局的使用方法 相对布局的使用方法
6.多Acitivity管理
AndroidManifest.xml文件的作用 Intent的使用方法 使用Intent传递数据的方法 启动Activity的方法 IntentFilter的使用方法 Activity Group的使用方法
7、自定义控件实现方法
自定义ListView的实现方法 可折叠ListView的使用方法 自定义Adapter的实现方法 自定义View的实现方法 动态控件布局的上实现方法 上拉刷新下拉加载更多
3、android网络编程与数据存储
1).基于Android平台的HTTP通讯
Http协议回顾 使用Get方法向服务器提交数据的方法 使用POST方法向服务器提交数据的实现方法 使用Http协议实现多线程下载 使用Http协议实现断点续传
2).Android数据存储技术
SQLite3数据库简介 SQL语句回顾 SQLite3编程接口介绍 SQLite3事务管理 SQLite3游标使用方法 SQLite3性能分析 访问SDCard的方法 访问SharedPreferences的方法
初级工程师
技术要求
- 基本知识点 比如四大组件如何使用、如何创建Service、如何进行布局、简单的自定义View、动画等常见技术
- 书籍推荐 《第一行代码 Android》、《疯狂Android》
中级工程师
技术要求
-
稍微深入的知识点 AIDL、Messenger、Binder、多进程、动画、滑动冲突、自定义View、消息队列等
-
书籍推荐 《Android开发艺术探索》、《Android群英传》
-
AIDL熟悉AIDL理解其工作原理懂transact和onTransact的区别
-
Binder从Java层大概理解Binder的工作原理懂Parcel对象的使用
-
多进程熟练掌握多进程的运行机制懂Messenger、Socket等
-
事件分发弹性滑动、滑动冲突等
-
玩转ViewView的绘制原理、各种自定义View
-
动画系列熟悉View动画和属性动画的不同点懂属性动画的工作原理
-
懂性能优化、熟悉mat等工具
-
懂点常见的设计模式
-
搞懂view的滑动原理
-
搞懂如何实现弹性滑动
-
搞懂view的滑动冲突
-
搞懂view的measure、layout和draw
-
然后再学习几个已有的自定义view的例子
-
最后就可以搞定自定义view了所谓万变不离其宗
高级工程师
技术要求
-
稍微深入的知识点
-
系统核心机制
-
基本知识点的细节
-
设计模式和架构
-
书籍推荐 《Android开发艺术探索》、《Android 源码设计模式解析与实战》、《Android内核剖析》
-
继续加深理解”稍微深入的知识点“中所定义的内容
-
了解系统核心机制
- 基本知识点的细节
- 熟悉设计模式有架构意识学习方法
其实30岁到40岁是一个人职业发展的黄金阶段一定要在业务范围内的扩张技术广度和深度提升上有自己的计划才有助于在职业发展上有持续的发展路径而不至于停滞不前。
不断奔跑你就知道学习的意义所在
《Android高级架构师面试指导2021大厂面试真题》免费领取
在
[外链图片转存中…(img-AF58Znn0-1623241945163)]
《Android高级架构师面试指导2021大厂面试真题》免费领取
[外链图片转存中…(img-Q74dExgM-1623241945165)]