【纯感悟】我眼里的安卓架构师(一)
2015-12-17 04:38
399 查看
提起架构师,大家会觉得很神秘很高深,但是真的如此么?安卓架构师是在现实的产品需求基础上对技术的一些整体构思,要考虑系统性,实用性,优化性,逻辑性,可扩展性,要满足产品各方面的技术需求。相当于是顶层设计,要兼顾到各个方面。下面就具体的说一下:
1:从编程语言角度考虑问题。android分为四层,第底层是liunx内核,最上面是framework层,基本上可以看作是对java的封装,除了要NDK调用C库里面的代码,其他的情况下是基本上用java。个人认为java思想非常不错,面向对象的编程,看似简单,在项目是有非常大的好处,对安卓也是非常适合的。所以请多掌握一些java的编程思想。从底层设计上进行考虑,比如:如何完全的退出?要把Activity等整体组件作为一个对象看待和管理。如何做到全局引用上下文?application是否可以作为一个context对象看待。一些常用的功能模块如网络模块,判断有无网络,下载,通知等能够作为一个整体的功能对象看待呢?
能不能用继承的思想来统筹规划一些相似的功能呢?
2:模块集成化:这个简单的来说,作为一个架构师,一个非常重要的工作是能够做到整理,梳理产品技术实现流程,规划的要清清楚楚,明明白白。最重要的是要进行功能模块化,第一可以把功能模块化之后,实现多人同时开发,出现bug之后也好发现问题。第二针对模块进行下一步的优化和处理,针对模块出现问题进行完善。第三代码看起来更加简洁,易懂,方便给后来者参考,维护起来更加方便。那么要做哪些常用模块? 网络编程 , 数据存取(sqlite,shareprefence等),
,java bean类, Adapter 适配器 , Threads(线程类,当然更加需要一个线程池管理),Activity or fragment(方便查阅和修改) ,分享模块,通知类管理,service(服务类),Utils(一些比较常用的辅助功能),TASKs(异步任务类)等等,我们都要尽量的规划好,自己查找和修改起来也会非常方便,从另外一个角度来讲 单个功能模块的开发要尽量放在一起。比较生动和具体。
3:编程设计模式:MVC,java设计模式(工厂模式,单例模式,适配器模式,组合模式,策略模式,观察者模式,迭代器模式,还有继承和多态),这些都需要好好的把握的。实践之后就会发现,对代码优化有非常多的好处,让你的架构更加清晰明确。
1:从编程语言角度考虑问题。android分为四层,第底层是liunx内核,最上面是framework层,基本上可以看作是对java的封装,除了要NDK调用C库里面的代码,其他的情况下是基本上用java。个人认为java思想非常不错,面向对象的编程,看似简单,在项目是有非常大的好处,对安卓也是非常适合的。所以请多掌握一些java的编程思想。从底层设计上进行考虑,比如:如何完全的退出?要把Activity等整体组件作为一个对象看待和管理。如何做到全局引用上下文?application是否可以作为一个context对象看待。一些常用的功能模块如网络模块,判断有无网络,下载,通知等能够作为一个整体的功能对象看待呢?
能不能用继承的思想来统筹规划一些相似的功能呢?
2:模块集成化:这个简单的来说,作为一个架构师,一个非常重要的工作是能够做到整理,梳理产品技术实现流程,规划的要清清楚楚,明明白白。最重要的是要进行功能模块化,第一可以把功能模块化之后,实现多人同时开发,出现bug之后也好发现问题。第二针对模块进行下一步的优化和处理,针对模块出现问题进行完善。第三代码看起来更加简洁,易懂,方便给后来者参考,维护起来更加方便。那么要做哪些常用模块? 网络编程 , 数据存取(sqlite,shareprefence等),
,java bean类, Adapter 适配器 , Threads(线程类,当然更加需要一个线程池管理),Activity or fragment(方便查阅和修改) ,分享模块,通知类管理,service(服务类),Utils(一些比较常用的辅助功能),TASKs(异步任务类)等等,我们都要尽量的规划好,自己查找和修改起来也会非常方便,从另外一个角度来讲 单个功能模块的开发要尽量放在一起。比较生动和具体。
3:编程设计模式:MVC,java设计模式(工厂模式,单例模式,适配器模式,组合模式,策略模式,观察者模式,迭代器模式,还有继承和多态),这些都需要好好的把握的。实践之后就会发现,对代码优化有非常多的好处,让你的架构更加清晰明确。
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories