다음을 통해 공유


Objective Sharpie를 사용하여 바인딩 만들기

이 섹션에서는 라이브러리에 대한 바인딩을 만드는 프로세스를 자동화하는 데 사용되는 Xamarin의 명령줄 도구인 Objective Sharpie를 Objective-C 소개합니다.

개요

Objective Sharpie는 바인딩의 첫 번째 패스를 부트스트랩하는 데 도움이 되는 명령줄 도구입니다. 네이티브 라이브러리의 헤더 파일을 구문 분석하여 공용 API 를 바인딩 정의 (이전에 수동으로 수행한 프로세스)에 매핑합니다.

Objective Sharpie는 Clang를 사용하여 헤더 파일을 구문 분석하므로 바인딩은 가능한 한 정확하고 철저합니다. 이렇게 하면 품질 바인딩을 생성하는 데 걸리는 시간과 노력을 크게 줄일 수 있습니다.

Important

Objective Sharpie는 고급 지식 Objective-C (및 확장별 C)을 가진 숙련된 Xamarin 개발자를 위한 도구입니다. 라이브러리를 Objective-C 바인딩하기 전에 명령줄에서 네이티브 라이브러리를 빌드하는 방법에 대한 확실한 지식과 네이티브 라이브러리의 작동 방식을 잘 이해해야 합니다.

기록

우리는 지난 3년 동안 Xamarin에서 내부적으로 Objective Sharpie를 진화시키고 사용하고 있습니다. Objective Sharpie의 기능을 입증하기 위해 iOS 8, Mac OS X 10.10 및 watchOS 2.0 이후 Xamarin.iOS 및 Xamarin.Mac에서 도입된 API는 Objective Sharpie로 완전히 부트스트랩되었습니다. Xamarin은 자체 제품을 빌드하기 위해 내부적으로 Objective Sharpie에 크게 의존합니다.

그러나 Objective Sharpie는 고급 지식 Objective-C 과 C, 명령줄에서 clang 컴파일러를 사용하는 방법 및 일반적으로 네이티브 라이브러리가 결합되는 방법을 요구하는 매우 고급 도구입니다. 이 높은 막대 때문에 GUI 마법사를 사용하면 잘못된 기대치가 설정되며, 따라서 Objective Sharpie는 현재 명령줄 도구로만 사용할 수 있습니다.