首页 文章

Xamarin表单项目的良好文件夹结构[关闭]

提问于
浏览
8

由于我'm new to Xamarin forms, I'米不太了解 How to arrange your Xamarin form project in a good folder structure?

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

  • 网络电话

  • 数据库处理

  • 查看创作

  • 模型 - 视图绑定

  • 公用事业等

NOTE: Xamarin表单本身有Xamarin.iOS和Xamarin.Android解决方案文件夹,上面提到的文件可能是Android和iOS共有的 .

2 回答

  • 1

    Typical Application Layers

    • Data Layer - 非易失性数据持久性,可能是SQLite数据库,但可以使用XML文件或任何其他合适的机制实现 .

    • Data Access Layer - 数据层周围的包装器,提供对数据的创建,读取,更新,删除(CRUD)访问,而不向调用者公开实现细节 . 例如,DAL可能包含用于查询或更新数据的SQL语句,但引用代码不需要知道这一点 .

    • Business Layer - (有时称为业务逻辑层或BLL)包含业务实体定义(模型)和业务逻辑 . 商业外观模式的候选人 .

    • Service Access Layer - 用于访问 Cloud 中的服务:从复杂的Web服务(REST,JSON,WCF)到从远程服务器轻松检索数据和图像 . 封装网络行为并提供应用程序和UI层使用的简单API .

    • Application Layer - 通常特定于平台的代码(通常不跨平台共享)或特定于应用程序的代码(通常不可重用) . 是否在代码层与UI层中放置代码的一个很好的测试是(a)确定该类是否具有任何实际显示控件,或(b)是否可以在多个屏幕或设备(例如iPhone和iPad)之间共享) .

    • User Interface (UI) Layer - 面向用户的图层包含屏幕,窗口小部件和管理它们的控制器 .

    enter image description here

    这些层中的每一层代表一个单独的 Solution Folder . 每个 Layer 也应该是不同的 ClassLibrary(Portable) (见Encapsulation

    另外值得阅读本文档:

    EncapsulationSeparation of ResponsibilitiesPolymorphism

    取自Xamarin Developer Guide - Achitecture

    我还发现了更多信息here.

  • 11

    没有完全同意哪个选项更好 - 使用共享项目或可移植类库,但这些是代码共享的选项 .

    我个人同意Miguel de Icaza,Xamarin领导如果你不在其他应用程序中共享你的代码共享项目更好,但正如他所说,Xamarin的一些人认为相反 .

相关问题