유니버설 윈도 플랫폼

Universal Windows Platform
유니버설 윈도 플랫폼
개발자마이크로소프트
운영 체제Windows 10, Windows 10 Mobile, Windows 11, Xbox 시스템 소프트웨어, Windows Mixed Reality
플랫폼IA-32, x86-64, ARM32, ARM64
유형컴퓨팅 플랫폼
웹 사이트docs.microsoft.com/en-us/windows/uwp/

Universal Windows Platform(UWP)은 Microsoft가 개발Windows 10에서 처음 도입된 컴퓨팅 플랫폼입니다.이 플랫폼의 목적은 Windows 10, Windows 10 Mobile, Windows 11, Xbox One, Xbox Series X/SHoloLens에서 실행되는 유니버설개발을 지원하는 것입니다.C++, C#, VB를 사용한 Windows 앱 개발을 지원합니다.NETXAML. API는 C++로 구현되며 C++, VB로 지원됩니다.NET, C#, F#JavaScript.[1]Windows Server 2012 및 Windows 8에서 처음 도입된 Windows Runtime(WinRT) 플랫폼의 확장으로 설계된 UWP를 사용하면 개발자는 여러 유형의 [2]장치에서 실행할 수 있는 앱을 만들 수 있습니다.

UWP는 Microsoft 이외의 시스템을 대상으로 하지 않습니다.Microsoft의 기타 플랫폼용 솔루션은 입니다.NET MAUI(이전의 「Xamarin」).Forms')[3]는 2016년부터 마이크로소프트 자회사인 Xamarin이 작성한 오픈 소스 API입니다.커뮤니티 솔루션은 Uno Platform과 같은 타깃이 아닌 플랫폼에도 존재합니다.

호환성.

UWP는 Windows 10, Windows 10 Mobile 및 Windows 11의 일부입니다.UWP 앱은 이전 버전의 Windows에서는 실행되지 않습니다.

이 플랫폼을 구현할 수 있는 앱은 기본적으로 Visual Studio 2015, Visual Studio 2017 또는 Visual Studio 2019를 사용하여 개발됩니다.Windows 8.1, Windows Phone 8.1 또는 둘 다(범용 8.1)용 오래된 Metro 스타일 앱은 [4][5]UWP로 마이그레이션하기 위해 수정이 필요합니다.

이후 버전의 일부 Windows 플랫폼 기능은 UWP 및 UWP 전용 소프트웨어에서만 사용할 수 있으며 기존 WinAPI, WPFWindows Forms 등의 다른 아키텍처에서는 사용할 수 없습니다.그러나 2019년 현재 마이크로소프트는 이러한 애플리케이션 플랫폼 간의 패리티를 높이고 UWP 기능이 비 UWP 소프트웨어 내에서 사용 가능하도록 하기 위한 조치를 취하고 있습니다.마이크로소프트는 2019년 5월 10일 업데이트의 일부로 XAML 아일랜드(UWP 컨트롤과 위젯을 비 UWP 소프트웨어에 포함시키는 방법)를 도입했으며 패키지화되지 않은 소프트웨어 [6]내에서 UWP 기능과 윈도우 런타임 컴포넌트를 호출할 수 있도록 할 것이라고 밝혔다.

API 브리지

UWP 브릿지는 다른 Application Programming Interface(API; 응용 프로그램프로그래밍 인터페이스)의 콜을 UWP 인터페이스로 변환하여 이러한 API로 작성된 응용 프로그램이 UWP에서 실행되도록 합니다.2015년 Android [7]iOS 앱의 빌드 기조연설에서 Windows 10 Mobile로 포팅되는 두 가지 브릿지가 발표되었습니다.2020년 2월 현재 Microsoft는 Windows 데스크톱 앱, 프로그레시브, Microsoft Silverlight 및 iOS의 Coco Touch [8]API에 대한 브리지 지원을 유지하고 있습니다.

iOS

iOS용 Windows 브리지(WinObjC)
개발자마이크로소프트
초기 릴리즈2015년 8월 6일, 7년 전(2015-08-06)
저장소github.com/microsoft/WinObjC
기입처목표 C++, 목표 C, C, C++
유형미들웨어
면허증.MIT 라이선스
웹 사이트developer.microsoft.com/en-us/windows/bridges/ios/

Windows Bridge for iOS(코드명 "Islandwood")는 Xcode 프로젝트를 Visual Studio [7][9][10]2015를 사용하여 Objective-C에서 개발된 iOS 애플리케이션을 Windows 10으로 이식할 수 있는 오픈 소스 미들웨어 툴킷입니다.iOS용 Windows Bridge의 초기 빌드는 2015년 8월 6일 MIT 라이센스에 따라 오픈 소스 소프트웨어로 출시되었으며 안드로이드 버전은 비공개 베타 [7]버전이었다.

이 "WinObjC" 프로젝트는 GitHub에서 오픈 소스입니다.Cocotron이나 GNUstep과 같은 다양한 기존 Cocotron의 구현 코드와 UWP 방식을 사용하여 iOS 프레임워크를 구현하는 마이크로소프트의 자체 코드가 포함되어 있습니다.LLVM clang [11]컴파일러 버전을 사용합니다.

안드로이드

Windows Bridge for Android (코드네임 "Astoria")는 Java 또는 C++로 작성된 Android 앱이 Windows 10 Mobile에서 실행되도록 허용하는 런타임 환경이었고 마이크로소프트 스토어에 게시되었습니다.Windows Developer Platform의 테크니컬 리더인 Kevin Gallo는 레이어에 몇 가지 제한이 있다고 설명했습니다.Google Mobile Services 및 특정 핵심 API를 사용할 수 없으며 메시징 소프트웨어와 같이 "백그라운드 태스크에 깊이 통합"된 앱은 이 [12][13]환경에서 제대로 실행되지 않습니다.

2016년 2월 마이크로소프트는 iOS가 이미 멀티플랫폼 개발을 위한 주요 플랫폼이기 때문에 중복성을 이유로 안드로이드용 윈도 브릿지 개발을 중단했으며 iOS용 윈도 브릿지는 네이티브 코드를 생성했으며 OS 수준의 에뮬레이터가 필요하지 않다고 발표했다.대신 마이크로소프트는 발표 [14][15][16]전에 인수한 Xamarin의 툴을 사용한 멀티 플랫폼 앱 개발에 C# 사용을 권장했다.2021년 마이크로소프트는 Windows 11이 OS 레벨 에뮬레이터로 안드로이드 앱을 실행하도록 허용하고 [17]스토어에 앱을 설치할 수 있도록 했습니다.

도입

UWP는 CoreApplication 클래스와 Windows Runtime(WinRT)[1]에 기반한 응용 프로그램 모델을 제공합니다.UWP를 사용하여 만든 Universal Windows 앱은 더 이상 매니페스트 빌드에서 특정 OS에 대해 작성되었음을 나타내지 않습니다. 대신 Universal Windows Platform Bridges를 사용하여 PC, 스마트폰, 태블릿 또는 Xbox One과 같은 하나 이상의 장치 패밀리를 대상으로 합니다.이러한 확장을 통해 앱은 현재 [18]실행 중인 특정 장치에서 사용할 수 있는 기능을 자동으로 활용할 수 있습니다.범용 앱은 휴대 전화 또는 태블릿에서 실행되며 각각에 적합한 경험을 제공할 수 있습니다.스마트폰에서 실행되는 범용 앱은 전화기가 데스크톱 컴퓨터 또는 적절한 도킹 [19]스테이션에 연결되어 있을 때 PC에서 실행되는 것과 같은 동작을 시작할 수 있습니다.

접수처

UWP용으로 개발된 게임은 멀티 비디오 카드 설정과의 호환성, 게임 조작의 어려움, 게임 플레이 지향 채팅 클라이언트용 오버레이, 키 바인딩 매니저 [20]등 기술적인 제약이 따릅니다.UWP는 DirectX 11.1 이후만 지원하므로 이전 DirectX 버전에서 빌드된 게임은 [21]작동하지 않습니다.빌드 2016에서 마이크로소프트 Xbox 부문 책임자인 Phil Spencer는 PC 게임의 UWP의 실행 가능성을 개선할 수 있는 문제에 대처하기 위해 노력하고 있다고 발표했으며, 마이크로소프트는 "전체 화면 게임의 성능 기대치를 충족하거나 상회하는 것뿐만 아니라 지원 기능을 포함한 추가 기능들을 확실히 충족시키기 위해 노력하고 있습니다.r 오버레이, 모듈링 등입니다."AMD FreeSync 및 Nvidia G-Sync 기술에 대한 지원 및 V-sync 비활성화는 나중에 [22][23]UWP에 추가되었습니다.

Epic Games의 설립자 Tim Sweeney는 UWP는 기본적으로 Windows Store를 통해서만 공개되고 설치될 수 있기 때문에 외부 소프트웨어(Android와 마찬가지로)를 설치하기 위해서는 시스템 설정의 변경이 필요하기 때문에 으로 둘러싸인 정원이라고 비판했다.또한 특정 운영 체제 기능은 UWP 전용이며 대부분의 비디오 게임과 같은 비 UWP 소프트웨어에서는 사용할 수 없습니다.Sweeney는 이러한 움직임을 "마이크로소프트가 지금까지 한 것 중 가장 공격적인 움직임"이라고 규정하며, 이러한 움직임은 스팀 의 서드파티 게임 스토어를 불리하게 만드는 것을 의미한다고 느꼈습니다.마이크로소프트는 완전한 기능을 갖춘 PC 소프트웨어를 설치할 수 있는 사용자의 자유를 침해하고 있기 때문입니다.고객과의 직접적인 관계를 유지하기 위해 개발자와 출판사가 필요합니다."Sweeney는 최종 사용자가 UWP 소프트웨어를 다운로드하여 비 UWP [24]소프트웨어와 동일한 방식으로 설치할 수 있어야 한다고 주장했습니다.

Windows VP Kevin Gallo는 Sweeney의 우려에 대해 다음과 같이 말했습니다.「Windows 10 Novel Update 에서는, UX 를 사용하지 않고, 디폴트로 애플리케이션을 간단하게 사이드 로딩 할 수 있었습니다.사용하는 테크놀로지에 관계없이, Windows 를 최적인 개발 플랫폼으로 해, HTML/JavaScript 의 기존의 코드 베이스로 개발자를 지원하는 툴을 제공하고 싶다고 생각하고 있습니다.NET 및 Win32, C++ 및 Objective-C는 코드를 Windows로 가져와 UWP 기능을 통합합니다.Xamarin을 사용하면 UWP 개발자는 모든 Windows 10 디바이스에 접속할 수 있을 뿐만 아니라 C# 코드의 대부분을 사용하여 iOS 및 Android용 완전한 네이티브 모바일 앱 경험을 제공할 수 있습니다."[25]

스펜서는 2016년 E3 방송 중 자이언트 밤과의 생방송 인터뷰에서 UWP 독점 발매에 대한 엇갈린 반응을 옹호하며 "모두 순조롭게 진행되지는 않았다"고 말했다.그들 중 일부는 잘 되어가고 있다"며 "UWP와 우리 가게가 어떻게든 악랄한 방식으로 연결되어 있다는 것에 대한 우려가 여전히 분명히 있다"고 말했다.그렇지 않아요.그는 또한 MS와 스팀 등의 서드파티 개발자 및 디스트리뷰터와의 관계에 대해 논의하면서 이 서비스가 "윈도에서의 게임 성공의 중요한 부분"이라고 생각하고 마이크로소프트는 자체뿐만 아니라 플랫폼을 통해 게임을 계속 출시할 계획이지만, "우리가 협력하고 있는 분야가 있을 것"이라고 말했다.우리가 경쟁하는 분야가 될 것입니다.스펜서는 또 스위니의 친구이자 자주 [26][27]접촉했다고 말했다.

2019년 5월 30일, 마이크로소프트는 마이크로소프트 스토어에서의 Win32 게임 배포를 지원한다고 발표했다; 스펜서(이후 마이크로소프트의 모든 게임 운영 책임자로 승진, CEO Satya Nadella에게 직접 보고)는 개발자들이 이 아키텍처를 선호하며, "커스터마이제이션과 제어가 가능하다"고 설명했다.rs와 players]는 개방된 Windows 게임 생태계에서 기대할 수 있습니다.또한 윈도우에서의 Xbox Game Studios의 향후 발매는 마이크로소프트 스토어만의 것이 아니라 스팀 같은 서드파티 스토어에서 이용할 수 있게 될 것이라고 발표되었다.[28][29]

