2017-06-23 85 views
6

由于我是Xamarin表单的新手,我不太清楚如何将Xamarin表单项目安排在一个好的文件夹结构中?Xamarin表单项目的良好文件夹结构

例如,我有一个包含以下文件的项目:

  1. 网络调用
  2. 数据库处理
  3. 查看作品
  4. 模型 - 视图绑定
  5. 公用事业等

注: Xamarin Form本身有Xamarin.iOS和Xamarin.Android解决方案文件夹和上述文件可能对Android和iOS都很常见。

回答

7

典型应用层

  • 数据层 - 非易失性数据的持久性,可能是一个SQLite数据库,但可以用XML文件或任何其他合适的机制来实现。
  • 数据访问层 - 围绕数据层提供包装,提供对数据的创建,读取,更新,删除(CRUD)访问,而无需向调用者公开实现细节。例如,DAL可能包含SQL语句来查询或更新数据,但引用代码不需要知道这一点。
  • 业务层 - (有时称为业务逻辑层或BLL)包含业务实体定义(模型)和业务逻辑。业务外墙模式的候选人。
  • 服务访问层 - 用于访问云中的服务:从复杂的Web服务(REST,JSON,WCF)到简单的远程服务器数据和图像检索。封装网络行为并提供一个简单的API供应用程序和UI层使用。
  • 应用层 - 代码通常是平台特定的(通常不是跨平台共享)或特定于应用程序(通常不可重复使用)的代码。 (a)确定类是否有任何实际的显示控件,或者(b)它是否可以在多个屏幕或设备之间共享(例如,iPhone和iPad) )。
  • 用户界面(UI)层 - 面向用户的层包含屏幕,小部件和管理它们的控制器。
  • 这些层的

enter image description here

每个代表一个单独的Solution Folder。 而且每个Layer也应该是不同的ClassLibrary(Portable)(见Encapsulation

另外值得一读此文档中:

封装分离责任的,多态性

Xamarin Developer Guide - Achitecture

两者

我还发现了一些更多信息here.

1

没有哪个选项是更好的一个完整的协议 - 使用共享项目或便携式类库,但这些代码共享选项。

我个人同意米格尔奥德伊卡萨,Xamarin铅,如果您在其他应用程序共享项目最好不要分享您的代码,但他说,一些人在Xamarin认为相反。