自身状况
1、开发几年了,都在不停的做项目,自己一直都在忙于应付各种业务需求的讨论、开发、测试、发布、维护升级,再有新的需求的循环开发。都是重复的劳动。
2、工作几年跳槽都是奔着能继续做项目练手学习更多知识,然后工资上也能多涨一点。但是几年的历练下来,回头才发现,确实是积累了很多做项目的经验,但是在大公司严谨的技术面试下暴露了自己很多的不足。没有认真研究过底层知识,对OC的原理了解太少。
如何抉择
很多人在进阶的路上都会纠结,是往深处拓展,还是往广度发展;
其实已经不止一位大牛提过,很多底层的知识都是互通的,当你的底层知识扎实了,学习新的技能就会很快,应该往深处挖
道理我都懂
道理我都懂,但是无从下手啊!!!
先来看看现在就能去做的:
1、作为程序员,最基本的要求是:代码可读性好,功能正常且没有明显bug。但这一点很多程序员都不做到;首先从规范自己的代码开始,代码写注释,不止是给自己看
2、时刻提醒自己“学习”,学习某件事的第一步是承认你不知道,换句话说:你所谓的“我知道我在做什么!”这种态度会妨碍你学习新的东西。
3、你是在学习技术,而不是在学如何使用工具,重点关注编程基础,因为基础永远不会改变;更关注体系结构而不是如何编程。
核心动画
从官方文档着手分析核心动画底层原理.了解仿射变换底层原理.以及粒子效果的实现.
1: 核心动画中仿射变换(*****)
2: OpenGL 中模型视图变换(***)
3: 3D数学--旋转/平移/缩放的数学原理(*****)
4: 核心动画中的特殊图层(****)
5: 核心动画实现粒子效果(****)
6: 粒子效果底层原理,使用OpenGL ES 实现粒子效果(*****)
单元测试
系统的单元测试息息相关,它能帮助开发人员,节省时间(尤其回归测试)辅助项目架构,降低耦合度!单元测试代码非常简单,但是思维确实很多开发者所欠缺的。总而言之,单元测试时一位iOS中高级开发人员必备技能
1:单元测试是什么 (***)
2:逻辑测试(****)
3:性能测试(*****)
4:异步测试(*****)
5:UI测试(****)
应用防护核心思路
移动开发中应用安全的运用越来越常见,而大部分的开发者还没有意识到自己应用的安全漏洞。原因是不了解安防原理。随着互联网的发展,移动应用越发注重app的安全性,特别涉及到交易的app;以破解的思维来防护,攻防兼备
1:共享缓存机制(****)
2:PIC(Position Independ code)技术(*****)
3:fishhook源码分析 原理探究(*****)
4:应用反hook防护(*****)