기존의 프로그래밍 기술과 코드 자산을 활용하여 고도로 차별화된 Windows 스토어 앱을 개발할 수 있습니다. iOS 및 Android 개발자가 Windows 스토어 앱으로 쉽게 전환할 수 있도록 API 매핑 인덱스를 제공합니다. 이 사이트에서는 iOS 또는 Android API별로 비슷한 기능의 해당 Windows 8 API를 안내합니다. 

사용해 보십시오!

이 항목에서는 Windows 8 API 매핑을 중점적으로 다루지만 Windows 스토어 앱으로 전화하는 데 참고할 수 있는 리소스가 많이 있습니다. 몇 가지를 예로 들면 다음과 같습니다.

API 매핑 인덱스 소개

이 인덱스는 iOS 또는 Android 개발자에게 방향을 제시하며 새로운 Windows 8 개발 플랫폼을 사용하는 데 도움을 줍니다. 이 인덱스를 참조하면 기존 앱을 평가하고 가장 중요한 API 호출을 파악하여 그에 해당하는 Windows 런타임 클래스, 메서드 및 속성을 쉽게 찾을 수 있습니다.  

API 매핑이 제공하는 기능은 다음과 같습니다.

  • 처음으로 Windows 스토어 앱을 완전히 새롭게 개발하는 iOS 및 Android 개발자에게 도움을 줍니다. 이 경우 인덱스는 추상적인 매핑 정보를 제공하므로 다른 플랫폼에서 이미 익숙한 기능과 아이디어를 고려해볼 수 있습니다.
  • 두 가지 플랫폼 간에 구체적인 기능을 매핑함으로써 기존 iOS 또는 Android 앱의 마이그레이션을 지원합니다. 물론 대개의 경우 앱을 이식하는 것만으로는 충분하지 않습니다. 차별화되고 돋보이는 Windows 스토어 앱을 만들려면 우수한 Windows 스토어 앱의 디자인 원칙과 지침을 숙지해야 합니다.

iOS 또는 Android의 API와 비슷한 기능을 제공하는 Windows 런타임 API가 있는 경우 인덱스에서 매핑 정보가 제공됩니다. 매핑 정보에는 API 참조 문서에 대한 링크와 사용법을 보여 주는 코드 조각(있는 경우)이 포함됩니다. 직접 매핑이 불가능한 경우 인덱스에서는 개념적으로 가장 근접한 항목의 링크를 제공하여 플랫폼 간의 개념적 매핑을 이해하는 데 도움을 줍니다. 이러한 개념적 항목을 시작점으로 활용해 자세한 정보를 조사할 수 있습니다.

API 매핑 인덱스가 제공하지 않는 기능

iOS 또는 Android에서 제공되는 모든 기능 또는 API가 인덱스에 포함되어 있는 것은 아닙니다. 이 API 매핑은 iOS 및 Android 환경에서 가장 많이 사용되고 중요한 프레임워크 중 일부를 부분적으로 다룹니다. 즉, 컨트롤, 센서, 네트워킹, 그래픽, 미디어(오디오와 비디오) 등과 관련한 프레임워크를 다루고 있습니다. 앞으로 다른 프레임워크가 추가될 수도 있습니다.

iOS, Android 및 Windows 8의 설계상의 차이로 인해 API의 일대일 매핑이 불가능할 수도 있습니다. 하지만 여러 API와 코드를 조합하여 동일한 기능을 구현할 수 있는 경우가 많습니다. 이 인덱스에서는 그러한 경우의 매핑에 대해서는 다루지 않습니다.

이 인덱스는 마이그레이션 도구가 아니며, 코드를 자동으로 평가하여 Windows에서 작동하도록 이식해 주지 않습니다. API 매핑은 개발자가 관련 API의 검색 범위를 좁히는 데 도움을 주기 위한 것입니다. 매핑된 API를 출발점으로 활용하여, 앱을 작성하는 데 있어서 Windows 8 플랫폼의 이점을 살리면서 해당 기능을 구현할 수 있는 방법을 직접 찾아야 합니다.   

API 매핑 인덱스 사용 방법

인덱스를 사용하려면 iOS 프레임워크 또는 Android 네임스페이스를 선택합니다. 그런 다음 왼쪽에서 클래스와 메서드 또는 속성을 선택합니다. 인덱스에 해당 매핑이 포함되어 있는 경우 해당 클래스, 메서드 또는 속성이 오른쪽에 표시됩니다. 인덱스에서는 모든 매핑을 찾아보거나 특정 매핑을 검색할 수 있습니다.

클래스 매핑

다음 예에서 사용자는 UIAlertView라는 iOS API와 비슷한 기능을 제공하는 클래스를 찾고 있습니다. 인덱스는 이 API 호출을 Windows 런타임의 MessageDialog 클래스에 매핑해 줍니다. 이러한 매핑 정보와 함께 API 참조 문서와 관련 코드 조각 또는 샘플에 대한 링크도 제공됩니다.

클래스/메서드 매핑

특정 메서드를 매핑하려는 경우 원하는 iOS 또는 Android 프레임워크, 클래스 및 메서드를 선택합니다. 해당 메서드에 대한 항목이 있는 경우 인덱스에 해당 Windows 런타임 항목이 표시됩니다. 인덱스에는 클래스 및 메서드 외에 iOS에서 사용되는 C 스타일 함수도 포함되어 있습니다. 다음 예에서는 iOS API CFSocketCreateStreamSocketDatagramSocket이라는 두 가지 API에 매핑되어 있습니다. 

다중 매핑

경우에 따라 특정 iOS 또는 Android API가 여러 Windows 런타임 API에 매핑될 수 있습니다. 이 경우 인덱스에는 가능한 매핑이 모두 표시됩니다. 검색 결과에 여러 매핑이 표시될 때는 관련 문서를 검토하여 가장 적합한 API를 찾아 사용해야 합니다.

개념 항목으로의 매핑

Windows 런타임은 다재다능한 개발 플랫폼으로, 구현하거나 마이그레이션하려는 iOS 또는 Android 앱에서 제공되는 기능을 거의 모든 경우에 구현할 수 있습니다. 그러나 프로그래밍 모델의 차이로 인해 특정 iOS 또는 Android API의 기능과 정확히 일치하는 Windows 런타임 API가 없을 수도 있습니다. 또한 프로그래밍 추상화 방식의 차이로 인해 iOS 또는 Android API와 비슷한 기능을 구현하는 데 2개 이상의 API를 사용하거나 개발자가 직접 사용자 지정 클래스 또는 메서드를 작성해야 할 수도 있습니다. 단일 API로의 매핑이 불가능한 경우 인덱스는 해당 플랫폼 기능을 설명하는 개념 항목에 대한 포인터를 제공합니다.

검색

찾아보기를 통해 API를 찾거나 검색 기능을 사용하여 원하는 매핑을 쉽게 검색할 수 있습니다.

다음 단계

지금까지 API 매핑의 기능에 대해 알아보았습니다. 이제 직접 사용해 보시기 바랍니다. 또한 플랫폼 지원 범위를 넓히려면 여러분의 도움이 필요합니다. 아직 인덱스에 추가되지 않은 새로운 매핑을 발견할 경우 제안해 주시기 바랍니다. 제안 내용을 검토하여 적합하다고 판단될 경우 미래의 사용자를 위해 데이터베이스에 추가하겠습니다.

API 매핑은 아직 진행 중인 작업입니다. 따라서 사용량과 사용자의 요구에 따라 언제든지 새로운 매핑이 추가될 수 있습니다.