C言語・Java・PHPなど、世の中には実に様々なプログラミング言語が存在します。その中でもSwift(スウィフト)というプログラミング言語をご存知でしょうか。
この言語は、iPhoneやiPadなどでお馴染みのApple社が開発したプログラミング言語です。Swift(スウィフト)を使えば、AppleのiOS 7以降・OS X version 10.9以降のOSを搭載しているデバイス、全てのアプリケーションを開発することができます。その他、Apple TV・Apple Watchなどのアプリを作ることも。
そんなSwift(スウィフト)言語の、誕生から現在に至るまでの軌跡について見ていきましょう。
テクフリでフリーランス案件を探してみるSwift(スウィフト)が一般公開されたのは2014年6月。Apple社が毎年開催している、開発者向けイベントWWDC(Worldwide Developers Conference)で、世間に初めて披露されました。イベント開催時まで、事前のリークや予想がなく、誰もが意表を突かれる結果となりました。
Swift(スウィフト)言語における開発メンバーの中心人物は、クリス・ラットナー氏(Chris Lattner)。ラットナー氏は、コンパイラ基盤であるLLVMの生みの親としても有名です。彼いわく、Swift(スウィフト)開発にあたっては「Objective-Cをはじめ、Rust、Haskell、Ruby、Python、C#、CLUなど…挙げるとキリがないほど、多くの言語を参考にした」と述べています。
ここで気になるのは、そもそも何故Swift(スウィフト)が必要だったのかということ。Apple社は元々、Objective-Cという自社オリジナルのプログラミング言語を所有しておりました。
ただ、このObjective-Cが誕生したのは、今から30年以上前の1983年です。何事も年を重ねるごとに古くなるものですが、それはプログラミング言語にも言えること。開発の利便性を向上させるためには、既存言語のアップデートではなく、抜本的な手直し、つまりは新しい言語が必要になってきたのです。
事実、2000年以降は、実に様々な新興プログラミング言語が誕生しました。2002年にはマイクロソフト社がC#を。2001年にはスイス連邦工科大学 (EPFL) のマーティン・オーダスキー教授がScalaを。2011年にはジェットブレインズ社によるKotlinなど。そのうちの一つがSwift(スウィフト)です。
Swift(スウィフト)の開発がスタートしたのは、一般公開の4年前の2010年。その頃ラットナー氏が、バージョン管理システムに、開発のログをファーストコミットした記録が残っています。ラットナー氏のブログによると、開発当初は本人と、数名程度の規模で開発が進められたとのことです。
2011年後半になると少しずつ社内での評判が広まり、協力者が増えていったそう。そして、2013年7月には、Apple社内のDeveloper Tools グループにおける中心的関心事になるまで発展しました。
折角なので、ここで少し「Swift(スウィフト)とはどういった特徴を持つプログラミング言語なのか」見ていきましょう。当時のWWDCでAppleが言っていた通り、Swift(スウィフト)は『モダン』『安全』『高速』『インタラクティブ』の4つがキーワードになっています。
『モダン』とはプログラミングの世界でいう「コードが分かりやすく、読みやすいこと」を意味します。先のObjective-Cと比べてもコードは明らかにシンプルになっているのです。
なぜ『安全』と言えるのかというと、それまでの言語と違って、記述ミスによるバグが発生しやすい部分を、文法的にブロックしてエラーを防ぐことができるからです。
『高速』に関しては、後ほど詳しく説明しますが、最後の『インタラクティブ』とは以下のような理由から、そう言われています。
そもそもインタラクティブとは日本語訳をすると、『対話』・『双方向』といった意味です。その意味の通り、Swift(スウィフト)ではXcodeに内蔵されているPlaygraundというツールを使って、記述したプログラムの実行結果を、リアルタイムでチェックすることができます。そうすることで、文法の誤りや記述エラーなどにもいち早く気付くことができるようになります。(※普通はコンパイルという作業を行い、都度プログラマ自身が確認する必要があります。)
Swift(スウィフト)の一般公開直後は、ベースとなったObjective-Cよりも「良い」との評判が上がりました。その一方で、コンパイラやXcode(※Appleがオリジナルで開発した統合開発環境)が、頻繁にクラッシュするという問題も生じていたようです。そういった問題を解消すべく、2014年6月のSwift(スウィフト)発表から、バグの修正や言語仕様の微調整がなされました。そして3ヶ月後の9月に、正式版であるSwift 1.0がリリースされたのです。
巨大企業Appleが発表した新しいプログラミング言語なだけに、リリース当初から大きな話題を呼びました。そのSwift(スウィフト)が、プログラマの信頼をより強固なものにしたきっかけは、Swift1.2へのアップデートが行われたタイミングでしょう。この段階で、様々な機能が改善されました。例えば『クラスのメソッドやプロパティを、staticで宣言可能』になったり『ビルドが高速化』したりしました。
その後、2015年6月には、WWDC 2015でSwift 2.0が発表されています。要するに、わずか1年ほどでメジャーアップデートが行われる程、早いスピードで機能の改善・向上がなされているのです。
Swift(スウィフト)は現在に至るまで、継続的に機能のアップデートが実施されています。公式サイトによると、現在のSwift(スウィフト)では、一般的な検索アルゴリズムがこれまでよりも大幅に速いスピードで完了すると述べています。
そのスピードはObjective-Cの最大2.6倍、Python2.7の最大8.4倍高速。その利便性と簡易的なコードから、すでに多くの企業がSwift(スウィフト)を使ってサービスを開発しています。例えば、世界最大のファンディングプラットフォーム、Kickstarterや、世界最大のビジネスSNS、LinkedInなど。また一方で、スタンフォード大学といった教育機関も重要性を考慮し、Swift(スウィフト)を講義に取り入れています。
まだまだ歴史は浅いswift(スウィフト)言語ではありますが、Appleという超巨大企業が有するものだけに、将来性にも期待が持てそうです。また、『誰もが圧倒的に優れたアプリケーションを作れる、パワフルなオープンソースの言語です』と大々的にうたっている通り、Swift(スウィフト)のコードはシンプルで非常にわかりやすいのが特徴です。
Apple公式のドキュメントがあり、iTunes Uの無料講座も用意されているため、学習材料に困ることもないでしょう。プログラミング初心者の方も安心して学習に取り組める言語です。ぜひ一度Swift(スウィフト)をチェックしてみてはいかがですか?
テクフリでフリーランス案件を探してみる3つの質問に答えるだけで、フリーランスエンジニアとしての単価相場を算出します。 スキルやご経験にマッチする案件もあわせてご紹介いたしますので、気軽にご活用ください! ※単価相場の算出に個人情報の回答は必要ございません。