Android开发之耦合性
2016-02-29 10:47
337 查看
[align=center]耦合性:在android开发过程中,主要注意的是activity间关联程度。耦合的强弱取决与activity[/align]
[align=center][/align]
[align=center]
[/align]
[b]耦合性:在android开发过程中,主要注意的是activity间关联程度。耦合的强弱取决与activity间意图的复杂性、调用的方式以及通过界面传送数据的多少。耦合度是指模块之间的依赖关系,包括控制关系、调用关系、数据传递关系。联系越多,其耦合性越强,同时表明其独立性越差。[/b]
一:Android开发的错误观念之Intent传值;
很多人在开发的时候页面与页面跳转的时候喜欢传递大量数据,这个在项目维护程度,可读性,复用性角度来说是不可取的;intent虽然有传递数据的功能,并且可以传递多种类型的数据,但是通过intent传递大量数据是错误的用法;intent跳转传值增强了activity之间的关联程度,activity之间完全依赖造成“改一处而动全身”的后果;
解决方案:1.可以使用隐形意图,2.使用广播,3使用startActivityForResult和onActivityResult配合使用等等方法;尽量保证每个activity独立,互不影响;
二:模块独立;
Activity是app开发中重要的模块之一,模块与模块之间的相互关联是避免不了的,那么怎么保证他们的相对独立呢,有怎么能保证我想要我需要的数据呢?
例子:A_Activity 跳转 B_Activity; 其中B_Activity需要A_activity传递一个值id,那么如何保证A_Activity与B_Activity的相对独立;
A_Activity代码:
public class A_Activity extends Activity{
=======================
忽略代码
=========================
//调用跳转 B_Activity,只需调用B_Activity的跳转方法,并且根据B_Activity的///标准传值
B_Activity.openActivity(this,id);
}
B_Activity代码:
public class B_Activity extends Activity{
=======================
忽略代码
=========================
//打开自身的static 方法,自己控制自己所需的值,
public static void openActivity( Activity mActivity,String id){
Intent intent=new Intent(mActivity,B_Activity.class);
intent.putExtras("id",id);
mActivity.startActivity(intent);
}
}
[align=center][/align]
[align=center]
[/align]
[b]耦合性:在android开发过程中,主要注意的是activity间关联程度。耦合的强弱取决与activity间意图的复杂性、调用的方式以及通过界面传送数据的多少。耦合度是指模块之间的依赖关系,包括控制关系、调用关系、数据传递关系。联系越多,其耦合性越强,同时表明其独立性越差。[/b]
一:Android开发的错误观念之Intent传值;
很多人在开发的时候页面与页面跳转的时候喜欢传递大量数据,这个在项目维护程度,可读性,复用性角度来说是不可取的;intent虽然有传递数据的功能,并且可以传递多种类型的数据,但是通过intent传递大量数据是错误的用法;intent跳转传值增强了activity之间的关联程度,activity之间完全依赖造成“改一处而动全身”的后果;
解决方案:1.可以使用隐形意图,2.使用广播,3使用startActivityForResult和onActivityResult配合使用等等方法;尽量保证每个activity独立,互不影响;
二:模块独立;
Activity是app开发中重要的模块之一,模块与模块之间的相互关联是避免不了的,那么怎么保证他们的相对独立呢,有怎么能保证我想要我需要的数据呢?
例子:A_Activity 跳转 B_Activity; 其中B_Activity需要A_activity传递一个值id,那么如何保证A_Activity与B_Activity的相对独立;
A_Activity代码:
public class A_Activity extends Activity{
=======================
忽略代码
=========================
//调用跳转 B_Activity,只需调用B_Activity的跳转方法,并且根据B_Activity的///标准传值
B_Activity.openActivity(this,id);
}
B_Activity代码:
public class B_Activity extends Activity{
=======================
忽略代码
=========================
//打开自身的static 方法,自己控制自己所需的值,
public static void openActivity( Activity mActivity,String id){
Intent intent=new Intent(mActivity,B_Activity.class);
intent.putExtras("id",id);
mActivity.startActivity(intent);
}
}
相关文章推荐
- Servlet3.1应用生命周期事件 (转载)
- 我是运营,我没有假期
- Android实现表情 抓取新浪表情
- 详解Android解析Xml的三种方式——DOM、SAX以及XMLpull
- DB2数据库的安装
- C#实现把指定数据写入串口
- “传奇”图象数据存储方式
- C#实现进程管理的启动和停止实例
- 修复mysql数据库
- DOS中判断进程是否存在的方法
- C#进程监控方法实例分析
- 浅析SQL数据操作语句
- SQLServer 数据导入导出的几种方法小结
- MySQL数据备份之mysqldump的使用详解
- 批处理 结束麦咖啡进程的代码
- PowerShell查看进程的所属用户
- C#实现强制关闭当前程序进程
- C#实现读取被进程占用的文件实现方法
- C#实现窗体间传递数据实例
- C#获取进程或线程相关信息的方法