Apple%E3%80%81%E6%96%B0%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E%20Swift%20%E3%82%92%E3%80%81iOS%E3%81%8A%E3%82%88%E3%81%B3OS%20X%E3%82%A2%E3%83%97%E3%83%AA%E9%96%8B%E7%99%BA%E7%94%A8%E3%81%AB%E6%8F%90%E4%BE%9B

Apple、新プログラミング言語 Swift を、iOSおよびOS Xアプリ開発用に提供

今日のWWDCデベロッパーイベントで、Appleは新しいプログラミング言語、Swiftを発表して満場の開発者たちを驚かせた。この新言語は、Appleプラットフォームの主要プログラミング言語として、Objective-Cを置き換えるものと思われる。

Swiftは、AppleのObjective-C実装と同じLLVMコンパイラーとランタイムを使用するため、SwiftとObjective-Cのコードは同じアプリ内で共存できる。新言語は、現在Objective-Cで使用しているCocoaおよびCocoa Touch機能をすべて利用できる。

すでにObjective-Cに慣れている人には親しみやすいだろう、とAppleは言っており、「手続き部分とオブジェクト指向部分の統合」を狙いとしている。しかし、Objective-Cからの分化は文法だけではない。タプルやオプショナルタイプといった変数タイプが導入されている。また、浮動小数点演算で余りを求める等、Objective-Cには見られない演算子も含まれている。

Appleが発表した新言語のハイライト:

  • Closure(C、Objective-Cのブロックに類似)。関数ポインターを統合
  • タプルおよび複数戻り値
  • Generic
  • rangeまたはcollectionにおける高速で簡潔な反復
  • 構造体でメソッド、エクステンション、プロトコルをサポート
  • 関数型プログラミングパターン。マップ、フィルター等

その他Appleは、変数は使用前に初期化が必須、配列と整数のオーバーフローチェック、自動メモリー管理など、同言語が安全を重視して設計されていることを強調した。

Swiftのサポートは、もちろんAppleの最新Xcode IDEに深く統合される。インタラクティブな “Playground” では、コードの編集や、変更のアプリへの影響をリアルタイムで確認することができる。Xcodeのデバッグコンソールも、Swiftの文法のネイティブにサポートする。
IMG_0258

Appleによると、Swiftはデベロッパーに数多くの高速化を提供する。例えば、complex objectのソートは、同じアルゴリズムのPythonプログラムよりも3.9倍速い。つまりPythonの2.8倍速いObjective-Cより速いことになる。

IMG_0254

新プログラミング言語の詳細および他の言語との関係については、よく見なければわからない。Appleは、ドキュメントを今日、iBookおよび同社デベロッパーサイトで公開した。

Objective-Cは、新しいデベロッパーにとって取っつきにくい言語であると言われ続けてきた。SwiftがAppleプラットフォームでのアプリ開発をスタートしやすくするのかどうかは注目だが、ドキュメントを初めて見た印象は、明らかにObective-Cよりも使いやすそうだった。

IMG_0266

[原文へ]

(翻訳:Nob Takahashi / facebook

広告

blog comments powered by Disqus