書籍執筆:「はじめてのiOSアプリ開発」という本を書きました

2014年6月に発表された新言語「Swift」を使ってiOSアプリ開発をするための入門書である「はじめてのiOSアプリ開発」という本を書きました。

3/28の発売ですがAmazonでは予約が開始されています。

6/22追記:
執筆当時とSwiftを取り巻く環境が変っており、本書の内容と現在の環境との差分を以下で解説しています。
https://github.com/hasegawa-tomoki/GourmetSearch

また、Typoなどの修正については秀和システムのサポートページをご覧ください。
http://www.shuwasystem.co.jp/support/7980html/4365.html

TECHNICAL MASTER はじめてのiOSアプリ開発 Swift対応版 (TECHNICAL MASTER 83)

はじめてのiOSアプリ開発

単行本: 567ページ
出版社: 秀和システム
発売日: 2015/3/28
ISBN: 4798043656
価格: 3,240円(税込)

執筆のきっかけ

長谷川がiOSアプリ開発を始めたのはiOS 3の頃だったので、出版されている書籍、Webサイトの情報はそのほぼ全てがほぼ最新版の情報であり、参考になる情報でした。

しかし、ここ1〜2年はiOSやXcodeのバージョンが上がり、Webの情報はその対象となるiOSやXcodeのバージョンを確認しないと使いにくく、また、書籍にはiOSの最新バージョンの新機能を紹介するものが増えました。

長谷川の所属するデジタルサーカス株式会社では、インターン参加者などがiOS開発入門するのに加えて、WebエンジニアがiOS開発入門する、であるとか、AndroidエンジニアがiOS開発入門するといった「iOS開発入門者」が毎年一定数発生しています。

彼らはWebサイトや、書籍を使って学習しているのですが、1冊で環境構築から言語の仕様理解、UIKitの概要、アプリの基本的な開発方法から各種SNS・LINEアプリ連携の様な「いまどき」のアプリが対応したい細かな機能までカバーした書籍があったら、というモチベーションから本書の企画をしました。

もくじ

Chapter 01 iOSアプリ開発の概要

  • 01-01 iOSとデバイスの関係を理解する [iOSとデバイス]
  • 01-02 アプリ開発に必要なものを知る [開発に必要なもの]
  • 01-03 開発言語の違いを理解する [SwiftとObjective-C]
  • 01-04 アプリ配布のための準備をする [iOSデベロッパプログラム]

Chapter 02 アプリ開発の準備

  • 02-01 開発環境を準備する [Xcodeのインストールと基本的な使い方]
  • 02-02 Mac上でiOSを動かしてみる [iOSシミュレータの使い方]

Chapter 03 ブラウザアプリを作る

  • 03-01 アプリの骨組みを作る [プロジェクトと画面の作成]
  • 03-02 アプリ開発の基本を知る [アプリ基本機能の実装]
  • 03-03 高度なブラウザ機能を実装する [アプリ機能の拡張]

Chapter 04 プログラミング言語Swift

  • 04-01 Swiftの基本を知る [Swiftの概要]
  • 04-02 変数とデータ型、演算を理解する [変数と型・演算子]
  • 04-03 Swift特有の言語仕様を知る [Optional型]
  • 04-04 データをまとめて扱う構造を知る [配列とディクショナリ]
  • 04-05 プログラムの制御構造を知る [制御構造]
  • 04-06 処理をまとめる構造を知る [関数とクロージャ]
  • 04-07 関数や変数をまとめる構造を知る [クラス]
  • 04-08 その他のユーザ定義型を知る [構造体と列挙型]

Chapter 05 基本的なビューの使い方

  • 05-01 情報を表示するための部品を知る [表示部品]
  • 05-02 データや情報を入力するための部品を知る [入力部品]
  • 05-03 処理状態を伝えるための部品を知る [状態表示部品]
  • 05-04 情報の表示と操作のための部品を知る [ダイアログ]

Chapter 06 グルメ情報アプリを作る

  • 06-01 アプリのプロジェクトを作成する [アプリの概要・ライブラリ組込]
  • 06-02 UITableViewの基礎を知る [UITableViewの基礎]
  • 06-03 StoryboardでTable Viewを設定する [StoryboardでのTable Viewの設定]
  • 06-04 APIからデータを取得する [API呼び出しとデータ整形]
  • 06-05 取得したデータをセルに表示する [セルの内容表示]
  • 06-06 続きの自動取得と更新機能を実装する [Infinite ScrollとP2R]
  • 06-07 画面遷移を実装する [画面遷移]

Chapter 07 グルメ情報アプリを拡張する(1)

  • 07-01 店舗の詳細情報表示画面を実装する [スクロールする詳細画面]
  • 07-02 お気に入り機能を実装する [アプリのデータ保存]
  • 07-03 画面を切り替える機能を実装する [タブバー]
  • 07-04 セルの削除や並べ替えの機能を実装する [UITableViewの編集]
  • 07-05 現在地を取得して地図を表示する [Core Locationフレームワーク]

Chapter 08 グルメ情報アプリを拡張する(2)

  • 08-01 写真を撮影して保存する [写真の撮影と保存]
  • 08-02 写真の一覧表示画面を実装する [写真の一覧表示]
  • 08-03 写真ビューアを作成する [写真ビューアの実装]
  • 08-04 電話やSNSアプリと連携する [他アプリとの連携]
  • 08-05 アプリ公開のために必要な機能を実装する [ライセンス表示・起動画面・アイコン]
  • 08-06 App Storeにアプリを公開する [アプリの公開]

まとめ

本を書くときは毎回そうなのですが、今回もやはり最後は「もっと書きたい!」と思いながら、内容をそぎ落とすことになりました。結果、必要なエッセンスが凝縮された1冊になっています。
iOS開発入門者の最初の1冊として、そして、上級者になるまでのリファレンスとしてお使い戴けたら嬉しく思います。

photo credit: Isaiah 53 via photopin (license)