「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
-
製品資料
サイバー脅威「トップ50」完全解説ガイド、新たな攻撃手法に対抗するには -
製品資料
「入札市場」完全ガイドブック:メリットから資格取得のポイントまで -
市場調査・トレンド
はじめての「自治体/官公庁入札」 必要な知識がすぐに学べる入門ガイド -
製品資料
「入札市場」徹底解説:入札で結果を出す企業はどんな方法を使っているのか? -
製品資料
入札活動の成否を分ける情報収集 “狙い目案件”を効率よく見つけるには?
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
100億円の「Linux更新」を回避 みずほ銀行が選んだ“おきて破り”のRHEL延命策
-
2
Oracle巨大ITプロジェクトはなぜつまずいたのか 8年で導入1割、追加で170億ドル
-
3
Microsoft製品でここまで自動化できる 情シスがやめられる手作業10選
-
4
「技術屋」で終わらないために 情シスが今取るべき認定資格5選
-
5
ISMSの“コンサル丸投げ”が招く数千万円の無駄 NTTドコモビジネスの脱出劇
-
6
脱VMwareの最適解 NTTデータと日立製作所が示す国産仮想化基盤
-
7
自宅のWi-Fiが「遅い」「途切れる」本当の原因は? Dellが推奨する鉄則
-
8
「脱Excel」はなぜ現場に潰されるのか 反発を封じる“3つの論理”
-
9
「VMwareのコスト」に悩んでいるユーザー企業に送る、VMwareを残す・捨てる基準
-
10
Synologyがエンタープライズ向けユニファイドストレージを投入 その実力は
ホワイトペーパーランキング PR
-
1
AIエージェントで多様な日常業務を効率化するための入門ガイド
-
2
AIが「わざわざ使うツール」になっていない? 業務で自然に使う導線にする秘訣
-
3
5回聞くだけじゃ足りない? トヨタ式「なぜなぜ分析」の正しい実践方法
-
4
JR西日本ITソリューションズが「監視業務の属人化」を解消した方法とは?
-
5
「脱Excel」か「Excel快適化」か? 現場にやさしい業務改善の進め方
-
6
インシデント対応工数を約3割削減、東京ガスの事例に学ぶ監視体制刷新のコツ
-
7
PostgreSQLの「機能」「性能」「運用」「拡張性」に関する悩みの解消法
-
8
5分で分かる「セキュア大容量ファイル転送サービス」の機能とメリット
-
9
Macの安全神話は崩壊? 最新の脅威動向から見えた攻撃のトレンドと有効な対策
-
10
情報セキュリティ対策早分かりガイド:25の自社診断で弱点と解決策を理解
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー