我正在对移动平台进行一项小型研究,我想知道Android中使用了哪些设计模式?
例如在iOS中,模型 - 视图 - 控制器与委托和其他模式一起被广泛使用.
哪些模式以及Android使用的具体位置?
编辑
我不是要求内核,dalvik等深入使用的设计模式,而是要求应用程序开发人员在开发应用程序时遇到的模式.
我有两个问题:
Q1.MVC模式中"业务逻辑"到底在哪里?我在模型和控制器之间感到困惑.
Q2."业务逻辑"是否与"业务规则"相同?如果没有,有什么区别?
如果你能用一个小例子来解释它会很棒.
model-view-controller design-patterns business-logic business-rules
我目前做了很多WPF开发,并开始创建一些基本的Android应用程序.在创建WPF应用程序时,我经常使用MVVM,通常使用Prism,并且想知道Android平台是否有任何MVVM示例?
有没有关于如何最好地在任何地方构建Android应用程序的好例子或教程?
我是java和android的新手,我在asp.net中使用模型视图演示器和模型视图控制器的被动和监督控制器变体构建了winforms应用程序,但没有真正看到任何使用这些模式的android上的示例或代码.
人们如何在野外构建体面大小的Android应用程序.有没有最好的做法,或者我应该严格坚持官方的Android文档.
我是android的新手,我想知道在android项目中编写代码的正确方法是什么,或者我们应该在项目示例n-tire,MVC或其他中使用哪种架构或模型?
我知道有很多关于这方面的问题,但是,我仍然在努力理解Activity在Android上实现传统的模型 - 视图 - 控制器设计模式时该类应该扮演什么角色?
我的直觉是它应该是Controller,但这意味着UI屏幕之间的一对一关系(因为Activity每个屏幕必须有一个)和控制器,这就破坏了MVC在不同组件之间松散耦合的点.
设计模式代表了经验丰富的面向对象软件开发人员使用的最佳实践.设计模式是软件开发人员在软件开发过程中遇到的一般问题的解决方
设计模式有三种基本类型:
1.Structural
2.Creational
3.Behavioral
不同的设计模式有1. MVC 2. Singlton 3.工厂方法4.懒惰初始化等
我一直在寻找哪种设计模式适合Android.一些帖子说android是基于MVC而其他人说没有.
那么任何人都可以指导我支持哪种设计模式或适合Android应用程序.
我正在对各种平台的设计模式进行一项小型研究,并且我之前有过使用Java编程的经验.
在阅读这些文章:MVC模式在Android和Android中MVC架构,
我想到一个有趣的问题:为什么的Java Swing MVC不能与Android开发模式进行比较?或者为什么我们不能说Android跟随MVC?(在整体"外观和感觉"的背景下).
在一个答案中,有人澄清MVC为:
型号:渲染什么
视图:如何渲染
控制器:事件,用户输入
好.好吧,现在我理解的是:
在Java swing MVC中,componentclass是可视化环境中所有属性的抽象类.有一个不同的关键字被称为
controls用于某些components如按钮,列表等.因此,所有控件和组件都是MVC 中Model的一部分.
Container继承component.有几个
LayoutManagers定义布局和地方components在
container.还Listeners必须注册EventSources.所以,它们都是MVC 中的View.
实现Listener interface methods我们放置主逻辑的类,EventClasses每个事件都有一些.它们都是MVC 中Controller的一部分.
将所有这些例子放在图像中; 在摇摆MVC我们有:

我想widgets和controls这里一样.还有一些其他的EventSources.他们都充当模特.
View包有viewgroups(也包含几种
layouts …
我想知道,如果Android支持MVC(模型视图控制器)结构?如果支持那么1.什么是控制器?2.什么是模特?3.什么是观点?
请清楚我.我对此有些困惑.
我现在看了很多关于如何为Android编程的教程 - 我甚至开始自己创建一些程序.但是,我注意到我的程序看起来都是程序性的,而Java应该使用面向对象.我一直试图解决这个问题,但我发现了一个问题.我的程序的主要类 - 在应用程序开始时执行的程序(例如在com.testprogram.www下)似乎同时是屏幕和控制层的混合.
在我发现的所有教程中,我看到从main.xml视图中恢复的可视对象(例如,一个按钮 - 这个恢复向我表明这将是用于治疗的'控制'层)并且在此之后对象被注册到某种类型的监听器(在这种情况下OnClickListener- 这应该在屏幕上完成,而不是在控件中,对吧?).
这是否意味着这样?www包下的这个主类是什么?"屏幕"图层或"控件"图层?这个班级是否适合我上面提到的那个?这样做是因为基于XML的接口无法注册Java侦听器吗?任何人都知道一个好地方,我可以参考如何为Android的OO?
我开始学习Android,我想知道组织我的应用程序的最佳实践.我习惯用三部分来分解我的项目; 模型,视图和控制器......所以在第一种情况下我想创建我的包源,如下所示:
- project.models.* // My all models
- project.ui.* // My all activities
Run Code Online (Sandbox Code Playgroud)
我的应用程序需要与Web服务进行通信,因此:
- project.models.* // My all models
- project.ui.* // My all activities extends ListActivity etc...
- project.io.* // Interfaces between models and webservices.
Run Code Online (Sandbox Code Playgroud)
但我已经阅读了很多例子,它似乎不是正确的方法......我不知道这是否是尝试用Android创建MVC的好方法.
可能有人可以帮助我以最好的方式启动我的应用程序吗?