总结下最近项目用到的知识,技术点,总结工作中经常会用到的技能有哪些。
然后对这些技能进行深入学习,从而实现相同工作量下工作时间的缩短,相同工作时间下工作效率的提升。
最终的目标
-1.对工作的业务流程熟悉透,预研,编码,调试,上库,维护,问题单解决。
-2.工作中没有可以磕绊到自己的技术难点,没有自己模糊,不熟悉的地方。
---------------------------------------------------------------------------------------------------------------
最近GPS 地理围栏软件实现使用到知识点:
1.智能指针
2.容器map/mmap/vector 插入-删除-遍历-清空-size
3.静态变量
4.内部类-作用域
5.关键字-static-const
6.C语言-math-abs-sin-cos-asin-pow
7.double-long long 和0的比较,double和double之间比较
8.类型转子-const_cast
9.虚函数
10.线程-开启-循环-结束
11.单例模式
12.运算符重载 ==
13.拷贝,构造,赋值
14.引用和指针,返回值为类类型,返回值为类指针,返回值为类对象
15.怎么判断对象是否为“空”,没有初始化
16.new A 和 new A() 区别??
17.NULL,nullptr区别
18.线程的并发,异步
19.异常处理
20.加锁/解锁
21.三目运算符
22.if 加括号和不加括号
------------------------------------------------------------------------
工作需要理解的技术:
1.熟悉android 各种机制
-binder机制
-消息机制
-广播机制
-........
2.熟悉C++对android的封装机制
-Binder - 这个是基础
-Parcel - 很重要
-广播/clock/mutex/net/powmanger/download/属性文件.....
3.了解java语法
-最起码看代码不会很艰难,不会理解错代码的意思。
4.熟悉/熟练C++语法
-我们自己的业务都是C++实现的,必须对C++很熟悉
-一定会用到的语法
-虚函数/纯虚函数
-继承
-回调函数
-智能指针
-容器-vector
-前置声明
-友元
-指针/引用/const/static/
5.Git
-这个肯定会用到,也很重要,但是现在没用到,不过估计下个星期就要用到。
6.其他
-linux
-基本的命令需要知道,grep,sed,locate,find
-adb shell
-android shell 下命令
-dos
-批处理命令
-makefile
-能看懂,能修改
-shell 脚本
-看到AOS的shell编译脚本,感叹太厉害了。。