Swiftは、macOSおよびiOSデバイス向けのアプリの作成に使用されます。Appleは、デバイスから最速かつ最も効率的なパフォーマンスを引き出すことを明確に目的としてSwiftを設計しており、Swift 3では、すでに優れた機能セットがさらに拡張されています。
Swift 4 の新機能は何ですか?

「Swiftはわずか6ヶ月前にオープンソースプロジェクトとしてリリースされました」と、Appleの言語およびランタイム担当シニアマネージャー、テッド・クレメネック氏は述べています。「その大きな目的は、単に大量のソースコードをGitHubに公開することではなく、Swiftの今後の進化を推進する完全にオープンなコミュニティを構築することでした。Swift 3は、そのコミュニティの成果物として意図されたSwiftの初のメジャーアップデートです。」
Swiftのもう一つの大きな特徴は、もはやiOSとOS X開発だけにとどまらないことです。Swiftがオープンソース化されて以来、Linux版が登場しました。これにより、Swiftはアプリ開発者だけでなく、サーバー開発者にも広く利用されるようになりました。
「今日のソフトウェアエコシステムは非常に多様です」とクレメネック氏は言います。サーバー開発でも、アプリ開発でも、Swiftはあらゆる人に利用してもらえるようにしたいと考えています。これは、SwiftがLinuxに移植されて以来、初のメジャーアップデートとなります。
新しいバージョンに関する記事は、こちらにあります: Swift 4 でアプリを作成する方法。
Swift 3でアプリを書く方法:新しいSwift 3 API言語でコアとなる基礎を正しく理解する

Swift 2(あるいはそれ以前)を使ってきた開発者にとって、Swift 3で言語がいかに変化しているかは驚くかもしれません。「Swift 3の大きな特徴は、核となる基本機能をしっかりと形にし、その上にさらに発展させていきたいということです」とクレメネック氏は言います。「Swiftの素晴らしさを、もっともっと素晴らしいものにしたいのです。」
Appleの開発ツール部門シニアディレクター、クリス・ラトナー氏も同意見です。「Swiftのコアとなるエクスペリエンスを素晴らしいものにしたいと考えています。」
「これは難しい問題です。単にカンマを使うかコロンを使うかという問題ではありません。互換性の問題でもあります。ですから、Swift をその形にするために、私たちはあらゆる努力をしています。そうすれば、Swift は永遠に使い続けられるのです。」
Swift にはたくさんの新しい機能があります。
- Swift 3でのAPIへのアクセス。最大の変更点はAPI言語です。Apple APIへのアクセスは、Swift(そしてほとんどの最新言語)でソフトウェアを開発する上で不可欠な要素です。Appleは明瞭性を重視し、API言語を根本的に変更しました。新しい構文の詳細については、Swift.orgをご覧ください。
- Playgroundのサポート。Xcode 8では、ダウンロード可能なスナップショットのPlaygroundサポートが追加されました。つまり、XcodeでSwiftの最新スナップショットをダウンロードして、すぐに実験を始めることができます。Xcodeを再起動する必要もありません。これにより、開発者は新しい言語の進化に追従しやすくなります。
- パラメータのラベル付け。Swift 3ではパラメータのラベル付けにかなり大きな変更が加えられています。Swift 2ではObjective-Cと一致していましたが、API言語が大きく変更されたため、パラメータをSwiftと一致させるのは理にかなっています。
- ジェネリックもまた、構文が変更された領域の一つです。シグネチャが先頭に来るようになり、制約はそれに次ぐものになりました。
- 警告。関数内に未使用の結果がある場合、警告が表示されるようになりました。この動作が意図的なものであれば、この警告をオーバーライドできます。
AppleはSwift 3.0に機能を追加するだけでなく、機能も削除しています。Swift 3.0で削除された機能の一部をご紹介します。
- カリー化関数宣言構文
- 関数のパラメータリスト内のvar
- ++ および — 演算子
- Cスタイルのforループ
- 呼び出しにおける暗黙のタプルスプラット
「これらの中には賛否両論を呼ぶものもあることは承知しています」とクレメネック氏は言う。しかし、これらは開発者コミュニティとの長期にわたる議論の成果であり、すべてのログはオンラインで公開されていると彼は指摘する。
次に読む: Swift Playgrounds を使ってコーディングを学ぶ方法
Swift 3でアプリを書く方法:Xcode 8ベータ版をインストールする

Swift 3.0は現在、すべての開発者にご利用いただけます。使い始めるのに有料のApple Developer Connectionに加入する必要はありません。Xcode 8ベータ版をダウンロードすれば、すぐにSwift 3.0言語を使い始めることができます。AppleはiBooks StoreでSwift 3プログラミング言語ガイドも公開しているので、新しい機能と構文をすぐに使い始めることができます。
続きを読む: Swift 3.0完全ガイド: Appleのプログラミング言語のすべての新機能
Swift 3 でアプリを作成する方法: Swift がオープンソースであることはどういう意味ですか?

2015年12月時点で、Swift 2はオープンソースでした。しかし、これはプログラマーやアプリユーザーにとって何を意味するのでしょうか?
オープンソースとは、一般的に、プログラムまたはプログラミング言語のソースコードが一般に公開されていることを意味します。これにより、開発者はプログラムを自由に閲覧、修正、展開できるようになります。
実際には、開発者はSwiftプログラミング言語をApple以外のOS向けに開発し、デプロイできることを意味します。特にLinux OSではSwiftが利用されています(LinuxとOS XはどちらもUnixライクな基盤構造を共有しているため)。
すごいですね!AndroidスマートフォンでiOSアプリを実行できるようになりますか?
Swiftのコードは他のデバイスでも使用できるようになりますが、OS XやiOSのソフトウェアがWindowsやAndroidで動作するようになるわけではありません。デバイス間のソフトウェア移植は容易になりますが、Appleは引き続きSDK(ソフトウェア開発キット)の管理権を保持すると予想されます。Swiftのどの部分をオープンソース化する予定かは不明ですが、XcodeのソースコードはAppleが引き続き保持すると思われます。そのため、OS XやiOSのソフトウェア開発には引き続きMacが使用されることになります。
Appleは非常にプライベートな企業であり、自社の製品を非常に保護しているため、開発者以外の人々にとってオープンソースは同社にふさわしくないと思われるかもしれません。しかし、Appleはオープンソースコミュニティにとって決して無縁の企業ではありません。OS XはUNIXをベースに構築されており、そのソフトウェアコンポーネントの多くはオープンソースです。
Apple の Open at the source のページには次のように書かれています。「Apple は、オープンソースの方法論を使用することで、Mac OS X がより堅牢で安全なオペレーティングシステムになると考えています。そのコアコンポーネントは、何十年にもわたってピアレビューの試練にさらされてきたからです。」
Swift 3 でアプリを作成する方法: Apple の Swift プログラミング言語の使い心地はどのようなものでしょうか?
Appleのプログラミング言語Swiftは、2014年のWWDCで初めて発表され、Mac OS XとiOSデバイスのプログラミングを大幅に簡素化するように設計されています。この記事の残りの部分では、プログラミング言語としてのApple Swiftの特徴、MacでApple Swiftをセットアップする方法、そしてApple Swiftでのプログラミングを学ぶ方法について説明します。
SwiftはAppleの現行プログラミング言語Objective-Cを補完し、最終的には置き換える予定です。Objective-Cは1980年代に開発され、1996年にMacに導入されました。2014年以前、Appleが新しいプログラミング言語をリリースしてから17年が経過していたため、SwiftはApple開発者コミュニティにとって非常に重要です。
- AppleはWWDC 2014で何を発表しましたか?

Swift 3 でアプリを作成する方法: Apple の Swift プログラミング言語とは何ですか?
Swiftは、CocoaとCocoa Touch(それぞれMac OS XとiOSのプログラミングフレームワーク)向けのプログラミング言語です。Swiftプログラムは、Appleの統合開発環境(IDE)の最新版であるXcode 6を使用して作成されます。
Swift は 2014 年に導入された比較的新しいプログラミング言語ですが、既存の Objective-C プログラム (OS X および iOS プログラムの開発に使用されていたもの) と併用できるように設計されています。これにより、開発者は古い Objective-C コードをすべて置き換えなくても、既存のアプリに Swift コードを追加できます。
Swift 3 でアプリを作成する方法: Apple Swift でプログラミングする利点は何ですか?
Appleは、Swiftが従来のObjective-Cコードに対して持つ多くの利点を概説しています。Swiftは比較的新しい言語であるため、まだ多くの点が不明ですが、SwiftがObjective-Cよりも優れたプログラミング言語である理由をいくつか挙げてみましょう。
Apple Swiftはきれいな構文を持っています
Apple Swiftは、読みやすく、コードもはるかに簡単なプログラミング言語として設計されています。Swiftの構文(フォーマット)では、各行末にセミコロンを付ける必要がなく、関数も理解しやすくなっています。例えば、Basicで多くの人が馴染みのあるPrintコマンドは、Objective-CではNSLOGです(NSは、スティーブ・ジョブズがAppleを去った後に設立したNextStepへのオマージュであり、Appleがいかに多くのレガシーを置き換えているかを示しています)。Swiftでは、このコマンドははるかに馴染みのある「println」です。コーディングに必要な記号が少なく、SwiftはObjective-Cよりもはるかに効率的です。
各言語の典型的なHello Worldプログラム(画面に「Hello, world!」と表示するプログラム)を見てみると、SwiftはObjective-Cよりもシンプルで、はるかに理にかなっていることがわかります。
Objective-C: Hello World
Objective-C での Hello World プログラムは次のようになります。
#輸入
#輸入
int メイン(void)
{
NSLog(@”Hello, world!n”);
0を返します。
}
Swift: Hello World
Swift での Hello World プログラムは次のようになります。
println(“こんにちは、世界!”)
ご覧の通り、Swiftははるかに簡潔で読みやすく、学習しやすいコードです。Appleがコードの表現力を高めるために重要だと挙げているその他の機能は以下の通りです。
- 関数ポインタと統合されたクロージャ
- タプルと複数の戻り値
- ジェネリック医薬品
- 範囲またはコレクションに対する高速かつ簡潔な反復処理
- メソッド、拡張機能、プロトコルをサポートする構造体。
- 関数型プログラミングパターン、例:mapとfilter
Apple Swiftのメモリは管理されている
Swiftの大きな利点の一つは、開発者がメモリ割り当てを管理する必要がないことです。Swiftでは、変数は使用前に初期化され、配列と整数はオーバーフローチェックが行われ、メモリは自動的に管理されます。そのため、Swiftプログラミング言語は、経験の浅い開発者にとってより安全に使用できます。Swiftのメモリ管理はアプリの信頼性を高め、開発者だけでなく、開発者以外のユーザーにもメリットをもたらします。
App Storeで成功するiOSアプリのマーケティング完全ガイド
Swift 3 でアプリを作成する方法: Mac 用の Apple Swift はどこで入手できますか?
Swift は、Mac App Store から無料でダウンロードできる Xcode IDE (統合開発環境) の一部です。
![]()
Swift 3 でアプリを作成する方法: Swift でのプログラミング方法を学ぶ必要がありますか?
開発者の間では、Swift は優れたプログラミング言語であるという意見が一般的です。Swift は、同じく高い評価を得ているプログラミング言語である Python と多くの点で類似しています。Swift は、初心者にとって Objective-C よりもはるかに習得しやすいプログラミング言語であるはずです。Python はプログラミング教室でよく使われる言語であるため、多くのプログラマーは Apple Swift の構文の多くに既に馴染みがあるかもしれません。
続きを読む: MacでPythonを使ってコーディングする方法
しかし、経験豊富な開発者にとっては、よりクリーンな構文の方が使いやすいので、より適しています。
Objective-Cに慣れるのに時間を費やしたなら、Swiftには多くの利点があることに気づくはずです。ただし、新しいプログラミング言語に移行するには新しいコードを学習する必要があり、これは既存の開発者にとっては負担となるでしょう。しかし、長期的には、Swiftでのコーディングは、経験豊富なObjective-C開発者にとっても大きな成果をもたらすと期待されています。
Swiftは、Mac OS XやiOSからAndroidなどの他のプラットフォームへのコード移行を容易にするものではありません。多くの開発者は、Swift開発の利点とApple環境へのさらなるロックインとのバランスを取ろうとしています。Appleは今のところ、CocoaおよびCocoa Touchアプリの開発においてObjective-CとSwiftの両方のコードをサポートしていますが、最終的にはすべての開発者がSwiftに移行すると予想されます。
Swift 3 でアプリを作成する方法: Swift プログラミングを学ぶにはどうすればいいですか?
Swiftを学びたいなら、様々なリソースがあります。XcodeはApp Storeから入手できますし、AppleはすでにiBooks StoreでSwiftプログラミングに関する書籍『The Swift Programming Language』(iBooks Store)をリリースしています。ちなみに、この本は誰でもダウンロードでき、Apple Developerに登録する必要はありません。
AppleのSwiftプログラミング言語書籍は、Mac OS XのiBooks、またはiPad(またはiPhone)で読むことができます。Appleの書籍では、基本的な演算子から継承までを網羅していますが、Xcode環境でのiOSアプリ開発については触れられていません。Swiftに関するより詳細な書籍や初心者向けのチュートリアルが、近々登場することを期待しています。
Apple Swift プログラミング リソースをいくつか紹介します。
- Swiftプログラミング言語(iBooksストア)
- Swiftプログラミング言語
- Swift を Cocoa と Objective-C で使う
また、Udemy などのサイトでオンライン チュートリアルを確認することもお勧めします。Udemy では、次のような開発者向けのコースを多数提供しています。
- iOS 9とSwiftのマスター:Swiftで11のアプリを構築する
- iOS 9開発者コースを完了する
- Swift で 20 のウェブサイトと 14 の iOS 9 アプリを構築する方法を学びます
一方で、多くの開発者がインターネット上でSwiftとその機能の概要を解説しています。Swiftプログラマーを目指す方は、ぜひブックマークしておくべき優れたウェブサイトをいくつかご紹介します。
- 素早く機能する
- レディット /r/swift
スタンフォード大学、MIT、ハーバード大学などの大学による素晴らしいオンラインビデオも公開されています。iTunes Uにあるスタンフォード大学の「Swiftを使ったiOS 9アプリ開発」コースもぜひご覧ください。これらの動画は、開発全般の概要を理解するのに最適です。
コメント欄で、Swift プログラミングに関するその他の Web サイト (または書籍) をお知らせください。
Swift 3 でアプリを作成する方法: Swift プログラミングをゼロから学ぶ最適な方法は何ですか?
プログラミング初心者の方、あるいはプログラミング全般を学びたい方には、役立つウェブサイトやサービスが数多くあります。おすすめのコーディングサイトをいくつかご紹介します。
- Codeacademy。この無料のオンライン学習コミュニティでは、デジタルスキルを学べます。Swiftプログラミングはまだサポートされていませんが、Python(入門に最適な言語)を学ぶ際に、丁寧に指導してくれます。
- Pythonをハードな方法で学ぶ。やや不気味な名前にもかかわらず、この本とコースは初心者がプログラミングを学ぶための最良の方法です。
- MITX 6.00.1x: Pythonを使ったコンピュータサイエンスとプログラミング入門。このコースは、コンピュータサイエンスやプログラミングの経験がないMITとハーバード大学の学生向けに設計されています。教材とコースはすべてオンラインで利用できます。プログラミング入門に最適な入門ガイドと言えるでしょう(コンピューターサイエンス全般に興味がある方であれば、ビデオも非常に参考になるでしょう)。
それでも物足りないという方は、Nate Murrayという開発者のおかげで、SwiftでFlappy Birdをプレイできます。Flappy BirdのSwiftコードはGitHubで公開されています。
他に含めるべきと思われるリンクやリソースがあればお知らせください。

参照:
Swift 3とその新機能の完全ガイド
WWDCでmacOS Sierraが発表
iOS 10 プレビュー: iOS 10 ベータ版の第一印象