Objective-C 開発者向けの XamarinXamarin for Objective-C Developers

iOS を対象とした開発者は Xamarin を使用し、 ユーザーインターフェイス 以外のコードをプラットフォームに依存しないC#に移行する事で、Xamarin.Android を利用した Android や様々な Windows など、C#が使用可能なプラットフォームであればどこでもそのコードを使用できるようなります。Xamarin offers a path for developers targeting iOS to move their non-user interface code to platform agnostic C# so that it can be used anywhere C# is available, including Android via Xamarin.Android and the various flavors of Windows. ただし、Xamarin で C# を使用したからといって、既存のスキルや Objective-C のコードを活用できなくなるわけではありません。However, just because you use C# with Xamarin doesn't mean you can't leverage existing skills and Objective-C code. 実際、Objective-C を理解することでより優れた Xamarin.iOS の開発者になることができます。Xamarin にはすべてのネイティブ iOS と、UIKit、Core Animation、Core Foundation、Core Graphics といった慣れ親しんだ OS X プラットフォームの API が公開されているためです。In fact, knowing Objective-C makes you a better Xamarin.iOS developer because Xamarin exposes all the native iOS and OS X platform APIs you know and love, such as UIKit, Core Animation, Core Foundation and Core Graphics to name a few. 同時に、LINQ や Generics などの機能を含む C# 言語の威力や、ネイティブ アプリケーションで使用できる .NET 基底クラスの豊富なライブラリを活用できます。At the same time, you get the power of the C# language, including features like LINQ and Generics, as well as rich .NET base class libraries to use in your native applications.

さらに、Xamarin ではバインディングを使用して既存の Objective-C のアセットも利用できます。Additionally, Xamarin allows you to leverage existing Objective-C assets via a technology know as bindings. 次の図で説明されているように、Objective-C で静的ライブラリを作成し、バインディングを使用して C# に公開するだけです。You simply create a static library in Objective-C and expose it to C# via a binding, as illustrated in the following diagram:

これは非 UI コードに制限する必要はありません。This doesn't need to be limited to non-UI code. バインドでは Objective-C で開発されたユーザー インターフェイス コードも公開できます。Bindings can expose user interface code developed in Objective-C as well.

Objective-C からの移行Transitioning from Objective-C

ドキュメント サイトには Xamarin への移行を簡単にするための情報が多数用意されており、C# コードを使い慣れたコードに統合する方法が示されています。You'll find a plethora of information on our documentation site to help ease the transition to Xamarin, showing how to integrate C# code with what you already know. 以下のような情報は特に使い始めに重要です。Some highlights to get you started include:

Objective-C のバインディングBinding Objective-C

C# と Objective-C の違いについて理解し、上記のチュートリアルでバインディングについて確認したなら、Xamarin プラットフォームに移行する準備は整いました。Once you have a grasp of how C# compares to Objective-C and have worked through the binding walkthrough above, you'll be in good shape for transitioning to the Xamarin platform. フォローアップとして、全体的なバインディングの参照を含む Xamarin.iOS のバインディング技術に関する詳細情報を、Objective-C のバインディングのセクションで確認できます。As a follow up, more detailed information on Xamarin.iOS binding technologies, including a comprehensive binding reference is available in the Binding Objective-C section.

プラットフォーム間の開発Cross-Platform Development

最後に、Xamarin.iOS への移行後は、クロスプラットフォームに関するガイダンスを確認できます。これには、開発した参照アプリケーションのケーススタディや、クロスプラットフォーム アプリケーションの構築のセクションに含まれている再利用可能なクロスプラットフォーム コードを作成するためのベストプラクティスが含まれています。Finally, after moving to Xamarin.iOS, you'll want to check out the cross-platform guidance we have, including case studies of reference applications we have developed, along with best practices for creating reusable, cross-platform code contained in the Building Cross-Platform Applications section.