本記事では「Pythonで始めるiOSプログラミング iOS+Pythonで数値処理からGUI、ゲーム、iOS機能拡張まで」という本を読んで学んだことをアウトプットします。
この本は、iOSでpythonを使用することができる「Pythonista3」というアプリを用いて、iOS上でプログラミングをするための解説書です。
私自身Pythonista3は初めてpythonを学習する時に環境構築とかよくわからなかったので、このアプリを用いて勉強をしていました。
ただ、どんなことができるのかは全然把握できていなかったのですが、この本を読んでPythonista3に秘められたポテンシャルを垣間見ることができました。
初心者の学習から、iOSの自在なカスタマイズが可能とのことで、
この本とPythonista3のセットは、これからpythonを始めてみたいけどどうやったらわからないという人にとってかなり便利なセットだなと感じました。
iPadがPC並みになってメイン機になった時には是非ともpythonを駆使して遊んでみたいなと感じました。
「Pythonで始めるiOSプログラミング」を読んだ理由・きっかけ
Pythonista3というiPadやiPhoneでpythonが使用できるようになるiOS用アプリをpythonを初めて勉強する時に購入しました。
このアプリ、pythonの基礎を勉強する時にとっても役に立ったのですが、どんな使い道があるのかは全然理解できませんでした。
たまたま、Pythonista3についての解説本ということで、「せっかくアプリ持ってるし何かできることが増えないかな」と思って読んでみました。
「Pythonで始めるiOSプログラミング」で解説されていること
解説されている内容
解説されている内容としては下記の通りです。
1. Pythonista3開発を始めよう
Pythonista3を準備しよう
Pythonista3の使い方をマスターしよう2. 標準モジュールをマスターしよう
numpyを使おう
sympyを使おう
matplotlibを使おう3. GUIを使おう
UI利用の基本をマスター
基本的なUIをマスターしよう
複雑なUI部品を利用しよう
スクリプトによるUI生成
サンプルアプリを作ろう4. シーンとノードで2Dゲーム!
シーンとノードの基本
スプライト以外のNode
タッチ操作・アニメーション・スプライト管理
スプライトをさらに使いこなす
サンプルゲームを作ろう5. Pythonista3をさらに使いこなそう!
ダイアログの利用
photosとイメージの利用
連絡先の利用
その他のiOS機能
iOSの機能を拡張するプログラムAppendix Python文法超入門
Pythonで始めるiOSプログラミング iOS+Pythonで数値処理からGUI、ゲーム、iOS機能拡張まで、目次
pythonとしての基礎的な解説から、Pythonista3ならではのGUIの作り方や、ゲームの作り方、iOSの機能を自分好みにカスタマイズする片鱗まで見せてくれるという充実した内容でした。
そもそもPythonista3って何?
「Pythonista3」とは、iOSでPythonが使用できる超便利アプリです。
価格は約1200円と個人的には割とお手頃価格かなと感じます。
アプリを入れるだけでiPadやiPhoneでpythonを使うことができます。
何よりも便利なのが、初心者がもっともつまづきやすい高い壁である環境構築を一切しなくてもすぐに使用できる点ですね。
これから、pythonを始めてみたいけど、どうやって始める準備を整えるかわからないし、続けられるかわからないという人におすすめです。
環境構築でつまづいて時間をロスするよりも、1200円払って、すぐにpythonを触ってみて、続きそうなら環境構築をしてみるほうがコストが低いと思います。
もしPythonista3を購入してやってみて続かなかった時は、1200円はpythonとの手切れ金だと思えば…
欠点としては、Pythonの有名どころのライブラリ(matplotlibとか)はある程度入っているけれど、全てに対応している訳ではないそうです。
また、iPadはPCライクに使えるとは言われながらも、やはりiPadなので、データ解析などがっつりやりたい時は、PCに移行することは必要だと思いました。
自分が特に参考になった内容
iPadでGUIを簡単に作ることができる
GUIというのは、Graphical User Interface(グラフィカルインターフェース)のことで、すごくざっくばらんに言うと、マウスや指でボタンをクリックしたりすることで操作するものですね。
電卓アプリとか代表的だと思います。
基本的にpythonを使って解析とかしたりするのであれば、ほぼコードをいじって操作するのでそこまで必須なものではないと思っています。
しかし、プログラミングを知らない人などの他の人にも使ってもらうようなもの、一部の機能のみを繰り返し使うようなものを使いやすくするなんて時にはGUIを使うと便利になります。
PCでは「Tkinter」などのライブラリを使用することで、GUIを作るのですが、コードでボタン配置などを設定するのでなかなか大変なこともあります。
一方で、Pythonista3はデフォルトの機能で直感的かつ簡単にGUIを作ることができるという機能があり、本書ではこのGUIの作成方法や機能の付け方について重点的に解説されていて、かなり勉強になりました。
実際に作ってみたのはこんな感じです。
具体的には
- ON/OFFスイッチ
- スライダーを使った調節機能
- 電卓をの作成
- リストの作成
などなど、気がつけばiPhoneやiPadを使用していたら何気なく触っている機能をほとんど自分で作ることができます。
iPadやiPhoneは基本的にタッチ操作で完結することがほとんどなので、iOSで何かをするとなるとGUIを自由にいじることができる能力はかなり役に立ちそうです。
PCでもpythonistaのように直感的にGUIを作ることができないかと思って調べてみたら、下記の記事で解説されている方がいらっしゃいました。
Python + gtk + gladeでGUIアプリケーションの作成 その1、Symfoware
解析補助ツールを仕事で作る機会があるので、なんとか習得して使いやすくカスタマイズしてみようと思います。
やろうと思えば、iOSの機能を拡張することができる
せっかくpythonなので、実際に何かに使ってみたいと思うところですね。
Pythonista3のすごいところが、実際にiOSでプログラムを実行できるところです。
iOSにはショートカットというマクロを組む機能が付いているのですが、発想次第でこれよりも便利な機能を作ることもできてしまうそうです。
素人なので、ここがすごいと詳しく解説することができませんが、詳しそうな人曰く、
強力すぎてちょっと引く
iOS上で動作する革命的ものづくり環境「Pythonista 3」の魅力をとくと語る、ひとりぶろぐ
と言うぐらいなんでもできてしまうそうです。
実際に書籍の方では、
- QRコード作成
- クリップボード作成
- リマインダーを管理
などを自作する機能が解説されています。
さらにすごいのが、作った機能をいちいちpythonistaを起動しなくても、コマンドから呼び出したり、
ウィジェットに置いておくことですぐにアクセスすることもできるそうです。
論文のFigをウィジェットに表示させて遊んでみたりしてます。
「Pythonで始めるiOSプログラミング」から学べたまとめ
以上、「Pythonで始めるiOSプログラミング iOS+Pythonで数値処理からGUI、ゲーム、iOS機能拡張まで」を読んで学んだことのアウトプットでした。
PythonでiOS向けアプリを作成する本かな?と思って手を出してみたら、iOS上でpythonをがっつり使用するための解説本でとても面白かったです。
私自身はPythonista3は一番はじめにpythonを勉強するために導入したもので、正直何ができるかよくわからずに使用していました。
この本を読んで、Pythonista3が秘めているポテンシャルを知ることができて非常に良い本に巡り会えたなと感じました。
とは言っても、自分のpythonの使用方法としては「データ解析のツール作成」ということで、あまりiOSを使用することがないので、PCをメインに使用していこうと思います。
iPadが今後のアップデートでよりPCライクになってメインで使用することに耐えうるぐらいになった時に、pythonistaを使って自分好みの機能をふんだんに盛り込んだら楽しそうだなというワクワクを実現できるように、python力をつけていこうと思います。
コメント