Xamarin 3-ほとんどのモバイルプラットフォーム向けのC#のクロスプラットフォーム開発環境を発表しました。 主な革新:iOS Xamarin Designerのインターフェイスデザイナー、Xamarin.Formsユーザーインターフェイスを構築するためのクロスプラットフォームライブラリ、IDEの改善、新しいコード再利用テクニック。
1. Xamarin Designer for iOSは、Xamarin StudioとVisual Studioの両方で動作するiOSのビジュアルデザイナーです。 Storyboard形式との完全な互換性がサポートされているため、Visual StudioおよびXamarin StudioはXcode Interface Builderと組み合わせて使用できます。 カスタムコントロールは、デザイナーで直接描画されます。 Xamarin Designerの詳細をご覧ください。
2. Xamarin.Forms-実行時にネイティブ要素に関連付けられた40を超えるクロスプラットフォームコントロールとレイアウトを使用して、一般的なC#コードベースに基づいてiOS、Android、およびWindows PhoneのネイティブUIを構築できる新しいライブラリプログラム。プラットフォームに完全に準拠することを意味します。 たとえば、Xamarin.Forms Entryは、iOSではUITextView、AndroidではEditText、Windows PhoneではTextBoxになります。 Xamarin.Formsは、ポータブルクラスライブラリとして提供され、一般的なUIコードとXamarinのプラットフォーム固有のインターフェイスAPIを簡単に混在させることができます。 たとえば、アプリのログイン画面にXamarin.Formsを使用し、残りの画面にXamarin.iOS / Xamarin.Androidを使用できます。 Xamarin.Formsページ内のXamarin.iOS / Xamarin.Androidに直接記述された独自のビューを埋め込むことができます。 Xamarin.Formsの詳細をご覧ください。
3. IDEの大幅な改善
-外観を更新します。 Xamarin Studioには、新しいホーム画面、数百の新しいアイコン、Retinaディスプレイのサポートの改善、およびIDE内の素晴らしい改善が含まれています。
-Visual Studioのサポートの改善。 iOSおよびAndroidの拡張機能は1つのVisual Studio拡張機能に統合され、そのインストール、更新、および実際の開発およびデバッグプロセスが簡素化されます。
-NuGet-Xamarin 3には、Xamarin StudioとVisual Studioの両方でモバイルアプリケーション用のNuGetパッケージが完全にサポートされています。これにより、Xamarinと互換性のあるNuGetパッケージの大部分を活用できます。
-.NET BCLドキュメント-Microsoftの友人のおかげで、ベース.NETクラスライブラリに関する完全なドキュメントがXamarin Studioに組み込まれました。
-F#のサポート-Xamarin Studioには、ますます普及している関数型プログラミング言語F#でiOSおよびAndroid用アプリケーションを開発するためのサポートが組み込まれています。
4.コードの再利用の改善。
Xamarin 3では、プラットフォーム間でコードを再利用するための2つの新しい手法が導入されています。
共有プロジェクトは、クロスプラットフォームアプリケーションでコードを再利用するためのシンプルでエレガントな方法を提供します。 開発者はこれらのプロジェクトを使用して、Xamarin StudioとVisual Studioの両方でiOS、Android、およびWindowsのコードを共有できます。
利点:
-複数のプロジェクトに共通のコードを作成できます
-コンパイラディレクティブを使用して、プラットフォームに応じて汎用コードを分岐できます( クロスプラットフォームアプリケーションの構築で説明されている#if __ANDROID__など)。
-アプリケーションプロジェクトには、共通プロジェクトで使用できるプラットフォーム固有のリンクを含めることができます(Tasky for Windows Phoneの例としてCommunity.CsharpSqlite.WP7を使用するなど)。
短所:
-他のタイプのプロジェクトとは異なり、一般的なプロジェクトには「出力」アセンブリがありません。 コンパイル中、ファイルは関連プロジェクトの一部と見なされ、DLLにコンパイルされます。 共通のコードをDLLにしたい場合は、ポータブルクラスライブラリの方が適しています。
-「非アクティブ」コンパイラディレクティブ内のコードに影響するリファクタリングは、コードを更新しません
ポータブルクラスライブラリは、まったく異なる多数の.Netプラットフォームで使用されるライブラリです。 Xamarin 3では、Xamarin StudioとVisual Studioの両方でポータブルクラスライブラリを作成して使用できます。
利点:
-複数のプロジェクトに共通のコードを作成できます
-リファクタリングは、コードのすべての依存部分を常に更新します。
短所:
-コンパイラ指令は使用できません
-選択したプロファイルに従って、.Netフレームワークの一部のみが使用可能です(詳細については、PCLの概要を参照)
Xamarinブログのニュース。