Qu’est-ce qu’une bibliothèque de classes portable?

Sur MSDN, j’ai remarqué une section sur une Portable Class Library , sous Informations sur la version.

Voir System.Object pour un exemple. http://msdn.microsoft.com/en-us/library/system.object.aspx

J’ai fait une brève recherche sur Google et je n’ai rien trouvé sur la Portable Class Library . Est-ce que quelqu’un ici sait ce que c’est ou où je pourrais trouver plus d’informations à ce sujet?

MISE À JOUR 9 octobre 2017: Article comparant / mettant en valeur .NET Core / Std / PCL MISE À JOUR 23 novembre 2016: Article de Rick Strahl

MISE À JOUR 29 octobre 2016: .NETStandard 1-> 2 FAQ MISE À JOUR 19 octobre 2016: Ceci est la meilleure interview / vidéo que j’ai vue à ce jour couvrant .NET Standard 2.0

MISE À JOUR 27 septembre 2016: le message d’annonce de .NET Standard 2.0 a plus de bonnes informations

MISE À JOUR 6 juin 2016: Cet article explique bien comment le mécanisme de bibliothèque .NETStandard remplace une grande partie de PCL

MISE À JOUR 10 juillet 2013: Excellent état du blogue de résumé de l’union PCL de @shanselman avec de nombreux exemples concrets, des captures d’écran et des liens. Met toute autre réponse ici à l’ombre.

MISE À JOUR 20 mai 2013:

  • Couverture très pratique de l’application pratique et de ses implications pour les fonctionnalités multi-périphériques (pensez à Xamarin Studio) dans le podcast Tablet Show avec Atley Hunter . Point à retenir : – Les PCL sont une contrainte très utile pour s’imposer dans des scénarios multi-terminaux.
  • L’une des bibliothèques mentionnées est l’ excellent MvvmCross, qui est discuté dans un Tablet Show Episode 71 séparé avec l’auteur @Stuart Lodge . Seule une modification mineure , décrite par Stuart dans le présent document, à la configuration de l’environnement est nécessaire pour exploiter les PCL à ces fins.

MISE À JOUR 19 avril 2013: Excellent résumé dense de la façon dont tout se passe entre Intellisense et l’exécution dans un article de blog de Simon Cooper


Vidéo: épisode du 14 juin 2012 de l’émission Channel 9 Visual Studio Toolbox

Vidéo: Channel 9 Going Deep Show épisode 27 sept. 2011


MISE À JOUR 11 sept. 2012: Bon article de haut niveau avec des images, des diagrammes et des exemples motivants montrant comment MVVM Light et RX l’utilisent

MISE À JOUR 11 avril 2012: Très bon bout de bout à bout de Scott Hanselman qui arrive au point en parlant très rapidement, y compris les captures d’écran ici (contient également des informations très pertinentes sur «comment y penser» et des liens vers des échantillons). Inclut également une section ressources à la fin qui duplique à peu près tout ce post: D

MISE À JOUR 9 juillet 2012: Cette série de blogs de Mircea Trofin de l’équipe de développement (une partie à ce jour) est la couverture la plus complète à ce jour, y compris des captures d’écran et des masortingces détaillées des fonctionnalités disponibles.


Voir l’article de blog d’un outil de bibliothèque portable , qui commence par:

Les outils de bibliothèque portables CTP ajoutent un nouveau modèle de projet “Portable Class Library” à Visual Studio, qui peut être utilisé pour créer des bibliothèques de classes en C # et VB qui s’exécutent sur les différentes plates-formes .NET sans recompilation.

Il est utilisé pour créer une bibliothèque de classes qui cible plusieurs plates-formes (notamment les variantes Silverlight telles que WP7 et SL4, mais incluant XNA sur Xbox) à la fois.

Voir aussi cet article récapitulatif d’InfoQ

Voir aussi cette notice de publication .

