ISBN 9784777522101

Pythonista3 入門

Pythonista3 入門
著者
大西 武
出版社
工学社
刊行
2022-08

概要

iPhone・iPad だけで Python を動かし、ゲームやアプリを作る

想定読者

パソコンなしで Python プログラミングを始めたい人、および iOS 端末でも手軽にコーディングしたいエンジニア

こんな人には向いていない

  • Python の基礎構文をすでに習得し、本格的なサーバーサイド開発やデータ分析を目指している人には対象が限定的すぎる
  • Android 端末ユーザーや Windows/Mac ですでに開発環境を整えている人には導入メリットが薄い
  • Pythonista3 の高度な機能(StaSh・外部ライブラリ管理・shortcuts.app 連携)を深掘りしたい上級者には扱う範囲が浅い

読了後にできるようになること

  • Pythonista3 のセットアップと基本的な py ファイルの作成・実行手順
  • 5〜29 行のシンプルなコードで UI ウィジェット・スプライト・サウンドを扱う方法
  • タッチイベントとゲーム状態管理を組み合わせたミニゲームの実装パターン
  • 地図表示・写真保存・URL 起動など iOS ネイティブ機能への Python からのアクセス方法
  • ファイルの読み書きを用いたデータ永続化の基本
  • カスタムビュー・画面遷移・効果音を組み合わせたアプリ完成までの流れ

本書のキー概念(章解説)

  • 第 1 章 Python と Pythonista3 について — アプリの購入・起動からファイル実行まで、環境構築のゼロ地点
  • 第 2 章 10行以下のミニサンプル — URL 起動・地図・写真保存・読み上げ機能で iOS 連携の感触をつかむ入口
  • 第 3 章 ゲーム状態の切り替え — テンプレート作成からゲーム状態遷移の設計方法を学ぶ
  • 第 4 章 タッチゲーム — スプライト表示とタッチ操作の組み合わせで最初のインタラクティブゲームを完成させる
  • 第 5 章 鬼ごっこゲーム — 当たり判定ロジックの実装。衝突検出アルゴリズムの入門として有効
  • 第 6 章 お絵描きツール — 線の描画処理を通じてタッチ座標の連続取得パターンを習得
  • 第 7 章 簡易Webブラウザ — UI レイアウト設計の実践例。UI コンポーネントの組み合わせ方を俯瞰できる章
  • 第 8 章 ピアノアプリ — サウンド再生 API の使い方を学ぶ。既存アセットで音を鳴らすだけなので準備不要
  • 第 9 章 英語クイズ — ユーザー入力の受け取りと正誤判定フローの典型実装
  • 第 10 章 カスタムUI — カスタムビューとタッチイベントを組み合わせた応用例
  • 第 11 章 割り算クイズ — 効果音つきフィードバックの実装パターンを含む演習形式の章
  • 第 12 章 日付け合わせゲーム — 画面遷移と正誤判定を組み合わせた複合アプリの例
  • 第 13 章 ファイルの読み書き — テキストデータの永続化手順。小規模なデータ管理機能を持つアプリへの足がかり
  • 第 14 章 色当てゲーム — スライダーと背景色変化の連動。UI コントロール操作の応用

ハイライト

  • パソコンをもっておらず、iPhone や iPad で Python をプログラミングしたい人、あるいはパソコンはあるけど iPhone や iPad でもプログラミングしたい人のためのアプリです。(本書の対象読者を一文で最も明確に示している箇所。利用シナリオが具体的で購買判断に直結する)
  • 本書では iPhoneでも触りやすいように5〜29行のシンプルなコードを中心に進め、デフォルトのアセットを使っており、特別な準備は要りません。(コード規模と準備コストの低さを示す記述。入門者が抱く『環境構築が大変そう』という懸念を払拭する)

外部からの言及

  • Pythonista3 を実際に使った Qiita 記事は 2017〜2019 年に集中しており、『パソコンなしで Python が動かせる』点への驚きと、UI 構築・ゲーム制作への活用が多く語られている。一方で、日本語の解説資料が少ないという声も当時複数見られた(qiita)
  • 『iPad Pro でのサブ機開発環境として Pythonista3 が有効』という位置づけで紹介する記事があり、iCloud 同期・ホーム画面への追加・スプリットビューでの利用が具体的に評価されている。ただし本格的なプロダクション開発は PC 優位との正直な評価も添えられている(qiita)

編集メモ

ISBN 直接言及の Qiita 記事は確認できず、Qiita 全体での Pythonista3 タグ記事は 149 件存在するものの本書を参照している記事はゼロ件。楽天ランキング情報も未確認。iOS 限定という用途の特殊性から、Python 学習者全体への訴求力は限定的と判断し supplementary とした

読む前に押さえておきたいこと

  • Python の基本構文(変数・条件分岐・ループ・関数)を一度は触ったことがある程度で十分
  • iOS 端末(iPhone または iPad)と App Store アカウント、および Pythonista3(有料)の購入

学習のコツ

  • 第2章のミニサンプルは独立して動作するので、まず数行のコードを実機で動かして感触をつかんでから後続の章に進むとモチベーションを保ちやすい
  • ゲーム系の章(タッチゲーム・鬼ごっこ・色当て)はコード量が少ないが、ゲームループとイベントハンドリングの構造が共通しているため、1つ完成させれば他章のコードの読み方がわかる
  • ファイル読み書き章はゲーム系と独立した内容なので、データ永続化に興味がある場合は先に読んでも構わない
  • サンプルコードのアセット(キャラ画像・サウンド)はアプリ付属のものを使うため、最初から自前素材を用意しようとせず既存アセットで動かすことを優先する
出版社による内容紹介

「Pythonista3」はパソコン上ではなくiPhoneやiPad上で動作する「Python」をプログラミングしたり実行したりできる有料の「IDE」統合開発環境)。  「パソコンをもっておらず、「iPhone」や「iPad」で「Python」をプログラミングしたい人」、あるいは「パソコンはあるけど「iPhone」や「iPad」でもプログラミングしたい人」のためのアプリです。 *  本書は「Pythonista3」の入門書で、iPhoneでも触りやすいように5〜29行のシンプルなコードを中心に進めていきます。  また、「Pythonista3」には、キャラクター画像やサウンドなどのアセットもたくさん用意されています。  本書でもデフォルトのアセットを使っており、特別な準備は要りません。  もちろん、自分で用意したアセットも使えるので、自前で用意したキャラクター画像も読み込むサンプルコードも用意してあります。 ■「Python」と「Pythonista」について ・「Python」について ・「Pythonista3」について ・「Pythonista3」の使い方と「pyファイルの実行」 ■「10行以下」のミニサンプル ・「URL一覧」からホームページを開く ・「地図の表示」 ・「写真」の保存 ・エディタの「読み上げ」 ■「ゲーム状態」の切り替え ・「テンプレート」の作成 ・「タイトル」の表示 ・「画面タッチ」で「ゲーム状態」を変更 ■タッチゲーム ・「テンプレート」の作成 ・「スプライト」の表示 ・「タッチゲーム」の完成 ■鬼ごっこゲーム ・「テンプレート」の作成 ・「スプライト」の表示 ・キャラ同士の「当たり判定」 ■お絵描きツール ・「テンプレート」の作成 ・「1本の線」を描く ・「線画」でお絵描き ■簡易Webブラウザ ・「Webブラウザ」のUIをデザイン ・「簡易Web」ブラウザの完成 ■ピアノアプリ ・「ピアノのUI」をデザイン ・「ピアノの音」を鳴らす ■英語クイズ ・「英語クイズ」のUIのデザイン ・「日本語の問題」を出題 ・「英語クイズ」の正解と不正解 ■カスタムUI ・「カスタムビュー」のUI ・「カスタムUI」のタッチで「クマ出現」 ■割り算クイズ ・「割り算クイズ」のUI ・「割り算問題」の出題 ・「正誤判定」と「効果音」 ■日付け合わせゲーム ・「日付け合わせゲーム」のUI ・画面遷移 ・「正誤判定」と「効果音」 ■ファイルの読み書き ・「テキスト」をリスト項目に追加 ・データの「書き出し」 ・データの「読み込み」 ■色当てゲーム ・「色当てゲームのUI」 ・「ボタン」の背景色 ・「スライダー」で背景色

この本がどの学習段階で役立つかは、 関連する ロードマップ から確認できます。

質問に答えるだけで、
あなたに合う専門書が見つかる

IT・デザイン・士業・医療・経理・教育・研究 ほか、あらゆる分野の専門書と 「読む順序」(学習ロードマップ)を収録。何を選べばいいか分からなくても、 いくつかの質問に答えるだけでたどり着けます。