ポータブルクラスライブラリとは何ですか?


109

MSDNでPortable Class Library、バージョン情報の下にあるに関するセクションに気付きました。

System.Object例については、を参照してください。http://msdn.microsoft.com/en-us/library/system.object.aspx

簡単なGoogle検索を行ったが、について何も見つからなかったPortable Class Library。ここの誰かがそれが何であるか、または私がそれについてより多くの情報を見つけることができる場所を知っていますか?


1
ヘッドアップとして、来週登場するVisual Studio 11 Betaにポータブルクラスライブラリのサポートを追加しました。
David Kean

回答:


84

2017年10月9日更新:.NET Core / Std / PCLの記事の比較/対比 更新2016年11月23日:Rick Strahlによる記事

UPDATE 2016年10月29日:.NETStandard 1-> 2 FAQ UPDATE 2016年10月19日:これは、これまで.NET Standard 2.0について取り上げ最高のインタビュー/ビデオです。

2016年9月27日更新:.NET Standard 2.0の発表記事に、より良い情報が記載されています

2016年6月6日更新:この記事では、.NETStandardライブラリメカニズムがPCLの多くに取って代わる方法を詳しく説明しています

2013年7月10日更新:@shanselmanからのPCLユニオンサマリーブログ投稿の優れた状態。具体的な例、スクリーンショット、リンクがたくさんあります。ここで他の答えはすべて陰にしています。

2013年5月20日更新:

2013年4月19日更新:サイモンクーパーのブログ投稿で、Intellisenseから実行時間まですべてがどのように連動するかについての優れた詳細な要約


ビデオ:Channel 9 Visual Studio Toolboxショーエピソード2012年6月14日

ビデオ:Channel 9 Going Deep Showエピソード27 Sep 2011


更新2012年9月11日:MVVM LightとRXがそれをどのように使用するかを示す写真、図、および動機付けの例を含む優れた高レベルのブログ投稿

更新2012年4月11日:スコットハンセルマンによる非常に優れたエンドツーエンドの作品で、開発中のポイントに到達したスクリーンショットを含む非常に迅速な発言。最後に、この投稿全体をかなり複製するリソースセクションも含まれています:D

更新2012年7月9日:開発チームのMircea Trofinによるこのブログシリーズ(これまでのところ一部)は、スクリーンショットや、その種のことに興味がある場合に選択範囲全体で利用可能な機能を示す詳細なマトリックスを含め、これまでで最も完全な記事です。


開始するポータブルライブラリツールのアナウンスメントブログの投稿を参照してください。

ポータブルライブラリツールCTPは、新しい "Portable Class Library"プロジェクトテンプレートをVisual Studioに追加します。これを使用して、さまざまな.NETプラットフォームで再コンパイルせずに実行されるC#およびVBでクラスライブラリを作成できます。

これは、一度に複数のプラットフォーム(esp Silverlightバリアント(WP7やSL4などですが、XboxのXNAを含む))を対象とするクラスライブラリを作成するために使用されます。

こちらのInfoQ概要記事もご覧ください

このリリース通知も参照してください。

詳細な情報については、マネージコード用ツールのマルチターゲティングガイドラインをご覧ください。


2
27秒で私を倒した; p
Marc Gravell

2
@Marc Gravell:頻繁に発生することはありません。-しかし、それが何らかの助けになれば@Darinを倒した...
Ruben Bartelink

4
細かいことはたくさんありますが、これはまったくの初めての人のための簡単な説明から利益を得ることができると思います。
Lucas

@ルーカスまあ、それを最新に保つための私の試みはそれをコミュニティーwikiにしたので、あなたが役立つと思う方法で私がそれを説明できると思うものを自由に編集してください(私はInfoQ記事が良いと思いました)、上のものを考えましたおそらく最も
バランスの取れた

1
それらの記事を要約し、ここに簡単な説明を入れた方がよいでしょう。現在、40,450人のユーザーが読んでおり、リンクを平均20分(想定)すると、合計561日が無駄になります。
Zafar

