背景:做了一个月 App 后,直接看安卓启动流程,这一块是 cpp 文件,大致能看懂调到哪个函数去了,目前看了一些 Activity 启动流程,对 C/S 通信,Java Framework 层有了一些认知,但是对 Binder 底层的实现,还有大量的 JNI 调用,由于对 c 和 c++知识的薄弱,无法入手。想到磨刀不误砍柴工,想补这块的薄弱知识点,如果可以,劳烦前辈们给几条学习 C 和 C++的路子,之前我是做 Java 后端的,学了很多业务框架,但不指导 C 和 C++是不是也有类似框架的东西,不知道 C 和 C++要学到什么程度,目前是打算跟着 Linux C 一站式学习学学 c 学 c 和 c++是想看结合 JNI 看 native 层的 Framework 的东西,因为工作原因,未来都是和源码打交道,深感自己 c 和 c++知识的薄弱,导致无法深入细节,前辈们有一些学习建议吗?
1
Seawalker 2019-10-15 20:57:46 +08:00 via Android
鉴于没有 c/c++,第一步还是先学好 android 上的 java 层 framework,了解 binder 的使用,看看 ams,pms,wms 的 java 层代码。后期可以买本 c++ prime 书籍和 linux 高级环境编程
|
2
kangzai50136 2019-10-16 09:26:42 +08:00
厉害,能做 framework 层的都是大神。
|
3
huruwo 2019-10-16 11:06:22 +08:00
应用开发还是系统定制开发,据我所知 vivo 好像做系统方面的开发比较多。
系统定制 Framework 层开发将来就业面就没有做业务应用开发广。 |
5
huruwo 2019-10-16 14:55:13 +08:00
@ericgui 所谓的 Framework 底层开发还是一样 ,对系统修修补补。主要是整个系统都是谷歌开发的,所谓的厂商也只能基于原系统做些定制化的开发。并没有比 CRUD 高端多少。一样要看产品经理的脸色,而且以后跳槽也就只能在几个手机厂或者一些物联网比如车载系统跳。
关键看钱给的够不够,管他 CRUD 不 CRUD。 |
6
champloo OP @Seawalker 感谢回复,谢谢老哥指路
@kangzai50136 没有啦,Framework 层也不算特别底层,下面还有 native Framework 层,JNI,kernel @huruwo 感谢回复,是做系统定制开发这一块,确实像老哥你说的,都是开发,不比谁高端,都是干活的 |
7
Cukuyo 2019-10-17 11:34:03 +08:00
进来之前我想说放弃安卓学好 Java 后端,进来后我想说牛逼啊,一开始就往底层去了
|
9
Cukuyo 2019-10-18 14:08:28 +08:00
@champloo https://www.v2ex.com/t/539626 去看看这里面的吐槽
|
10
xuroid 2019-10-18 21:07:17 +08:00
比我强多了,我只会 JAVA 写 android 应用层。。。。
|
11
xwkkk 2019-10-26 12:39:20 +08:00
惊了,正打算去安卓,有点被劝退了
|