iOSアプリ開発の参考資料 ー初めてiOSアプリを開発する人へ

## はじめに
初めてiOSアプリを作成＆リリースした時に参考にしたサイト様方です。
主に自分の備忘録。
でも初めての開発のときにはどんな資料を参考にしたらよいのかわからないこともあると思うので、参考になれば幸いです。
※マニュアルを読むのは大切です（ほんとに）。

## Apple公式の資料
### [iOS Human Interface Guidelines](https://developer.apple.com/jp/documentation/UserExperience/Conceptual/MobileHIG/BasicsPart/BasicsPart.html)
以下、部分的な抜粋とメモ。
非常に膨大な資料なので、やりたいことの目印になれば幸いです。

- [**iOSアプリケーションの解剖**](https://developer.apple.com/jp/documentation/UserExperience/Conceptual/MobileHIG/Anatomy/Anatomy.html#//apple_ref/doc/uid/TP40006556-CH24-SW1)：基本的なUI要素の名前、役割、能力
- [**起動と停止**](https://developer.apple.com/jp/documentation/UserExperience/Conceptual/MobileHIG/StartingStopping/StartingStopping.html#//apple_ref/doc/uid/TP40006556-CH52-SW1)

    - 停止時に現在の状態をできるだけ詳細なレベルまで保存する
- [**モーダルコンテキスト**](https://developer.apple.com/jp/documentation/UserExperience/Conceptual/MobileHIG/Modal/Modal.html#//apple_ref/doc/uid/TP40006556-CH64-SW1)：モーダル型の要素について
- [**対話性とフィードバック**](https://developer.apple.com/jp/documentation/UserExperience/Conceptual/MobileHIG/InteractivityInput/InteractivityInput.html#//apple_ref/doc/uid/TP40006556-CH55-SW1)：タップ、ドラッグ、ピンチなどといったジェスチャについて
- [**バー**](https://developer.apple.com/jp/documentation/UserExperience/Conceptual/MobileHIG/Bars/Bars.html)：各種バーについて（ステータスバー、ナビゲーションバー、ツールバー、バー上のボタン、タブバー、タブバーボタン、検索バー、スコープバー）
- [**バーボタンアイコン**](https://developer.apple.com/jp/documentation/UserExperience/Conceptual/MobileHIG/BarIcons/BarIcons.html#//apple_ref/doc/uid/TP40006556-CH21-SW1)：標準と独自のバーボタンアイコンについて
- [**通知**](https://developer.apple.com/jp/documentation/UserExperience/Conceptual/MobileHIG/NotificationCenter/NotificationCenter.html#//apple_ref/doc/uid/TP40006556-CH39-SW1)
- [**コンテンツビュー**](https://developer.apple.com/jp/documentation/UserExperience/Conceptual/MobileHIG/ContentViews/ContentViews.html#//apple_ref/doc/uid/TP40006556-CH13-SW1)

    - **アクティビティ**：アクティビティビューコントローラからアクセスでき、現在のコンテンツと連携して動作可能な、システムが提供するタスクまたはカスタムタスクを表示する
    - **アクティビティビューコントローラ**：一時ビューの一種で、ある指定したコンテンツに対して作用する、システム組み込みまたは独自のタスクを並べたもの
    - **コレクションビュー**：アイテムの順序つきコレクションを管理し、その配置は調整可能
    - **コンテナビューコントローラ**：一連の子ビュー（またはビューコントローラ）を、独自の方法で管理、表示可能
        - タブバービューコントローラ
        - ナビゲーションビューコントローラ
        - 分割ビューコントローラ
- [**コントロール部品**](https://developer.apple.com/jp/documentation/UserExperience/Conceptual/MobileHIG/Controls/Controls.html#//apple_ref/doc/uid/TP40006556-CH15-SW1)

    - **アクティビティインジケータ**：タスクまたはプロセスが進行中であることを示す（UIActivityIndicatorView Class Reference）
    - **日付ピッカー**：時、分、日、年など、日付や時刻の構成要素を表示する（UIDatePicker）
    - **ラベル**：静的なテキストを表示（UILabel Class Reference）
    - **ページコントロール**：ビューがいくつ開いているか、その何番目が画面に表示されているかを示す（UIPageControl）
    - **ピッカー**：セレクト的な。ユーザーに選ばせる一連の値（UIPickerView Class Reference）
    - **テキストフィールド**：１行のユーザ入力を受け取る（UITextField）
- [**アイコンや画像の大きさ**](https://developer.apple.com/jp/documentation/UserExperience/Conceptual/MobileHIG/IconMatrix/IconMatrix.html#//apple_ref/doc/uid/TP40006556-CH27-SW1)：必須のアセットの大きさなど


### [iTunes Connect デベロッパガイド](https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide_Jpn/Chapters/About.html)
作ったiOSアプリをApple Storeで公開するときに、iTune Connectで様々な設定を行います。
登録の仕方、注意点等細かくまとめてあります。

- [**はじめに**](https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide_Jpn/Chapters/About.html)：提出前や提出後など、それぞれの段階に紐づく章を紹介
- [**第1段階：iTunes Connectでのアプリケーションの指定**](https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide_Jpn/Chapters/FirstSteps.html#//apple_ref/doc/uid/TP40014483-CH19-SW1)：アプリ登録時の注意点を紹介
    - 効果的な説明文の書き方やアプリ名の決定
    - 画像の選択
    - レーティングの設定
    - アプリケーション代金の支払い設定
- [**アプリケーションの登録**](https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide_Jpn/Chapters/SubmittingTheApp.html#//apple_ref/doc/uid/TP40014483-CH33-SW1)：アプリのバイナリをアップロードする手順
- [**複数ストアでのストアの表示（任意）**](https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide_Jpn/Chapters/DisplayInMoreLanguages.html#//apple_ref/doc/uid/TP40014483-CH28-SW1)：ローカライズについて

### [App Store マーケティングガイドライン](https://developer.apple.com/app-store/marketing/guidelines/jp/)
マーケティングをする上で、必要になる情報がまとまっています。

- [**「App Store からダウンロード」バッジ**](https://developer.apple.com/app-store/marketing/guidelines/jp/#downloadOnAppstore)
  - [Link Maker](https://linkmaker.itunes.apple.com/jp)：バッジを作成できるツール
- [**Apple 製品画像**](https://developer.apple.com/app-store/marketing/guidelines/jp/#images)：Apple製品の画像が欲しい場合はこちらから入手できます！

### その他
他にもたくさんの資料をAppleは提供してくれています。
[Apple Developer Library](https://developer.apple.com/library/ios/navigation/)で探すと答えが見つかるかもしれません。

## Swift
- [The Swift Programming Language (Swift 2.2)](https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/TheBasics.html#//apple_ref/doc/uid/TP40014097-CH5-ID309)：Apple公式の言語ガイド in English
- [The Swift Programming Language - The Basics をまとめる](http://qiita.com/kiyotaman/items/d539070063ed4260f948)：上記のまとめ in Japanese
- [Developing iOS 8 Apps with Swift](https://itunes.apple.com/us/course/developing-ios-8-apps-swift/id961180099)：Stanford大学によるSwiftでの開発の講義（iOS8）
- [Swiftコーディング規約@Wantedly](http://qiita.com/susieyy/items/f71435cc962e70d81b37)：この度参考にさせていただいたコーディング規約
- [Start Developing iOS Apps (Swift)](https://developer.apple.com/library/ios/referencelibrary/GettingStarted/DevelopiOSAppsSwift/)：Apple公式のチュートリアル

## Xcodeの使い方
- [【図解】Xcode 4.5の使い方リファレンス超まとめ](http://www.atmarkit.co.jp/ait/articles/1212/05/news022.html)
    - アシスタントエディタ：エディタエリアが２分割される
        - View → Assistant Editor

## 開発時のTips
- [アプリの動作確認をする時に心がけていること](http://techlife.cookpad.com/entry/2016/02/26/093000)

## さいごに
今回はじめてiOSアプリを開発したので、どんな情報がどこにあるのか迷子になることも多くありました。
これをご覧になった方の開発が少しでも捗るとよいなと思います。