Android程序员的进阶之路
本文主要论述的是Android程序员的进阶之路,博主本人就是一名android开发攻城狮,所以这里讲述的大多数是android开发攻城狮的技术进阶之路,如有问题请多指正。
大家都知道程序员之中有有菜鸟程序员和大神之分,这里我这暂时把android程序员分为几个层次:android初级程序员、android中级程序员、android高级程序员、android技术专家、CTO等等,不同的级别掌握的能力不一而定。更好的了解不同阶段程序员的进阶之路才能把握好自身提高的方向,有目标的提高才是最有效率的提高。
(一)android初级程序员
总结:能干活,有学习能力,能跟着团队成员做项目;
技能:基础的组件的使用,熟悉Java基本的语法,Gson,xml数据解析,第三方框架的使用,熟悉android的常用API,熟悉网络框架或者API的使用,掌握数据库相关知识点,熟悉android的四大组件、生命周期,熟练掌握界面布局,了解android项目目录的组织架构等等;
要求:初级程序员一般都是从电脑小白成长起来的,当然了也有可能是web或者是其他方面的大牛转换过来的,想要成为一个高逼格的初级android程序员需要多看多读多写多想,能够看懂他人的代码。能够知道问题大概需要什么方式,对android系统已经有了初步的认识等等。
(二)android中级程序员
总结:能够分析问题,能够解决问题;
技能:了解android的签名机制(实现原理,具体操作等等),打包机制(多渠道打包,打包流程等等),了解apk安装文件压缩(压缩图片,代码压缩,.so文件压缩等等),事件分发,View绘制流程,webview相关知识点(与Native的交互,性能优化等),熟悉数据库的使用(基本API,第三方ORM框架,ORM框架的实现原理等等),java反射原理与简单实践等,activity的启动模式,activity,service,fragment,broadcastreceiver广播生命周期,屏幕适配,AIDL与messager的简单实用,自定义组件(自定义View与自定义ViewGroup),动画(补间动画,帧动画,属性动画),通知栏消息,版本新特性等等等等;
要求:开始阅读android方面的而源码,不但能看懂别人的代码还需要能够修改别人源码,对android的体系结构,组成方式,常见开源社区,技术要点能够了然于胸。
(三)android高级程序员
总结:能够解决问题,能够发现问题;
技能:手动编写框架,设计模式,代码规范,项目进度,时间估算,启动流程,性能优化,OOM,没存溢出与泄露,JNI,脚本开发,activity启动流程,android中的IPC机制(Binder原理),对iOS等其他移动开发现学现用等等;
要求:能够造轮子,比如写一个网络框架,事件总线控件,特效View等,重点是能够为产品造轮子。
(四)android技术专家
总结:对某一方面非常精通与专注;
技能:比如对android的对媒体模块十分熟悉,阅读过android多媒体模块的源码,能够更改其中的不足与BUG等等;
要求:熟读android源码,对android的某一模块有自身的看法并能够有相应的修改能力,能够知道团队他人的日常产品开发等。
(五)CTO
总结:似乎已不再是程序员的范畴;
技能:专注技术大的方向的把控;
Android程序员的进阶之路的更多相关文章
- 2017PHP程序员的进阶之路
2017PHP程序员的进阶之路 又是一年毕业季,可能会有好多毕业生即将进入开发这个圈子,踏上码农这个不归路.根据这些年在开发圈子总结的LNMP程序猿发展轨迹,结合个人经验体会,总结出很多程序员对未来的 ...
- 【转】2017PHP程序员的进阶之路
2017PHP程序员的进阶之路 又是一年毕业季,可能会有好多毕业生即将进入开发这个圈子,踏上码农这个不归路.根据这些年在开发圈子总结的LNMP程序猿发展轨迹,结合个人经验体会,总结出很多程序员对未来的 ...
- Android程序员接下来的路该如何走?
随着“5G”(第五代移动通信技术)商用进程越来越快,各个芯片和终端厂商们都已经开始布局准备,想必智能手机会是消费者最先能够接触到5G的重要终端,而和其相辅相生的移动互联网也势必会有新的发展. 但是和行 ...
- PHP程序员的进阶之路
第1阶段:初级PHP程序员 重点:把LNMP搞熟练(核心是安装配置基本操作)目标:能够完成基本的LNMP环境安装,简单配置维护:能够做基本的简单系统的PHP开发:能够在PHP中型系统中支持某个PHP功 ...
- Android高薪之路-Android程序员面试宝典
Android高薪之路-Android程序员面试宝典
- Android 程序员必须知道的 53 个知识点
1. android 单实例运行方法 我们都知道 Android 平台没有任务管理器,而内部 App 维护者一个 Activity history stack 来实现窗口显示和销毁,对于常规从快捷方式 ...
- 【定有惊喜】android程序员如何做自己的API接口?php与android的良好交互(附环境搭建),让前端数据动起来~
一.写在前面 web开发有前端和后端之分,其实android还是有前端和后端之分.android开发就相当于手机app的前端,一般都是php+android或者jsp+android开发.androi ...
- zz 游戏程序员的学习之路(中文版)
游戏程序员的学习之路(中文版) Milo Yip · 1 天前 感谢 @楚天阔(tkchu)编写脚本及整理中文译本数据,自动从英文版生成中文版,SVG / PDF 版本中的书籍图片现在链接至豆瓣页面. ...
- 给Android程序员的六个建议
给Android程序员的六个建议 分类: 安卓相关2015-07-14 23:58 177人阅读 评论(0) 收藏 举报 android程序员 如果你一年前写的代码 , 在现在看来你还感觉写的很不错 ...
随机推荐
- leetcode 【 Swap Nodes in Pairs 】python 实现
题目: Given a linked list, swap every two adjacent nodes and return its head. For example,Given 1-> ...
- Form 组件动态绑定数据
1.Form 组件的作用: a.对用户提交的数据进行验证(form表单/ajax) b.保留用户上次输入的信息 c.可以生成html标签(input表单类的标签) 2..由于form组件中每个字段都是 ...
- 【转】C# client 与java netty 服务端的简单通信,客户端采用Unity
http://blog.csdn.net/wilsonke/article/details/24721057 近日根据官方提供的通信例子自己写了一个关于Unity(C#)和后台通信的类,拿出来和大家分 ...
- Log4j官方文档翻译(六、日志的级别)
org.apache.log4j.Level 类提供了下面几种日志级别,你也可以通过继承这些类,自定义级别 ALL 所有日志级别都包括 DEBUG 指定信息事件的粒度是DEBUG,在调试应用的时候会有 ...
- BZOJ 1083:[SCOI2005]繁忙的都市(最小生成树)
1083: [SCOI2005]繁忙的都市 Description 城市C是一个非常繁忙的大都市,城市中的道路十分的拥挤,于是市长决定对其中的道路进行改造.城市C的道路是这样分布的:城市中有n个交叉路 ...
- 糗事百科python爬虫
# -*- coding: utf-8 -*- #coding=utf-8 import urllib import urllib2 import re import thread import ti ...
- jsonp 格式
jQuery(document).ready(function(){ $.ajax({ type: "get", async: false, url: "http://f ...
- Codevs 1993 草地排水
1993 草地排水 时间限制: 2 s 空间限制: 256000 KB 题目等级 : 钻石 Diamond 题目描述 Description 在农夫约翰的农场上,每逢下雨,Bessie最喜欢的三叶草地 ...
- js 字符串长度截取
<script> function cutstr(str, len) { var temp, icount = 0, patrn = /[^\x00-\xff]/, strre = &qu ...
- border:none;和border:0;的区别
一.是理论上的性能差异 [border:0;]把border设为“0”像素虽然在页面上看不见,但按border默认值理解,浏览器依然对border-width/border-color进行了渲染,即已 ...