iPadは開発もいける、ただし物理キーボード必須
iPadを開発環境として使う――そんなこと可能なのかと思うかもしれないが、案外できるものだ。物理キーボードを使えば、iPadを使った開発はそれほど難しくもなかったりする。iPadを使った開発パターンはいくつかあるが、大まかに次の3点に分けられるように思う。
開発アプリを用いる。目的とする開発に利用できる開発環境やツールがアプリとして販売または提供されており、アプリを使うだけで作業が完結するパターン。
クラウドサービスやWebアプリケーションの統合開発環境を用いるパターン。Webブラウザで開発するタイプの統合開発環境などがあり、こうしたサービスで済むことがある。オープンソース・ソフトウェアで提供されている環境などもあって、自分で開発用のWebサーバを運用して利用する方法もある。Safariでは都合が悪いこともあり、Web統合開発環境用にWebブラウザアプリをインストールするといったこともする。
ターミナルアプリからサーバにログインして作業するパターン。SSH経由でサーバにログインしてVimで開発を行うといった使い方など。
開発パターンを完全に分けられることもあれば、上記のパターンを組み合わせて利用することもある。なお、iPadを開発環境として使う場合、模索段階でも有償アプリにはある程度投資することをおすすめしたい。これは試す分も含めてだ。
開発環境の要望はケース・バイ・ケースなので、汎用ケースを示すのが難しい。Visual Studio Codeが使えれば汎用ケースとして取り上げることもできそうだが、今のところVisual Studio CodeはiPadには対応していない。将来対応するかもしれないが、現時点では、他のアプリや方法を探すしかない。
アプリには要求ベースで当たり外れが存在する。高価な有償アプリがドンピシャなこともあれば、無償のアプリがドンピシャなことだってある。使ってみて自分に向いたものを探すしかなく、気になるなら思い切って購入して試すことをお薦めしたい。仕事で使う場合はなおのことだ。
汎用的に操作できるmacOSと異なり、iPadOSは制限が多い。ちょっとした不便が積み重なるとストレスになる。ストレスがなく、かつ、ニーズに合うアプリを使えるのと使えないのとでは、疲れ方が違う。
何はともあれ、ターミナルはベースライン
開発には、アプリを利用、クラウド/Webアプリを利用、サーバにログインといった方法があるが、本稿ではターミナルアプリからSSH経由でサーバにログインして作業するための最低限の方法を取り上げておきたい。
Webアプリケーション開発やシステム運用などで、AWSやMicrosoft Azure、Google Cloud Platformといったクラウドプラットフォームを使うケースが増えている。こうしたクラウドプラットフォームでコンテナを作成し、そこでアプリケーションやサービスの開発を行う。さらに、SSHでログインしたり、SSH経由で接続したりして開発を行うといったスタイルを取ることが多い。つまり、iPadでSSHを使ったログインができるようにしておくと、なにかとつぶしが利くのだ。
これはシステム開発に限らず運用・保守などにも利用できる。どこにいてもVPNで接続してSSHでログインできれば管理できる、というケースも多い。ターミナルアプリを使うとそうしたことができる。外出中にiPadからリモートでログインして保守しなければならない場合、よくない事態に陥っているものだ。いざという時のためにセットアップしておくのは悪くない。
ターミナルアプリあれこれ
iPadで使えるターミナルアプリはいくつもあるが、SSHに対応しているものが多い。そして提供されている機能も価格や支払い方法もさまざまだ。最近は日本語対応に問題がないことも多く、これまで以上にアプリの選択は難しいかもしれない。
以下は本稿執筆時点より1年以上前の記事だが、今でも十分役に立つと思う。iPhone向けの記事だがiPadにも適用できる。
上記の記事では、以下のターミナルアプリを取り上げている。
- Termius - SSH client
- Blink Shell: Mosh & SSH Client
- iTerminal - SSH Telnet Client
- Shelly - SSH Client App Storessa
- WebSSH Pro
ターミナルアプリは合わないと最悪なので、最終的には自分で試してみてほしいのだが、ここでは「Termius」を使う方法を紹介しよう。Termiusは多機能ターミナルアプリで、無償版と有償版が用意されている。無償版では利用できない機能もあるが、それでもほかのターミナルアプリと比較して多くの機能が利用できる。まずは無償版のまま試し、気に入って、かつ、有償版の機能も使う必要があるなら購入するというステップを踏むのがよいと思う。