Android应用开发揭秘之优化技术
2013-06-28
第15章 优化技术
不管用什么语言进行开发,所有的优秀代码都会展示出共有的经典品质:
简练,可读性强,模块化,层次性,设计良好,高效,优雅,清晰等。
Java程序员能够依据Java编程规范养成良好的编程习惯,是编写良好Java程序的先决条件。
从一开始就写干净的代码,可以在程序开发过程中以及程序维护阶段不断受益。
1. 基本要求
2. 可读性要求
3. 结构化要求
4. 正确性与容错性要求
5. 可重用性要求
有些问题可能在多个模块中都出现(比如,日志记录、权限检查和事务管理),为了记录每个方法进入和离开时的信息,你不得不在每个方法中添加log等信息。将这些解决问题的功能点散落在多个模块中会使冗余增大,并且当多个功能点出现在一个模块中时,代码会变得很难维护。因此,AOP(Aspect Oriented Programming ,面向切面编程)应运而生。如果说OOP(Object Oriented Programming ,面向对象编程)关注的是一个类的垂直结构,那么AOP就是从水平角度来看待问题的。
动态代理类可以在运行时实现若干接口,每一个动态代理类都有一个Invocation Handler对象与之对应,这个对象实现了InvocationHandler接口,通过动态代理的接口对动态代理对象的方法调用会转而调用Invocation Handler对象的invoke方法,通过动态代理实例,方法对象和参数对象可以执行调用并返回结果。
性能测试主要包括以下几个方面:
1. 计算性能:执行一段代码所用的时间。
程序实现:http://www.cnblogs.com/fengzhblog/p/3161822.html
2. 内存消耗:程序运行所占用的内存大小。
程序实现:http://www.cnblogs.com/fengzhblog/p/3162370.html
3. 启动时间:程序启动到程序正常运行的时间。
4. 可伸缩性:应用程序如何应对增长的流量。
5. 用户察觉性能:不是程序实际运行有多快,而是用户感觉程序运行有多快。
相关文章
- android 浏览器 开发,Android 浏览器的开发实例分享
- android签名命令行,Android系统签名位置及命令
- android 的hook技术,Android Native Hook技术(一)
- android 模拟器 haxm,Android模拟器不使用HAXM
- Android 组件化(二)注解与注解处理器、组件通讯
- Android angle_android 界面悬停
- Android平台GB28181接入端语音广播和语音对讲规范解读和技术实现
- Android壁纸还是B站玩得花
- Android进程间通信(一)- Bundle
- 【Android APT】编译时技术 ( 编译时注解 和 注解处理器 依赖库 )
- 【错误记录】Android Studio 编译报错 ( Could not find com.android.tools.build:gradle:4.2.1. )
- 【Android 插件化】插件化技术弊端 ( 恶意插件化程序的解决方向 | 常用的插件化虚拟引擎 )
- 【Android 逆向】应用数据目录 ( files 数据目录 | lib 应用自带 so 动态库目录 | databases sqlite3 数据库目录 | cache 缓存目录 )
- 【Android Gradle 插件】ProductFlavor 配置 ( AppExtension#externalNativeBuild 配置 | cmake 配置 | ndkBuild 配置 )
- 【Android Gradle 插件】AaptOptions 配置 ② ( additionalParameters 附加参数配置 | --rename-manifest-package 配置 )
- 【Android UI】贝塞尔曲线 ④ ( 使用 android.graphics.Path 提供的 cubicTo 方法绘制三阶贝塞尔曲线示例 )
- 【错误记录】Android Studio 编译报错 ( Could not resolve com.android.tools.build:gradle:7.4.2. )
- Android实现ProgressBar旋转菊花加载的动画详解手机开发
- Android开发学习总结(五)——Android应用目录结构分析详解手机开发
- [android] 手机卫士读取联系人详解手机开发
- Android Studio 导入项目 出现安装Error:Cause: failed to find target with hash string ‘android-23’ 等错误详解手机开发
- 使用Android实现连接MySQL数据库:实现快速数据交互与管理(android连接mysql数据库)
- 7月Android手机性价比榜:Redmi连夺三冠
- Android控件Gallery3D效果实例代码