Swift普及への課題とこれから
SwiftのコードからObjective-C APIを呼び出す、その反対にObjective-CのコードからSwift APIを呼び出せるなど、このふたつの言語には互換性が確保されている。ひとつのアプリをSwiftとObjective-Cの両方で記述する(同一プロジェクトにSwiftとObjective-Cのコードがある)など混在が可能なため、過去の資産を活用しつつSwiftへの移行を進めることもできる。
「iOS/OS Xアプリ開発者がSwiftの学習を始める必要があるかどうか?」と尋ねられれば、答えは「Yes」だ。Objective-Cは当面サポートされるだろうし、前述したように相互運用性は保たれている。しかし、Swiftについて調べるにつれ、開発言語のバリエーションを増やしたのではなく、Objective-Cを置きかえる存在として登場したことがわかる。
コンパイラ(LLVM)およびフロントエンド(Clang)の最適化
気になるのは、コンパイラ(LLVM)およびフロントエンド(Clang)の最適化だ。Swiftから生成したバイナリのパフォーマンスは、CほどではないがObjective-C並みという評価を耳にするが、世間に存在が公開されてから数日しか経過していないだけあって、さらなる検証が必要な部分であることは確か。信頼性についても同様だ。
とはいえ、Swiftへのシフトは必ず進む。Cocoaなどフレームワークの扱い方を理解しているプログラマーであれば、書き方は多少変わるがObjective-Cで培ったノウハウを継承できるので、移行はスムーズに進むのではないか。過去に蓄積されたフレームワークへのアクセスが担保されているという意味で、Appleは“レール”を敷いているのだ。
「App Storeで公開されているアプリの『○○%』がSwiftで書かれています」。来年のWWDC基調講演ではそのような発言を耳にするに違いない。
この連載の記事
-
第187回
iPhone
NFCの世界を一変させる!? iOS 11「Core NFC」の提供開始が意味するもの -
第186回
iPhone
Appleと「4K HDR」 - iOS 11で写真/動画を変える「HEIF」と「HEVC」 -
第185回
iPhone
iPhone 7搭載の「A10 Fusion」「W1」は何を変えるか -
第184回
iPhone
オープンソース化された「PowerShell」をMacで使う -
第183回
iPhone
アップル製デバイス連携の鍵、「Continuity」とは? -
第182回
iPhone
DCI-P3準拠へと歩むiPhone/iPad - WWDC基調講演で秘められた新技術は、ここにある(2) -
第181回
iPhone
WWDC基調講演で秘められた新技術は、ここにある(1) -
第180回
iPhone
WWDC直前、買い替え前にマイMacのココをチェック -
第179回
iPhone
私がiTunesを使わなくなった5つの理由 -
第178回
iPhone
今あえてiPhone「Live Photos」を知る -
第177回
iPhone
「Windows Subsystem for Linux」はOS Xのライバルとなるか? - この連載の一覧へ