「Objective-C」よりも“超”簡単なプログラミング言語
iPhoneアプリ開発の初心者に最適、Appleの新言語「Swift」が魅力的な理由
米Appleの「Swift」は親しみやすく使いやすいプログラミング言語だ。アプリケーション開発に起こりつつある変革の象徴で、特にモバイル開発の分野でチャネルパートナーを触発している。
米Appleのモバイル開発を手掛けているチャネルパートナーは、Appleの「iOS」と「OS X」向けのAppleのプログラミング言語「Swift」の検証を始めている。
AppleがSwiftを発表したのは、2014年6月に開催された同社の年次カンファレンス「Worldwide Developers Conference」だ。これまでiOS、OS Xアプリの主要な開発言語は「Objective-C」だった。Swiftの登場はObjective-C依存からの脱却を意味する。Swiftは使いやすいスクリプティング言語に倣っている。そのため、ネイティブモバイルアプリ開発の門戸が広範囲の開発者に開かれることが期待される。
プログラミング初心者に使いやすい“Swift”
SwiftはObjective-Cよりも構文がシンプルである。これは新しい言語に多く見られる特性だ。また、簡単にコーディングできるようにする最新機能が搭載されており、「プログラミング初心者に使いやすい」とAppleはうたっている。プログラミング初心者には、Apple環境におけるアプリの開発ピッチを上げる役割を担うことが期待されている。
Appleは2014年9月上旬にiOS向けの「Swift 1.0」が「ゴールドマスター(GM)版」に達したことを発表した。つまり、Swiftを商用アプリ開発に使用できるというAppleのお墨付きが出たことになる。現在、開発者はAppleの「App Store」にSwiftアプリを提出できる。OS X向けSwiftのGM版は、「OS X Yosemite」と同じタイミングで提供されることが予定されていた。だが、いまだに提供されていない。OS X向けSwiftでは、Yosemiteソフトウェア開発キットが必要になる。
ソリューションプロバイダーがSwiftを使用する最初のステップは多岐にわたる。社内アプリを開発することもあれば、開発者にSwiftの試用を奨励することもある。現時点では、Swiftの最終的な影響は未知数だ。また、その重要性についてはさまざまな意見がある。だがSwiftは、アプリ開発の多岐にわたるトレンドを網羅しているように見える。
エンタープライズモビリティに特化した政府向けソリューションプロバイダー、米Agilexの最高技術責任者(CTO)、ティム・ヘキスト氏は次のように語る。「一般的に、アプリ開発の変革が見られるのは下位レベルのコーディングではない。アプリケーションアセンブリに高い比重を置いている高位レベルの言語だ。Swiftはユーザーインタフェースだけでなく実際のソフトウェアを記述するという方向への大きな一歩であるように思える」
また、米クラウドコンサルティング会社Appirioで最高コミュニティー責任者を務めるデイブ・メッシンガー氏は、次のように補足している。「SwiftはObjective-Cよりも使いやすく、学びやすく、プログラミングしやすいように設計されている。また、最新言語の機能とメリットを取り入れている。そのため、これらを『iPhone』『iPad』『Mac』の開発で使用することが可能になる。Swiftが広範囲の開発者に浸透すれば、素晴らしい機会が提供され、非常に面白いことになるはずだ」
Swift草創期の取り組み
Apple Consultants NetworkのメンバーであるAgilexは、現場検査、緊急状態応答管理、医療などの分野のモバイルソリューションを提供している。その中でSwiftが影響を及ぼし始めているのが医療分野だ。Agilexでアプリケーションアーキテクトを務めるビス・パトローラ氏によると、同社がSwiftを使用するのはAppleの「HealthKit API」で医療分野の政府関係機関用に試作品を開発するときだという。
HealthKitにより、Appleが2014年9月にリリースした「ヘルスケア」アプリとその他の健康アプリでデータを共有できるようになるとAppleはいう。また、さまざまな健康アプリ間でデータ共有を可能にする。Appleのヘルスケアアプリには、ユーザーの健康データとフィットネスデータを表示するダッシュボードがある。このアプリに関する情報は2014年6月に「iOS 8」と同時に公表された。iOS 8は2014年9月中旬に提供されたがHealthKitにはiOS 8上での実行を妨げるバグがあり、9月下旬に提供された「iOS 8.0.2」で不具合が修正された。
Swiftの別の採用例として、ヘキスト氏はAgilexが同言語を主要言語として開発した社内アプリを挙げている。このアプリはBluetooth Low Energy(BLE)を使った「iBeacon」搭載デバイスと通信する。開発者の感想によると、Swiftは安定していて動作も速い。そのため、開発者は少ないキーストロークでより多くの作業を行えるという。
「このように生産性が向上し実用的な結果を得られるようになれば、ネイティブアプリの開発が大きく促進されるだろう」(ヘキスト氏)
Swiftを採用しているチャネルパートナーは他にも存在する。米Appirioは、同社の「Topcoder」の開発者コミュニティーとSwiftを結び付けるために取り組んでいる。TopcoderはAppirioのクラウドソーシング開発プラットフォームだ。世界中の設計者、開発者、データサイエンスの専門家のプールとビジネスのマッチングを行っている。Appirioは、別のモバイル開発環境を使用している開発者をSwiftに移行すべく努めている。これは、「Swiftに移行するとコミュニティーのスピードや機敏さが大きく変わる」という信念に基づいた対応だ。
「実用的なアプリを開発したり、各自の能力を高めたりできる最高の機会をコミュニティーに提供したい」とメッシンガー氏は話す。
Appirioは2014年8月に「GetSwifter」を発表した。これは50万ドルを超える賞金が用意されたTopcoderメンバー向けのコンテストだ。メッシンガー氏は、AppleがSwiftを企業に強くプッシュしていると見ている。このコンテストによって、開発者のモチベーションが高まる。また、アプリ開発の人材創出にもつながるため、Appleエコシステムのアプリに投資している企業にもメリットがある。
「このコンテストはコミュニティーに報酬を提供する方法として優れているだけでなく、今後、企業が利用できるSwiftのスキルを高めてくれる」(メッシンガー氏)
入門レベルの「Learn Swift」コンテストでは、開発者はランダムに課題を完了し、提出して評価を受ける。
「これは“まずは使ってみる”ことを奨励するコンテストで、参加者はいくらかの経験と評価を得ることができる」(メッシンガー氏)
その1つ上の「Fun Challenges」カテゴリでは、開発者は小型のアプリを開発し、優秀なアプリには賞金または賞品が贈られる。
「Real World Challenges」カテゴリでも開発者がアプリを開発するのは同様だ。だが、それを評価して勝者を決定するのは顧客企業だ。例えばある課題では、「モノのインターネット」(Internet of Things)に特化したSaaS(Software as a Service)企業の米Brivo Labsが使用するイベント会場のチェックインアプリの開発を競う。優勝者には1000ドル、準優勝者には250ドルが贈られる。
Swiftコンテストのスポンサーには、Brivo Labs、米BMC Software、米Booz Allen Hamilton、米Harman International、米HP、米NTT Innovation Instituteが名を連ねている。Appirioによると、TopcoderクラウドソーシングコミュニティーでSwiftの使用経験がある開発者数は、GetSwifterコンテストを立ち上げてから3500人を超えたという。
Swiftの影響
SwiftはObjective-Cと比べて「ずっと親しみやすい言語」だと述べているメッシンガー氏によると、Topcoderの開発者は今Swiftを習得しているところだという。Appirioが社内の開発者が使用している言語を追跡したところ、Objective-CやC++のバックグラウンドを持たない開発者がSwiftを採用していることが判明した。
だが業界の重鎮によると、SwiftとObjective-Cが連携することで魅力的な特徴が生まれるという。Objective-Cを使い慣れている開発者は、同じプログラムにSwiftコードを追加できる。メッシンガー氏によると、開発者はSwiftからC++を呼び出すことはできないが、Objective-CでC++のクラスをラップしてSwiftから呼び出すことは可能だという。
「SwiftとObjective-Cが同時に動作するようにしたことも、Appleの重要な判断の1つだ。これによってAppleプラットフォームの採用が促進されるだろう」とヘキスト氏は話す。
また、ヘキスト氏はSwiftのリアルタイム機能もメリットとして挙げている。従来、開発者はプログラムを記述してコンパイルした後に、プログラムが機能するかどうかテストしていた。だがSwiftは開発者がコードを記述しながらコードの結果を確認できる。
「この機能は、アルゴリズムを設計する開発者に重宝されるだろう。実際のアプリに展開する前に、コードの正確さと効率について、その場でフィードバックが得られる」(ヘキスト氏)
Swiftのリアルタイム機能の一例は「playgrounds」だ。playgroundsを使用すると、開発者は、プロジェクトに移植する前にコードを試すことができる。
「Swiftのplaygroundsに備わっているリアルタイムな性質は、他のプログラミング言語には、ほぼ見られないものだ」(ヘキスト氏)
ヘキスト氏は、「Groovy Console」などの既存のリアルタイムシミュレーターについて言及している。このようなシミュレーターではコードを実行する前にコンパイルの手順が必要になると述べている。Groovyは、Javaをベースに構築した動的言語だ。
開発者はSwiftの拡張性とパフォーマンスについて様子を見ることになるだろうとヘキスト氏は述べている。だが、今のところSwiftは非常に好調だという。
「Swiftがどの程度広く採用されるのか見届ける必要があるだろう」(ヘキスト氏)
一方、米Telerikで製品マーケティングマネジャーを務めるゲイブ・サムナー氏は、開発者が広範囲のモバイルユーザーに向けてアプリを開発することに関心を示していると指摘する。デバイス固有の言語では、広範囲のモバイルユーザー向けアプリを開発することは不可能だ。マサチューセッツ州ウォルサムに拠点を置くTelerikは、iOS、Android、Windows Phone用のクロスプラットフォーム向けモバイル開発環境を提供している。このツールを使用すると、開発者はJavaScriptとHTML5を使用してアプリを開発できる。
「私たちはJavaScriptとHTML5に大きく依存している。これらの言語にSwiftが大きな影響を与えたとは全く考えていない」
複数のプラットフォームに対応したハイブリッドアプリは、大部分のユースケースには十分だとサムナー氏は考えている。そして、Swiftはテレビゲームなどのアプリ分野では大成功を収める可能性があると予測している。
「ゲームアプリのパフォーマンス要件を考えると、ネイティブコードの記述に適したもっと魅力的な事例が生まれるだろう」(サムナー氏)
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社MatrixFlow] 「物流リソース最適化」ガイド:人員・配車・傭車を出庫依頼の確定前に決めきる -
製品資料
[株式会社キーエンス] なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは -
製品資料
[株式会社セールスフォース・ジャパン] 「CRMは設計と無関係」は本当か? PLMとの融合で実現する高速開発 -
事例
[日本ヒューレット・パッカード合同会社] AIエージェントの時代にどう備える? 「新たな働き手」を支える3要素とは -
製品資料
[日本ヒューレット・パッカード合同会社] “横並びの自動化”から脱却、AI活用で生産性と競争力を高める秘訣
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
2
法務と開発者で「言葉が通じない」問題 トヨタやソニーが語るOSS管理の真実
-
3
なぜ「Gemini 4 Argon」は出遅れたのか? Googleが狙う“逆転のシナリオ”
-
4
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
5
情シスの約8割が転職や退職を意識 調査で分かった“辞めたくなる最大の理由”
-
6
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
7
情報漏えいはなぜ繰り返されるのか 今すぐ見直すべき「境界」
-
8
「Wi-Fi 7」経由でWindowsが乗っ取られる? 最高権限奪取の恐怖
-
9
「結局使わなくなる」Microsoft 365 Copilotを半年で定着 キリンの3施策
-
10
「中堅・中小企業のネットワーク・セキュリティ運用実態」に関するアンケート
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
3
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
4
財務部門がAIを最大限に活用する方法 無駄のない戦略的リーダーシップへの道
-
5
LLMが兵器化? 元FBI高官が鳴らす警鐘とセキュリティツール統合のポイント
-
6
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
7
なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは
-
8
生成AIを開発に導入しても効果が見えない? 実証実験で分かった成果と課題
-
9
経産省DX指針から読み解く、受発注業務デジタル化ロードマップ
-
10
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー