首页 文章

需要设计一个Android应用程序的架构设计

提问于
浏览
5

我需要为我的应用程序创建一个架构设计 .

App Details: 在我的应用程序中,我显示了从服务器获取的一些数据 . 因此,基本上当您启动应用程序时,您会获得一个类别列表,当您单击某个类别时,应用程序将使用REST调用Web服务并获取JSON响应 . 获得响应后,将解析JSON数据以创建对象的Arraylist,最后适配器在列表视图中显示此数据 .

Package structure which i have thought of:

com.app.activities: 包含应用程序中所需的所有活动 .

com.app.customviews: 应用程序所需的自定义视图 .

com.app.adapters: 不同的列表/网格适配器,用于创建不同类型的列表和网格视图 .

com.app.parsers: 包含解析从服务器收到的JSON响应的所有解析器类 . 这些类基本上会将一个arraylist返回给活动,这些活动将由适配器类进一步用于创建列表和网格视图 .

com.app.utils: 包含在整个应用程序中使用的函数,例如从服务器获取请求的响应,从输入流获取字符串,从某个URL下载图像,记录等功能 .

com.app.model: 包含各种用户定义数据类型的所有模型类 .

应用程序工作流程:当选择某个类别时, activityutils 获取响应并将其发送到 parsers 以获得 Model 类型的arraylist . 现在这个arraylist被传递给 adapters ,它返回一个适配器对象,最终用于显示 activity 中的列表/网格 .

现在,根据应用程序架构,您的代码应分为以下三个层:

  • 表示层

  • 业务层

  • 数据层

现在我需要知道,根据我的应用程序哪个部分属于哪个层 .

请帮帮忙,我对此完全无能为力 .

谢谢!!

Update: 谷歌搜索我偶然发现这个链接:

http://apparchguide.codeplex.com/wikipage?title=Chapter%2019%20-%20Mobile%20Applications

它说,你的应用程序应该有一些工作流程,业务组件,实体等 .

所以,我认为我目前的包结构不正确,因为我只在活动中做大部分工作 .

所以现在,我的问题是:如果我遵循这个架构,应该是什么包结构或如何设置我的代码库 .

2 回答

  • 0

    你的应用程序UI是,你可以说它是表示层 . 在业务层中,您使用REST和JSON Web服务进行操作 . 数据层驻留在服务器上 . 所以基本上你通过使用一些服务(业务)来显示listview(Presentation)来从服务器(Data)获得结果(信息) .

  • 0

    您的应用仅用于演示吗?业务层在服务器中实现,因为您不更改数据,只显示它 . 对我来说,模型在数据层,其余的都是表示 .

相关问题