레퍼런스

  1. ^ a b "What's a Universal Windows app?". Microsoft Developer Network. Microsoft. May 7, 2018. Retrieved April 29, 2019.
  2. ^ "Introduction to Universal Windows Platform (UWP) apps for designers". Microsoft Developer Network. Microsoft. May 5, 2018. Archived from the original on February 22, 2019. Retrieved April 29, 2019.
  3. ^ "Xamarin Updates From Microsoft Build 2020". Xamarin Blog. May 19, 2020. Retrieved January 21, 2022.
  4. ^ "Migrate apps to the Universal Windows Platform (UWP)". Microsoft Developer Network. Microsoft. Retrieved July 31, 2015.
  5. ^ "Move from Windows Runtime 8.x to UWP". Microsoft Developer Network. Microsoft. February 8, 2017. Retrieved April 29, 2019.
  6. ^ Foley, Mary Jo. "Microsoft wants to close the UWP, Win32 divide with 'Windows Apps'". ZDNet. Retrieved May 8, 2019.
  7. ^ a b c Hachman, Mark (August 6, 2015). "Microsoft releases iOS-to-Windows app maker Windows Bridge to open source". PC World. IDG. Retrieved October 9, 2015.
  8. ^ "Universal Windows Platform Bridges - Windows app development". Microsoft Developer.
  9. ^ Chester, Brandon (April 29, 2015). "Microsoft Demonstrates Android and iOS Applications Running On Windows 10". Anandtech. Purch Inc. Retrieved October 9, 2015.
  10. ^ Protalinski, Emil (May 1, 2015). "Everything you need to know about porting Android and iOS apps to Windows 10". VentureBeat. Retrieved October 9, 2015.
  11. ^ "microsoft/WinObjC: Objective-C for Windows". GitHub. Microsoft. February 16, 2020.
  12. ^ Branscombe, Mary (May 11, 2015). "How will Android support work in Windows 10 for Phones?". TechRadar. Archived from the original on May 19, 2015. Retrieved October 9, 2015.
  13. ^ Bright, Peter (April 29, 2015). "Microsoft brings Android, iOS apps to Windows 10". Ars Technica. Retrieved October 9, 2015.
  14. ^ Jo Foley, Mary (February 24, 2016). "Microsoft is buying mobile tool vendor Xamarin". ZDNet. CBS Interactive. Retrieved April 29, 2019.
  15. ^ Jo Foley, Mary (February 25, 2016). "Microsoft: Our Android Windows 10 bridge is dead, but iOS, Win32 ones moving ahead". ZDNet. Retrieved February 26, 2016.
  16. ^ Bright, Peter (February 26, 2016). "Microsoft confirms: Android-on-Windows Astoria tech is gone". Ars Technica. Conde Nast. Retrieved April 29, 2019.
  17. ^ "How to Run Android Apps in Windows 11".
  18. ^ Domingo, Michael (May 1, 2015). "Inside the Universal Windows Platform Bridges". Visual Studio Magazine. Retrieved October 9, 2015.
  19. ^ Radich, Quinn; Satran, Michael; Whitney, Tyler; Jacobs, Mike; Weston, Susan; Das, Debalin (May 7, 2018). "Guide to Universal Windows Platform (UWP) apps". Windows Developers Center. Microsoft. Retrieved May 10, 2019.
  20. ^ "Microsoft needs to stop forcing console-like restrictions on Windows Store PC games". Ars Technica. Conde Nast. February 29, 2016. Retrieved March 30, 2016.
  21. ^ "Create a DirectX Universal Windows Platform (UWP) game - UWP applications". docs.microsoft.com.
  22. ^ Hruska, Joel (May 10, 2016). "New Windows 10 updates add support for FreeSync, G-Sync, and unlocked frame rates". ExtremeTech. Retrieved May 10, 2019.
  23. ^ Makuch, Eddie (March 30, 2016). "Xbox Boss on PC Gaming: "We've Heard the Feedback Loud and Clear"". GameSpot. Retrieved May 10, 2018.
  24. ^ Walton, Mark (March 4, 2016). "Epic CEO: "Universal Windows Platform can, should, must, and will die"". Ars Technica. Conde Nast. Retrieved May 10, 2019.
  25. ^ Takahashi, Dean (March 4, 2016). "Epic's Tim Sweeney questions Microsoft's commitment to an open Windows platform". VentureBeat.
  26. ^ Bright, Peter (June 16, 2016). "Microsoft will use Steam to sell Windows games, not just its own store". Ars Technica. Condé Nast.
  27. ^ Makuch, Eddie (June 15, 2016). "Xbox Boss Confirms More Steam Releases Coming, Discusses PC Struggles". GameSpot. CBS Interactive.
  28. ^ Spencer, Phil (May 30, 2019). "Our Approach to PC Gaming". Xbox. Retrieved May 30, 2019.
  29. ^ Humphries, Matthew (May 30, 2019). "Microsoft Teases Xbox Game Pass for PC". PCMag. Retrieved May 30, 2019.

외부 링크