53
  • ポータブルクラスライブラリプロジェクトを使用すると、複数の.NET Frameworkプラットフォームで動作するマネージアセンブリを作成および構築できます。共有ビジネスロジックなど、多くのプロジェクトで共有するコードを含むクラスを作成し、さまざまなタイプのプロジェクトからそれらのクラスを参照できます。

  • Portable Library Toolsは、Microsoftの新しいVisual Studioアドインで、再コンパイルせずにさまざまな.NETベースのプラットフォームで実行されるC#およびVisual Basicライブラリを作成できます。

MSDNには、すばらしい記事/ドキュメントがあります。あなたはそれをチェックアウトして、でサポートされているものを見ることができます。Portable Class Library ポータブルクラスライブラリのアイコン


次のアセンブリは、ポータブルクラスライブラリプロジェクト内で使用できます。

  • 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(Silverlightから)

ポータブルクラスライブラリプロジェクトでサポートされているメンバーは、.NET Frameworkクラスライブラリのリファレンストピックで確認できます。クラスのメンバーテーブルでは、サポートされているメンバーの横に次のポータブルクラスライブラリアイコンが表示されます。

ポータブルクラスライブラリのアイコン (MSDNドキュメントに表示されるポータブルクラスライブラリのアイコン。)


ポータブルクラスライブラリプロジェクトを作成するには、次のものが必要です。

Visual Studio 2010 Service Pack 1(SP1)(795KBインストーラー、1.48GB ISO

ポータブルライブラリツール CTP(1.38MB)

上記の更新をインストールすると、ポータブルクラスライブラリ用の新しいプロジェクトテンプレートが取得されます。

ここに画像の説明を入力してください

(MSDNから取得した上記のコンテンツ)

アップデート2014:

クラスライブラリポータブルはVisual Studio 2014の一部です。


最新の更新については、Visual Studio 2014はないと思いますが、PCLはVisual Studio 2013に含まれているようです(少なくとも私が持っているコミュニティエディション)
Jake

7

さまざまなプラットフォームで実行できるクラスライブラリです


これらのツールをインストールしていない人にポータブル.csprojを送信できますか?
リゼルギン酸

2
ポータブルクラスライブラリアプリケーションを実行するには、.NET Framework 4の更新プログラムがマシンにインストールされている必要があります。この更新プログラムはVisual Studio 2010 SP1と共に自動的にインストールされるため、アプリケーションの開発に使用したコンピューターでさらに変更を加えることなく、ポータブルクラスライブラリアプリケーションを実行できます。別のコンピューターでアプリケーションを実行するには、更新プログラムを手動でインストールできます。
Jowen

2

ドキュメントを理解するのが少し難しいので、ここで少しわかりやすくしました。

ポータブルクラスライブラリは、プログラマーがXbox 360、Windows Phone、Silverlight、.NET Framework(4以降)などの複数のプラットフォームで実行できるプロジェクトを作成できるように構築されています。これは、選択したターゲットプラットフォームでサポートされていない特定のAPIを省略することで行われます。これにより、.Net Frameworkの使用可能な機能の一部が失われます。

だから我々は間の選択、言うことができるPortable class libraryと、通常はclass library、プロジェクトのターゲットプラットフォームに依存します。Windowsオペレーティングシステムを搭載したXboxおよびデスクトップコンピューターでアプリを動作させる場合は、時間を節約してPCLを使用することをお勧めします。ただし、Normalクラスライブラリは問題ありません。

詳細については、ドキュメントページをご覧ください

現在、PCLに取って代わる.Net Standardと呼ばれる新しいオープンソーステクノロジーがあります。。

  • .NET Standardは、すべての.NETプラットフォームが実装する必要があるAPIのセットです。これにより、.NETプラットフォームが統合され、今後の断片化が防止されます。
  • .NET Standard 2.0は、.NET Framework、.NET Core、およびXamarinによって実装されます。.NET Coreの場合、これにより、要求されている既存のAPIの多くが追加されます。
  • .NET Standard 2.0には、.NET Frameworkバイナリの互換性シムが含まれており、.NET Standardライブラリから参照できるライブラリのセットが大幅に増えています。
  • .NET Standardは、マルチプラットフォーム.NETライブラリを構築するためのツールストーリーとして、ポータブルクラスライブラリ(PCL)に置き換わります。

.NET標準APIの定義は、GitHubのdotnet / standardリポジトリで確認できます。

参照

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.