将来将 Xamarin 添加到 Visual Studio C# 项目
Adding Xamarin to a Visual Studio C# project in future
我们正在寻求创建一个 Visual Studio C# 项目,该项目最初将作为 Windows 应用程序发布。但是,将来我们希望使用 Xamarin 扩展在 iOS 和 Android 平台上发布。
我们计划尽可能将核心应用程序与GUI代码分开,以便将来更方便地进行多平台开发。
这是一个好的计划,还是从一开始就将 Xamarin 纳入项目更好?
我们之前没有使用过 Xamarin,我们希望尽量减少代码重构。
.Net Framework Portble Class 库就是您所需要的。平台之间共享的代码应该使用 PCL 来实现。我为我的组织所做的是为每个平台创建一个解决方案,并添加对包含我们通用代码的 PCL 的引用。我们的 PCL 可以在 Windows、Android 和 iOS 中 运行。
https://msdn.microsoft.com/en-us/library/gg597391%28v=vs.110%29.aspx
另一种方法是编写 c# classes 并添加 class 对平台特定代码的引用。但是,如果您采用这种方法,每次对 class 进行修改时,您需要确保它在所有平台中构建。
我认为大多数开发人员更愿意从一开始就添加 Xamarin 项目,但我也以这种方式开始了一个项目,我认为这是一个成功的项目。但是,您应该有一些经验丰富的开发人员可以处理 UI 抽象,而不是将他们的代码放在 UI 层中。如果你想跨平台,也许你应该看看 MVVM cross 这样的框架。
然而,Xamarin 也在进化,不再只有 Xamarin.iOS 和 Xamarin.Andoird。所以他们在几个月前发布了他们出色的框架 Xamarin.Forms。通过使用它,您将能够重用大量代码——甚至是 UI 代码。因此,如果您的 Windows 应用程序是 Windows Phone 应用程序或现代 UI-App 并且 不是 WinForms 应用程序(它Xamarin.Forms 不支持),它可能是您的最佳选择。
我们正在寻求创建一个 Visual Studio C# 项目,该项目最初将作为 Windows 应用程序发布。但是,将来我们希望使用 Xamarin 扩展在 iOS 和 Android 平台上发布。
我们计划尽可能将核心应用程序与GUI代码分开,以便将来更方便地进行多平台开发。
这是一个好的计划,还是从一开始就将 Xamarin 纳入项目更好?
我们之前没有使用过 Xamarin,我们希望尽量减少代码重构。
.Net Framework Portble Class 库就是您所需要的。平台之间共享的代码应该使用 PCL 来实现。我为我的组织所做的是为每个平台创建一个解决方案,并添加对包含我们通用代码的 PCL 的引用。我们的 PCL 可以在 Windows、Android 和 iOS 中 运行。
https://msdn.microsoft.com/en-us/library/gg597391%28v=vs.110%29.aspx
另一种方法是编写 c# classes 并添加 class 对平台特定代码的引用。但是,如果您采用这种方法,每次对 class 进行修改时,您需要确保它在所有平台中构建。
我认为大多数开发人员更愿意从一开始就添加 Xamarin 项目,但我也以这种方式开始了一个项目,我认为这是一个成功的项目。但是,您应该有一些经验丰富的开发人员可以处理 UI 抽象,而不是将他们的代码放在 UI 层中。如果你想跨平台,也许你应该看看 MVVM cross 这样的框架。
然而,Xamarin 也在进化,不再只有 Xamarin.iOS 和 Xamarin.Andoird。所以他们在几个月前发布了他们出色的框架 Xamarin.Forms。通过使用它,您将能够重用大量代码——甚至是 UI 代码。因此,如果您的 Windows 应用程序是 Windows Phone 应用程序或现代 UI-App 并且 不是 WinForms 应用程序(它Xamarin.Forms 不支持),它可能是您的最佳选择。