Pour plus d’informations sur les détails incorrects, reportez-vous à la section Instructions multi-ciblage pour les outils de code géré.

  • Le projet Bibliothèque de classes portable vous permet d’écrire et de générer des assemblys gérés fonctionnant sur plusieurs plates-formes .NET Framework. Vous pouvez créer des classes contenant du code que vous souhaitez partager dans de nombreux projets, tels que la logique métier partagée, puis référencer ces classes à partir de différents types de projets.

  • Portable Library Tools est un nouveau complément Visual Studio de Microsoft qui vous permet de créer des bibliothèques C # et Visual Basic qui s’exécutent sur diverses plates-formes basées sur .NET sans recompilation.

MSDN a maintenant un bon article / une documentation à ce sujet . Vous pouvez le vérifier et voir ce qui est pris en charge dans la Portable Class Library Icône pour bibliothèque de classes portable .


Les assemblys suivants sont disponibles dans un projet de bibliothèque de classes portable:

  • mscorlib.dll
  • System.dll
  • System.Core.dll
  • System.Xml.dll
  • System.ComponentModel.Composition.dll
  • System.Net.dll
  • System.Runtime.Serialization.dll
  • System.ServiceModel.dll
  • System.Xml.Serialization.dll
  • System.Windows.dll (de Silverlight)

Vous pouvez trouver les membres pris en charge par le projet Bibliothèque de classes portable dans les rubriques de référence de la bibliothèque de classes .NET Framework. Dans la table membres d’une classe, l’icône de bibliothèque de classes portable suivante apparaît en regard des membres pris en charge.

Icône pour la bibliothèque de classes portable (Icône de la bibliothèque de classes portable que vous verrez dans MSDN Docs.)


Pour créer un projet de bibliothèque de classes portable, vous devez avoir:

1 . Visual Studio 2010 Service Pack 1 (SP1) (programme d’installation 795 Ko, ISO 1,48 Go)

2 . Outils de bibliothèque portables CTP (1,38 Mo)

Après avoir installé les mises à jour ci-dessus, vous obtiendrez un nouveau modèle de projet pour la bibliothèque de classes portable:

entrer la description de l'image ici

(Contenu ci-dessus pris de MSDN)

MISE À JOUR 2014:

Class Library Portable fait partie de Visual Studio 2014.

C’est une bibliothèque de classes qui peut s’exécuter sur différentes plates-formes .

J’ai trouvé Documents un peu difficile à comprendre alors j’ai essayé de clarifier les choses ici.

La bibliothèque de classes portable est conçue pour permettre aux programmeurs de créer des projets qui s’exécuteront sur plusieurs plates-formes telles que Xbox 360, Windows Phone, Silverlight et .NET Framework (4 et plus). Cela se fait en omettant certaines API spécifiques qui ne sont pas sockets en charge par les plates-formes cibles de votre choix, ce qui vous fera perdre certaines fonctionnalités disponibles de .Net Framework.

On peut donc dire que choisir entre la Portable class library et la class library normales dépend des plates-formes cibles de votre projet. Si vous voulez que votre application fonctionne sur les ordinateurs Xbox et Desktop avec le système d’exploitation Windows, vous feriez mieux de gagner du temps et d’utiliser PCL, à part que la bibliothèque de classes normales fonctionne correctement.

pour plus d’informations visitez la page de documentation .

Il existe maintenant une nouvelle technologie open source appelée .Net Standard qui remplacera PCL. .NET Standard résout le problème de partage de code pour les développeurs .NET sur toutes les plates-formes en apportant toutes les API que vous attendez de vos environnements: applications de bureau, applications et jeux mobiles et services cloud:

  • .NET Standard est un ensemble d’API que toutes les plates-formes .NET doivent implémenter. Cela unifie les plates-formes .NET et empêche la fragmentation future.
  • .NET Standard 2.0 sera implémenté par .NET Framework, .NET Core et Xamarin. Pour .NET Core, cela appenda plusieurs des API existantes qui ont été demandées.
  • .NET Standard 2.0 inclut une cale de compatibilité pour les fichiers binarys .NET Framework, ce qui augmente considérablement le nombre de bibliothèques que vous pouvez référencer à partir de vos bibliothèques .NET Standard.
  • .NET Standard remplacera les bibliothèques de classes portables (PCL) en tant qu’histoire d’outillage pour la création de bibliothèques .NET multi-plateformes.

Vous pouvez voir la définition de l’API standard .NET dans le référentiel dotnet / standard sur GitHub.

Référence