Xcode 7 の新機能。

Xcode 7 には、iPhone、iPad、Mac、Apple Watch 向けの優れた App を作成するために必要なすべての機能が用意されています。プログラミング言語である Swift が改良され、これまで以上に高速になりました。コードの読み書きを容易にするための新しい機能も導入されています。Playground も刷新され、埋め込みリソース、さまざまなソースコード、リッチテキストのコメントを活用して、新しい API での実験や多機能な対話型ドキュメントの作成が可能になります。Xcode のユーザインターフェイステスト機能では、App の動作を記録し、テストを生成することもできます。

だれもが自分の Apple デバイス上で App を実行できます。

Xcode 7 と Swift を利用すると、だれでも簡単に App を開発して自分の Apple デバイス上で直接実行できます。Apple ID でサインインするだけで、自分のアイデアを吹き込んだ App を iPad、iPhone、Apple Watch 上で実際に操作できます。今すぐ Xcode 7 をダウンロードして試してみましょう。プログラムのメンバーである必要はありません。

Swift 2

Swift は驚くべき速さで進化を続けており、より安全で使いやすく、さらに表現力豊かになりました。新しく追加された機能は以下の通りです。

  • Swift でスムーズに記述できる try/catch/throw を使用した高度なエラー処理モデル
  • OS バージョンごとの可用性チェックや条件分岐
  • Markdown コメントで埋め込み画像やリンクと共にリッチテキストで表示される Quick Help
  • 既存の Swift コードを Swift 2.0 の新しい機能や構文で使用できるよう変換する Xcode 7 に搭載のマイグレーター

さらに詳しくは、「Swift」のページをご覧ください。

Playground

Playground がまったく新しいものとなり、魅力的なドキュメントを作成しながら、簡単に実験できるようになりました。また、対話型の教育用コンテンツも作成できます。自分のプロジェクトに Playground を追加することで、独自の API の使用方法や問題の解決方法を示すことができます。また、独自コードの機能を実際に試すこともできます。これらが動的に動作するのに対して、コードのコメント自体は静的なものとして動作します。新しい Playground には以下の機能が含まれています。

  • 生成される結果が行ごとにコードの横に表示されます。
  • コメント内のマークアップは、画像やリンクと共に魅力的にフォーマットされたテキストとして表示されます。
  • 埋め込まれたリソースや画像にコードやコメントからアクセスできます。
  • 「.swift」ファイルをサポートすることによって、いくつもの新しい機能を高速に実行できます。

Interface Builder

Interface Builder では、iOS、OS X、watchOS の最新機能を自由自在にコントロールできます。たとえば、スタックビューでは、必要なすべての制限を自動的に追加することにより、ビューのレイアウトが簡単に行えます。スタックビューを使用すると、複数のビューをスムーズにグループ化し一貫性を持って動作させ、周囲の UI に対してグループとして応答するよう設定できます。また、サイズクラスと統合することによって、それぞれのデバイスや向き、iPad の新しいマルチタスクキングレイアウトに適合する単一で柔軟なインターフェイスの作成が容易にできます。さらに、Storyboard の参照のサポートにより、UI の論理的な部分を複数のファイルにグループ化し、複雑で魅力的なインタフェースを作成することが可能になりました。

テスト

Xcode にはテスト駆動開発用の優れた環境がすでに用意されていますが、Xcode 7 ではユーザインターフェイスのテスト機能やコードカバレッジの分析機能によってさらに優れたものになりました。Xcode に導入された Test Navigator では、テストの導入、編集、実行が簡単に行えます。テスト支援機能により、テストとエディタ上のアプリケーションコードを相互に連携させながら、作業を進めることができます。また、Xcode Server 上の Bot によって、ユニットテスト、パフォーマンステスト、非同期型テストに加え、すべてのデバイスタイプにおける UI テストを、継続的に実行しレポートできるようになりました。

ユーザインターフェイステスト

Xcode 7 で導入されたユーザインターフェイステスト機能により、コードに加えた変更が、ユーザにとって不要なインターフェイス上の変化を生み出してしまうことを防げます。Xcode では App の使用状況に基づいて自動的にテスト用のコードが生成されますが、Swift または Objective-C のコードを手動で編集することで微調整できます。これらのテストは Xcode Server 上で何度も実行できるため、お客様に発見される前に新たな問題を特定できます。

コードカバレッジ

Xcode にはコードカバレッジ機能が組み込まれており、コードの横に表示されるアイコンにより、テストされているコード/テストされていないコードを判別できます。これにより、例えば重要なコードブロックの横にカバレッジが欠落しているシンボルを確認した場合、テストを記述するきっかけとなります。

その他の機能

ゲーム

Xcode 7 には、iOS や Mac 用ゲームのクリエイター向けに強力なデザインツールが用意されています。現在、Metal は OS X でサポートされており、Xcode 7 には優れたデバッグツールが組み込まれています。内蔵されている SpriteKit エディタでは、スクラブが可能なタイムラインやイベント付きのアニメーションを定義でき、Xcode 7 内での編集が可能です。また、まったく新しいレベルの SceneKit エディタでは、シーンを表現力豊かに編集でき、臨場感あふれる 3D 世界を自由自在にコントロールできます。

Address Sanitizer

再現できないクラッシュをユーザが報告してきたことがありますか?または、デバッグ中に再現できないバグがありますか?Address Sanitizer では、軽量な実装メモリでアプリケーションをビルドし、問題が発生したと同時に、さまざまなタイプの潜在的な問題を検出します。クラッシュが発生すると、それがバグとして現れ、Xcode のデバッガは、問題のあるコード行を正確に示します。ほかのメモリ分析ツールとは異なり、Address Sanitizer は毎日の使用でも問題ないほど高速で、対話型アプリケーションのデバッグ中でも使用できます。

クラッシュログ

Xcode 7 には、アプリケーションの致命的なクラッシュの特定、解明、修正を行うための包括的なワークフローが用意されています。これらのクラッシュは App Store により収集されて Apple によりシンボル化された後、Xcode に自動的にダウンロードされます。さらに、TestFlight によるベータテストの実施中にクラッシュを特定して修正できます。Xcode の「Organizer (オーガナイザ)」から上位のクラッシャーを選択するだけで、プロジェクト内の問題のあるコードに直接移動できます。

iOS 向け Energy Gauge

ユーザは、バッテリーの駆動時間を心配せずにデベロッパが開発した App に没頭したいと思っています。iOS の新しい Energy Gauge では、App がエネルギーを大量に消費している場合に警告を発します。特に、App がアイドル状態であるべき場合に発生しないかの確認が重要です。クイック診断に加え、Energy Gauge では、Instruments を直接起動でき、エネルギーを大量に消費している App の動作を検出できます。