Irohabook
0
808

Swiftの学習方針と開発に役立つリファレンスページまとめ

勉強法

Swiftの開発で参考になるサイト

  • Apple
  • Stack Overflow
  • raywenderlich.com
  • Medium
  • YouTube
  • Qiita

他のプログラミング言語と違い、Swiftの開発は調査力が影響する。文法や使い方を知ること以上に、調査を高度にルーティン化することが効率的な開発に不可欠になる。例えば検索するときに、キーワードと一緒に2018と入力すると効率がよくなる。Swiftは最も言語仕様が変わるプログラミング言語である。

またYouTubeの解説動画は、特定の言語仕様を深く理解する上で、遠回りでも役に立つことが多い。特に Lets Build That App というYouTubeチャンネルは中上級者向けにわかりやすく解説している。

Lets Build That App - YouTube

Swiftの開発は英語力がものをいう。iPhoneの利用率は高いが、Swift日本語の文献はきわめて少ない。

ブログよりもStack Overflowと公式リファレンス

英語でも日本語でもブログはたくさんあるが、結局はStack Overflowを読むと効率がよくなる。しかし、画面遷移や画面制御の本質を理解しないままコードやストーリーボードを作ることは大きなリスクがある。

Swiftの開発は段階的に本質を理解する作業をともなう。本質を探る時間を一定以上とらないと、作ったものが本質的に間違っていたということが何度も起きる。

そうした非効率な作業を減らすためには、定期的にAppleの公式リファレンスを読むことがなにより役立つ。

車輪の再発明、独自技術症候群を全力で避ける

Swiftなどのプログラミング言語は、多くの人がすでに膨大な数のライブラリを作っている。例えばPythonで機械学習のアルゴリズムをゼロから作ることは、時間と金の浪費にしかならない。

iPhoneからサーバーに接続してデータを取得するコードをゼロから書いても意味がない。それはAlamofireという強力なライブラリが用意している。

開発のステップは次のようになる。

  1. ライブラリを探す
  2. ライブラリを使う
  3. ライブラリを使えない場合、自分のしたいことが間違っていないか考える
  4. 間違っていなければ、ライブラリに相当するものを自分で作る

代表的なライブラリは下のページにまとめている。

Swiftで人気のCocoaPodsライブラリ一覧(IGListKit、Alamofire、SwiftyJSONなど)

文法そのものは真正面から勉強しない

Swiftは他のプログラミング言語にない独特な文法を持っているが、本を読んでこれらを真正面から受け止めるより、開発を通じて自然に学ぶほうが効率がいい。これはC言語などと同様かもしれない。

Swiftは本から勉強してはいけない。言語仕様が毎年のように変わっているため、少しでも古い本はあてにならない。

Objective-Cはとりあえず無視する

今でもObjective-C関連のページが残っているが、Swift 4以降のページのみを参考にする。意図してObjective-Cのページを避けていかないと、結局時間を浪費することになる。

基本

CocoaPods Tutorial for Swift: Getting Started - raywenderlich.com
【Swift】CocoaPods導入手順 - Qiita
CocoaPodsによる、外部ライブラリの利用と作成 | Developers.IO

ライブラリ(CocoaPods)

Swiftで人気のCocoaPodsライブラリ一覧(IGListKit、Alamofire、SwiftyJSONなど)

タブバー

タブバーそのものはシンプルだが、アイコンを設定したり、タブとナビゲーションを組み合わせたりというときに、次のページが参考になる。

UITabBarControllerをコードから使ってみる

ナビゲーションバー

How to Navigate from one View Controller to another using Swift - Stack Overflow
Changing navigation title programmatically - Stack Overflow

extension

Swift extension example - Stack Overflow

次の記事

システム・環境