Подтвердить что ты не робот

Библиотеки классов в VS 2015 - Создание библиотек перекрестных платформ

Существуют различные библиотеки классов, которые я могу создать в VS 2015 с установленной Xamarin:

  • Библиотека классов
  • Библиотека классов (Android)
  • Библиотека классов (пакет)
  • Библиотека классов (переносимая для универсальных приложений)
  • Библиотека классов (Portable)
  • Библиотека классов (Xamarin.Forms)

Мне бы очень хотелось узнать разницу между ними - всего лишь короткое сообщение:)

Сценарий

Наша команда в настоящее время разрабатывает новый проект, который мы нацеливаем на несколько платформ - веб-и мобильных (Xamarin) в первую очередь. Хотя мы решили сначала сосредоточиться на веб-приложении MVC, мы хотим создать единый проект, содержащий все модели и бизнес-классы (логику), чтобы впоследствии его можно было использовать в наших проектах. Какая библиотека классов будет наиболее подходящей?

4b9b3361

Ответ 1

Этот вопрос имеет довольно большой объем, я постараюсь ответить как можно лучше:

Библиотека классов

Стандартная библиотека классов .NET, которая выводит DLL. Этот тип проекта можно использовать только на настольных платформах (Mac, Windows). Эти типы проектов не могут ссылаться на проекты Android и IOS.

Библиотека классов (Android)

Библиотека классов Android, аналогичная обычной библиотеке Android . Этот проект предназначен для совместного использования специфических для Android ресурсов, таких как действия, фрагменты, представления, чертежи, строки и т.д. Этот проект может быть отнесен только проектами приложений Android или другими проектами библиотеки Android.

Обычно мы помещаем наше основное приложение для Android в библиотеку, а затем заставляем заставку использовать только приложение для Android, которое связывает проект библиотеки. Таким образом, мы можем изолировать каждый экран в отдельном приложении "Testbed", чтобы тестировать каждый экран независимо, без необходимости проходить через все приложение, чтобы проверить их.

Библиотека классов (пакет)

Этот тип не находится в моей установке VS, поэтому я не могу прокомментировать, что это такое.

Библиотека классов (переносная для универсальных приложений)

Портативная библиотека классов, предназначенная для .NET 4.5, включая поддержку Windows 8, Xamarin.Android, Xamarin.iOS и Xamarin.iOS(классический). Это TargetFrameworkProfile Profile7.

Библиотека классов (Portable)

Портативная библиотека классов, предназначенная для .NET 4.5 с поддержкой Windows 8, Windows Phone 8.1, Windows Phone Silverlight 8, Xamarin.Android, Xamarin.iOS и Xamarin.iOS(классическая). Это TargetFrameworkProfile Profile259.

Библиотека классов (Xamarin.Forms)

Портативная библиотека классов, предназначенная для .NET 4.5 с поддержкой Windows 8, Windows Phone 8.1, Windows Phone Silverlight 8, Xamarin.Android, Xamarin.iOS(классический), Xamarin.iOS Unified и Xamarin.Mac Unified. Это TargetFrameworkProfile Profile78.

Обратите внимание, что библиотеки Portable для универсальных приложений, Xamarin.Forms и Portable - это идентичные типы проектов (библиотека PCL), кроме Xamarin.Forms включает поддержку наибольшего числа платформ.


В плане структуры проекта у нас есть проект для каждой платформы (Android, iOs, Windows), которая ссылается на PCL (который определяет наши интерфейсы и сущности DB) и общий проект, который реализует большую часть логики приложения.

Я предлагаю прочитать следующие ссылки и использовать исходный код Tasky в качестве основы для вашего приложения: