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

Проект Portable Library Library vs. library

Я хочу знать разницу между PCL (Portable Class Library) и обычной библиотекой.

PCL использует профили, с помощью которых можно определить, какие платформы и функции доступны. Оба могут генерировать DLL, которые могут использоваться на разных платформах. Для обычного проекта библиотеки вы также можете установить целевую структуру (например,.NET 3.5). Xamarin говорит, что директивы компилятора #if подходят только для общих проектов, что означает, что они не используются в PCL. Я думаю, что PCL и проект библиотеки очень похожи.

Итак, каковы различия при работе с различными мобильными платформами?

4b9b3361

Ответ 1

Портативные библиотеки классов не зависят от платформы. Они не используют условную компиляцию и неуправляемый код, у них нет интерфейса (UI зависит от платформы). Это связано с тем, что PCL должен работать на всех указанных платформах, выбранных в качестве цели. Кроме того, доступность функций зависит от выбранных целей.

Таким образом, на PCL может ссылаться любой проект, цель которого указана в настройках PCL. Но библиотеки других типов могут ссылаться только на проекты, имеющие одну и ту же цель или верхние подмножества .Net(например, библиотеки Silverlight могут использоваться в проектах Windows, но не наоборот).

Подробнее об ограничениях и особенностях PCL можно найти на двух ссылках ниже:

В первой ссылке вы можете прочитать о том, что такое PCL в целом. А по второму - информация о целях и функциях.

Надеюсь, что это поможет.

EDIT: См. также Что такое портативная библиотека классов?