ブラウザでコーディング&実行できるPaiza.IO
Paizaのスキルチェックの話を書きましたが、その際に便利なのがPaiza.IOです。これを使うとブラウザでサクッとコードを書いた上に実行できます。Paizaのスキルチェック以外にも使えるので簡単にご紹介します。
ブラウザでサクッと書いてサクッと実行
お題のプログラムを試すのにはぴったりです。お題の方にも当然コードを各画面があり、実行もできます。ただ、あらかじめ決まっている入力例しか使えません。ランクC以上ではお決まりの入力例以外にも怪しいものは試しておかないとエラーになったりするので、好きに試せる環境は必須です。
もちろん、パソコン上に環境を用意したり、なんならDockerで用意するなりするのも一つの方法です。でもまあ、本気で開発するつもりならともかく、ちょっと試したい時にいちいち環境を用意するのも面倒です。
Paiza.IOを使えばブラウザだけで色々な言語が使えますし、実行することもできます。標準入出力だけですけど。使える言語は24言語だそうです。
対応言語はJava、C、C++、C#、Ruby、PHP、Python、Perl、JavaScriptと言ったメジャーな言語からGo言語やScala、Haskellなど24言語以上に対応しています。
Paiza.IOの対応言語より
編集、実行できるだけでなく、ブログに貼り付けることもできます。
Pythonだけではなくて、Rubyも使えます。
なんならコンパイルが必要なRustも使えます。
同様なサービスはいくつかありますが、ちょっと動かしてみるには良いかと思います。
スキルチェックの事前確認に使うのはもちろん、プログラミングの勉強をしている際にちょっと動かして確認したいというときにも便利です。
まあ、Docker等でサクッと開発環境を用意できる時代にはなったので、開発環境構築の敷居も低くはなりました。とは言え、Dockerにしろ直接インストールするにしろ、ローカルリソースを消費します。それなしで簡単に試したいときには必要十分かと思います。
注意点
1点注意点があります。左側に広告が表示されていますが、一定周期で自動更新されます。そのタイミングでIMEで日本語入力している途中だと、消えてしまいます。広告はエリアの右上の×印で消すことができます。必ず消しておかないと、ストレスが溜まります。日本語入力しなければ大きな影響はないと思いますが、編集エリアが広くなるので消した方が良いかと思います。
そのほか、いくつか使っていて気づいた点を挙げておきます。
- 言語を切り替えると編集内容は消えるので、先に言語選択が必要
- タイトルは消えないので先に書いてもOK
- Gistと同期できる
- 同期設定以前のものは同期してくれない?
- Gist側のDescriptionとPaiza.IOのタイトルは同期してくれない
- GistからインポートしたPython3コードがPython2扱いされる(Python3固有の書き方すれば平気?)
- 出力はテキスト、HTML、JSONを選択できる
- 実行すれば自動保存(明示的に保存だけすることも可能)
- 各言語のバージョンは選択できない。特定のバージョンで試したいということはできないし、Paiza.IO側で最新バージョンに対応するまでのラグがある(かもしれない)
- PythonについてはVer2系とVer3系を選択できる
- 実行時間、メモリ使用量に制限がある(当たり前)
- 現在全ての言語で2秒、512MBの模様
10個できる言語のバージョンや各種制限については、ヘルプの「各言語のバージョン、環境情報」に記載されています。ただ、並び順がよくわからないもので探しにくいのですが(サポート順?少なくともアルファベット順ではない)。
主な言語(主観)を抜粋しておきます。が、利用の際には最新情報を確認して利用してください。実際のところ、少し古い様ですね。
例えばPython3の安定版最新は3.9.7です。一応、3.8系の最後のバージョンが入っています。Rustは1.54.0です。Rubyは2021年7月の最新版が入っているので、言語によって温度差がある様です。JavaScriptのバージョンとしてNode.js noバージョンを記載しているのは謎です。しかもLTS最新版ではないですが、7月末のバージョンなのでそこまで古くはないですね。概ね7月下旬の最新版が入っていそうな感じです。
Java | openjdk version “16.0.2" 2021-07-20 |
PHP | PHP 8.0.9 (cli) (built: Jul 30 2021 13:03:39) ( NTS ) |
Ruby | ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x86_64-linux] |
Python2 | Python 2.7.18 |
Perl | This is perl 5, version 30, subversion 0 (v5.30.0) built for x86_64-linux-gnu-thread-multi |
C++ | C17++ / clang version 10.0.0-4ubuntu1 |
C# | Mono JIT compiler version 6.8.0.105 (Debian 6.8.0.105+dfsg-2 Wed Feb 26 23:23:50 UTC 2020) |
JavaScript | Node.js v14.17.4 |
Bash | GNU bash, version 5.0.17(1)-release (x86_64-pc-linux-gnu) |
Python3 | Python 3.8.10 |
Swift | Swift version 5.4.2 (swift-5.4.2-RELEASE) |
Kotlin | Kotlin version 1.5.20-release-287 (JRE 16.0.2+7-67) |
Rust | rustc 1.47.0 |
TypeScript | Version 4.3.5 |
MySQL | mysql Ver 8.0.26-0ubuntu0.20.04.2 for Linux on x86_64 ((Ubuntu)) |
ディスカッション
コメント一覧
まだ、コメントがありません