android开发年总结

从事android开发一年来,在andorid领域突飞猛进。

说说几大收获。

 

1.andorid基本上就是建立在binder机制上,来实现模块与模块之间的通信。

所谓的service,activity,provider,receiver四大金刚之间的通信都是通过binder进行的。

对客户端来说,binder本身是一个int。

对于服务端来说,binder是一块内存地址。

从客户端的binder转换到服务端的binder的过程是在内核中实现的。

 

2.android输入输出这一块底层采用的是 管道+共享内存的方式实现进程间的通信。从而将事件从驱动层过度到各个window。

 

3.android的View这一块采用经典的树状结构。用了一些设计模式,效率较低。这个比较简单。就不说了。opengl本身已经使用了双缓冲。所以双缓冲在android中的概念已经不存在。多级缓冲的效率并不高,所以也就不要再使用了。

 

4.Surface这一块。一个window对应一个surface。而一个surface仅仅存在于客户端。在服务端叫做layer,layer是通过共享内存的方式实现的,这样就可以达到服务端和客户端的缓冲区共享起来。一共8M。使用那一部分,主要是由offset和size决定。

 

5.关于特效等的制作都是matrix在作怪。学习矩阵和openGL是做特效的基础课程。不管中间经历了什么。从本质上来说,都是一个二维图形,到一个二维图形的映射。我们肉眼看到的东西始终是二维的。这是本质属性。

所谓的3D,也只是一种视觉欺骗罢了。照相机本身出的图实际上就是3D的。

 

6.明年准备涉入jni这一块。对于openGL的深入理解是打通android图形的关键所在。egl之类的库也是很重要的东东。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值