이식 가능한 클래스 라이브러리 란 무엇입니까?


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 베타에 이식 가능한 클래스 라이브러리 지원이 추가되었습니다.
David Kean

답변:


84

2017 년 10 월 9 일 업데이트 : .NET Core / Std / PCL 업데이트 비교 / 제한 문서 2016 년 11 월 23 일 : Rick Strahl의 문서

2016 년 10 월 29 일 업데이트 : .NETStandard 1-> 2 FAQ 업데이트 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 일 : Simon Cooper블로그 게시물 에서 Intellisense에서 실행 시간까지 모든 것이 어떻게 결합되는지에 대한 매우 조밀 한 요약


비디오 : Channel 9 Visual Studio Toolbox 쇼 에피소드 2012 년 6 월 14 일

비디오 : Channel 9 Going Deep Show 에피소드 2011 년 9 월 27 일


2012 년 9 월 11 일 업데이트 : MVVM Light 및 RX가 사용하는 방법을 보여주는 사진, 다이어그램 및 동기 부여 예제가 포함 된 고급 블로그 게시물

2012 년 4 월 11 일 UPDATE : Scott Hanselman의 아주 좋은 엔드 투 엔드 작품으로 여기 스크린 샷을 포함하여 개발 과정에서 매우 빠르게 설명합니다 (또한 매우 통찰력있는 '생각하는 방법'정보 및 샘플 링크 포함). 또한이 전체 게시물을 거의 복제하는 끝에 리소스 섹션이 포함되어 있습니다 .D

2012 년 7 월 9 일 업데이트 : 개발팀의 Mircea Trofin이 작성한이 블로그 시리즈 (지금까지 한 부분)는 스크린 샷과 선택 항목에서 사용 가능한 기능을 보여주는 상세한 매트릭스를 포함 하여 가장 완벽한 커버리지입니다.


시작하는 Portable Library Tools 공지 블로그 게시물을 참조하십시오 .

이식 가능한 라이브러리 도구 CTP는 다시 컴파일하지 않고 다양한 .NET 플랫폼에서 실행되는 C # 및 VB로 클래스 라이브러리를 만드는 데 사용할 수있는 새로운 "Portable Class Library"프로젝트 템플릿을 Visual Studio에 추가합니다.

한 번에 여러 플랫폼 (WP7 및 SL4와 같은 특히 Silverlight 변형, Xbox의 XNA 포함)을 대상으로하는 클래스 라이브러리를 만드는 데 사용됩니다.

InfoQ 요약 문서 도 참조 하십시오.

이 릴리스 공지 도 참조하십시오 .

다운 및 더티에 대한 자세한 내용 은 관리 코드 용 도구에 대한 다중 타겟팅 지침을 참조하세요.


2
27 초로 저를 이겼습니다. p
Marc Gravell

2
@Marc Gravell : 자주 일어나지 않습니다, 휴! -하지만 도움이된다면 @Darin을 이겼습니다 ...
Ruben Bartelink

4
많은 세부 사항이 있지만 완전히 처음 접하는 사람에게 간단한 설명이 도움이 될 수 있다고 생각합니다.
Lucas

@Lucas 글쎄요, 그것을 최신 상태로 유지하려는 나의 시도는 그것을 커뮤니티 위키로 만들었으므로, 당신이 느끼는 모든 것을 자유롭게 편집하면 당신이 도움이된다고 느끼는 방식으로 설명 할 것입니다 (나는 InfoQ 기사가 좋다고 생각했습니다), 맨 위에있는 것들을 생각했습니다. 아마 가장
다재다능합니다

1
그 기사를 요약하고 여기에 요약하는 것이 좋습니다. 현재 링크를 통과하는 데 평균 20 분이 소요되는 40,450 명의 사람들이 읽는 것은 총 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 클래스 라이브러리에 대한 참조 항목에서 이식 가능한 클래스 라이브러리 프로젝트에서 지원하는 멤버를 찾을 수 있습니다. 클래스의 멤버 테이블에서 지원되는 멤버 옆에 다음 이식 가능한 클래스 라이브러리 아이콘이 나타납니다.

