このページの本文へ

前へ 1 2 3 4 次へ

新言語「Swift」、開発者を意識した解禁も連発—WWDC 2014をダイジェストで振り返る

2014年06月09日 09時30分更新

文● 鈴木淳也(Junya Suzuki)

  • この記事をはてなブックマークに追加
  • 本文印刷

新言語「Swift」登場

 そして今回、最も話題となったといえるのが新言語「Swift」の発表だ。OS XやiOSの開発言語がC言語をオブジェクト指向方面に拡張した「Objective-C」であることは知られているが、Swiftのコンセプトは「Cを排除したObjective-C」となっている。つまり、オブジェクト指向的な仕組みは維持されるものの、文法や動作的にC言語由来のものはできるだけ排除して、よりオブジェクト指向に特化した形で作り直した言語ということになる。

大きな話題となったのが新言語「Swift」の発表。オブジェクト指向方面に拡張したObjective-CからC言語の一般的な文法を排除し、よりオブジェクト指向に特化したものになっているという

 AppleではSwiftが非常に高速で簡単だと説明しているが、この辺りは今後のしっかりとした検証が必要だろう。

Swift、Objective-C、Python(GoogleのWebアプリ開発で利用される言語)の3つでの実行速度比較。基になったコードや最適化などの問題があるため、あくまで「処理次第で高速実行が可能な言語」程度に認識しておいたほうがいいかもしれない

 むしろ特徴として、昔ながらのC言語作法であるジャンプ命令やポインタ操作を排除し、型定義を厳密化して、プログラムの複雑化や不安定化を招く要素を可能な限り排除した点が重要となる。ガベージコレクションのような仕組みはObjective-C 2.0でもすでに導入されていたが、今回のSwiftではおそらくより高度なメモリ管理手法を導入し、ポインタ操作の禁止によるバッファオーバーフローや予期しない動作などを防ぐような機構を目指している。

ジャンプ命令やポインタ、型定義など、プログラムの複雑化や不安定化を招く要素はすべて排除されているという

 Swiftのコードは中間コードへとコンパイルされ、LLVMで実行されるされることになる。従来のCocoaやCocoa Touchインターフェースが利用可能なほか、Objective-Cコードとの混在も可能で、当面は既存コードを少しずつSwiftへと移行していく形になるとみられる。iOS 8ならびにOS X Yosemite以降にSwiftで記述されたアプリのApp Storeへの登録が可能になるということで、今後しばらくは開発者らによる検証が続くだろう。

基本的にはLLVMベースでCocoaやCocoa Touchインターフェースが利用できるオブジェクト指向言語となっている。メモリ管理の自動化やコンパイル時の最適化など、より高度な仕組みが取り入れられている点が特徴。Objective-Cと同じランタイムで動作し、さらにObjective-Cのコードとの混在も可能

iOS 8の対応機種。最大のポイントはiPhone 4Sも含まれていること。一部機能制限が考えられるが、このあたりを下限にアプリ開発を行なえばいいという目安になる


前へ 1 2 3 4 次へ

カテゴリートップへ

ASCII.jp RSS2.0 配信中