技术总结--android篇(一)--MVC模式
先介绍下MVC模式:MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码。将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同一时候,不须要又一次编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
使用MVC模式编写代码,能使代码更加美观。更easy管理,扩展性强。
对于Android来说,MVC模式本身也使用到了。
1、界面XML文件就是View(V);
2、model层就是一些数据的操作。网络的处理等,
3、controller层就是对activity的逻辑处理,可是要割除model中的数据、网络等的逻辑处理,由于耗时的处理在主线程上。处理超过5S就会出现ANR(超时时android机制相应用回收的一种处理)的。
我的代码结构:
我就不又一次创建一个项目了,就从已有的项目来解说了,忽略其它的包先吧。
activities包(View)。顾名思义这里包括了全部的activity。做的事情就是相应着fragment。代码实现例如以下:
public class AdminAddGoodsActivity extends BaseFramActivty{ @Override
protected void onCreate(Bundle bundle) {
super.onCreate(bundle);
initTitle("加入商品", 1, 0, new TitleImgClick() {
@Override
public void OnTitleImgClick(com.views.lib.tab.interfaces.Method method) {
switch (method) {
case left:
AndroidUtils.isGiveUpEdit(AdminAddGoodsActivity.this); break; case right: break; default:
break;
} }
}); switchFram(new AddGoodsFragment());
}
}
这里的BaseFramActivity和switchFram是Lib里面的实现的。之后会讲到的。如今先保留着先。
代码里面的Activity相应的就是AddGoodsFragment。fragment里面才实现界面的初始化。
adapter包,实现数据和UI(View)之间一个重要的纽带,直观的表达了Data、Adapter、View三者的关系。主要是实现list等的数据初始化。
config。一些配置的信息。
dao、ctrler(controller),用来实现与model层的业务逻辑处理,通过此类,获取数据然后返回到activity中进行数据的显示。
db也就是数据库的操作了。
model(model)。也就是一些实体类了。
utils,放的是一些工具类。
view,是自己自己定义的view类
这个是个人总结的android中使用MVC模式的代码结构。不喜勿喷哈。
技术总结--android篇(一)--MVC模式的更多相关文章
- Android 设计模式之MVC模式
说到Android设计模式的MVC模式,估计很多人都是比较熟悉了,这里深入了解一下MVC到底是怎么回事,以ListView为例子讲解. 一.深入理解MVC概念 MVC即Model-View-Contr ...
- 前端之Android入门(3):MVC模式(上)
很多Android的入门书籍,在前面介绍完布局后就会逐个介绍组件,然后开始编写组件使用的例子.每每到此时小伙伴们都可能会有些疑问:是否应该先啃完一本<Java编程思想>学点 Java 知识 ...
- 【转】 Android项目的mvc模式
MVC (Model-View-Controller):M是指逻辑模型,V是指视图模型,C则是控制器.一个逻辑模型M可以对于多种视图模型V,比如一批统计数据你可以分别用柱状图.饼图V来表示.一种视图模 ...
- 技术总结--android篇(三)--代码规格和编码规范
命名规则 变量名: 1)尽量要取有意义的名字,比方说:一个用户名的成员变量.应该写成username.而不要仅仅写个string: 2)假设是常量.既在编码过程中.这个值是不会改变的,应该写成大写的名 ...
- 技术总结--android篇(四)--工具类总结
StringUtil(视个人须要进行加入) public class StringUtil { public static boolean isMail(String string) { if (nu ...
- Android 腾讯入门教程( 智能手表UI设计 和 MVC模式 )
*****注意到mvc 在android 中是如何进行分层分域执行各自的功能.**** 官方推荐的按钮尺寸是48像素 前端之Android入门(1):环境配置 前端之Android入门(2):程序目录 ...
- Android:MVC模式(下)
在上一篇文章中,我们将 View 类单独出来并完成了设计和编写.这次我们将完成 Model 类,并通过 Controller 将两者连接起来,完成这个计算器程序. 模型(Model)就是程序中封装了数 ...
- Android:MVC模式(上)
很多Android的入门书籍,在前面介绍完布局后就会逐个介绍组件,然后开始编写组件使用的例子.每每到此时小伙伴们都可能会有些疑问:是否应该先啃完一本<Java编程思想>学点 Java 知识 ...
- MVC模式与Android
MVC模式是软件工程中的一种软件架构,“Model-View-Controller”的缩写,中文翻译为“模型-视图-控制器”. MVC模式将一个交互式应用程序分为3各组件: 1.Model(模型):业 ...
随机推荐
- mvc:view-controller直接转发页面
在springMVC中,通过@RequestMapping发送请求地址,转发到目标页面,但是,有时候想直接访问页面, 不想通过xxx.jsp直接访问页面,可以通过springmvc.xml配置文件中的 ...
- Epos消费管理系统复制迁移SQL SERVER 2005数据库
先脱机 原来要关闭Epos消费管理系统软件才可以让对应的数据库脱机
- 第18章 Redis数据结构常用命令
18-1 字符串的一些基本命令 18-1 :配置Spring关于Redis字符串的运行环境 <bean id="poolConfig" class="redis.c ...
- mysql视图,索引和存储过程
一:视图 视图又叫虚表.同真实的表一样,视图包含一系列带有名称的列和行数据.但是,视图并不在数据库中以存储的数据值集形式存在.行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成. 具体 ...
- java网络通信编程
网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或者接收到指定的数据,这个就是狭义的网络编程范畴.在发送和接收数据时,大部分的程序设计语言都设 ...
- webpack打包大概流程
webpack 步骤 1. 新建一个webpack.config.prod.js 2. 压缩bundle.js和index.html //设置为生产环境 new webpack.DefinePlugi ...
- wpf ComboBox 获取选中项的文本内容
一:根据数据源类型获取选中项 类: public class Region { public int REGION_ID { get; set; } public string REGION_CODE ...
- C# 6.0新加特性
1.自动属性的增强 1.1.自动属性初始化 (Initializers for auto-properties) C#4.0下的果断实现不了的. C#6.0中自动属性的初始化方式 只要接触过C#的肯定 ...
- 使用Caffe预测遇到的问题
1. 在使用网络预测图像时, prediction = net.predict( [input_image] ) 出现: net.image_dims[0] 不是整数情况, (2).甚至以为np.ze ...
- PCL:Ubuntu下安装配置PCL
一:安装PCL 依据官网介绍:http://www.pointclouds.org/downloads/linux.html Ubuntu We currently support all Ubunt ...