Portable Class 라이브러리 아이콘 (MSDN 문서에서 볼 수있는 이식 가능한 클래스 라이브러리 아이콘.)


이식 가능한 클래스 라이브러리 프로젝트를 만들려면 다음이 필요합니다.

1 . Visual Studio 2010 SP1 (서비스 팩 1) (795KB 설치 관리자, 1.48GB ISO )

2 . 휴대용 라이브러리 도구 CTP (1.38MB)

위 업데이트를 설치하면 이식 가능한 클래스 라이브러리에 대한 새 프로젝트 템플릿이 제공됩니다.

여기에 이미지 설명 입력

(MSDN에서 가져온 위의 내용)

2014 업데이트 :

Class Library Portable은 Visual Studio 2014의 일부입니다.


최신 업데이트와 관련하여 Visual Studio 2014가 없다고 생각하지만 PCL은 Visual Studio 2013에 포함 된 것 같습니다. (적어도 내가 가지고있는 커뮤니티 에디션)
Jake

7

다양한 플랫폼에서 실행할 수있는 클래스 라이브러리입니다 .


이러한 도구를 설치하지 않은 사람들에게 휴대용 .csproj를 보낼 수 있습니까?
lysergic-acid-

2
이식 가능한 클래스 라이브러리 응용 프로그램을 실행하려면 .NET Framework 4 용 업데이트가 컴퓨터에 설치되어 있어야합니다. 이 업데이트는 Visual Studio 2010 SP1과 함께 자동으로 설치되므로 응용 프로그램을 개발하는 데 사용한 컴퓨터에서 추가 수정없이 이식 가능한 클래스 라이브러리 응용 프로그램을 실행할 수 있습니다. 다른 컴퓨터에서 응용 프로그램을 실행하려면 업데이트를 수동으로 설치할 수 있습니다.
Jowen 2013-06-26

2

문서를 이해하기가 조금 어려웠 기 때문에 여기에서 좀 더 명확하게하려고 노력했습니다.

Portable Class 라이브러리는 프로그래머가 Xbox 360, Windows Phone, Silverlight 및 .NET Framework (4 이상)와 같은 여러 플랫폼에서 실행되는 프로젝트를 만들 수 있도록 만들어졌습니다. 이는 선택한 대상 플랫폼에서 지원하지 않는 일부 특정 API를 생략하여 수행되므로 .Net Framework의 일부 사용 가능한 기능을 잃게됩니다.

따라서 Portable class library및 Normal 중에서 선택 class library하는 것은 프로젝트의 대상 플랫폼에 따라 달라집니다. Windows 운영 체제를 사용하는 Xbox 및 데스크톱 컴퓨터에서 앱이 작동하도록하려면 시간을 절약하고 PCL을 사용하는 것이 좋습니다. Normal 클래스 라이브러리를 제외하면 괜찮습니다.

자세한 내용은 설명서 페이지를 참조하십시오 .

이제 PCL을 대체 할 .Net Standard라는 새로운 오픈 소스 기술이 있습니다. .NET Standard는 데스크톱 애플리케이션, 모바일 앱 및 게임, 클라우드 서비스 등 필요한 환경에서 기대하고 선호하는 모든 API를 제공하여 모든 플랫폼에서 .NET 개발자의 코드 공유 문제를 해결합니다.

  • .NET Standard는 모든 .NET 플랫폼이 구현해야하는 API 세트입니다. 이는 .NET 플랫폼을 통합하고 향후 조각화를 방지합니다.
  • .NET Standard 2.0은 .NET Framework, .NET Core 및 Xamarin에 의해 구현됩니다. .NET Core의 경우 요청 된 기존 API를 많이 추가합니다.
  • .NET Standard 2.0에는 .NET Framework 바이너리에 대한 호환성 shim이 포함되어있어 .NET Standard 라이브러리에서 참조 할 수있는 라이브러리 집합이 크게 늘어납니다.
  • .NET Standard는 다중 플랫폼 .NET 라이브러리를 구축하기위한 도구 스토리로서 PCL (Portable Class Libraries)을 대체 할 것입니다.

GitHub의 dotnet / standard 리포지토리에서 .NET Standard API 정의를 볼 수 있습니다.

참고

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.