Webブラウザ版VSCode、WebAssembly版PythonによるWeb上でのPythonコードの実行やデバッグが可能に

今回は「Webブラウザ版VSCode、WebAssembly版PythonによるWeb上でのPythonコードの実行やデバッグが可能に」についてご紹介します。

関連ワード (実行環境、発表、編集等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


マイクロソフトは、WebAssembly版Pythonを用いることにより、Webブラウザ版のVisual Studio Code(以下VSCode)上でPythonコードの実行やデバッグを可能にする実験的な拡張機能「Python for the Web」のプレビュー公開を発表しました。

下記は実際にWebブラウザ版VSCodeに拡張機能「Python for the Web」を組み込み、Pythonコードを実行したときの画面です。

下部の「ターミナル」のペインで、実行結果の「6」が表示されているのが分かると思います。これはこのWebブラウザ上でPythonが実行された結果です。

fig

Webブラウザ上でPython実行環境が自動的に用意される

WindowsやMac、Linuxで利用できるデスクトップ版のVisual Studio Codeでも、エディタ画面からコードを実行し、ターミナル画面でその結果を参照することが可能です。

ただしこの場合、基本的にはプログラミング言語のランタイムをユーザーが事前にインストールし、OS上でコードが実行可能な環境にしておく必要があります。

今回公開されたWeb版VSCodeの拡張機能であるPython for the Webでは、この拡張機能が自動的にWebAssembly版PythonをWebブラウザ上にロードし、Web版VSCodeから実行可能にしてくれます。

つまりユーザーは事前にOSやサーバなどのリモート環境などでコードの実行環境を用意する必要もありません。

下記画面のようにWeb版VSCodeの拡張機能の画面から拡張機能であるPython for the Webを選んでインストールするだけで、Pythonの実行環境がWeb版VSCode上で自動的に用意されるのです。

fig

実際に試すには、下記のURLにアクセスしてWeb版VSCodeのインサイダーズ版からGitHubのリポジトリにアクセスし、拡張機能のPython for the Webをインストールします。{username}にはGitHubのユーザー名を、{repo}にはリポジトリ名を入れます。

「https://insiders.vscode.dev/github/{username}/{repo}?vscode-coi=」

Webブラウザ上でコードの編集、実行、デバッグの可能性が広がる

WebAssembly版Pythonとして使われているのは、Pythonのリファレンス実装であるCPythonのWebAssembly版ビルドの最新版です。

まだWebAssembly版Pythonには制限があり、パッケージ管理のPIPはサポートされておらず、ソケットやスレッド、非同期機能、ネイティブなPythonモジュールなどもサポートされていません。

拡張機能であるPython for Web自体もまだプレビュー版ですので、実用になるまでにはまだしばらく時間がかかるでしょう。

しかし利用しているOSに関係なくWebブラウザがあれば、コードエディタを中心としたVSCodeの統合開発環境だけでなく、言語のランタイムとデバッガまで簡単に用意できてしまう今回のWebブラウザ版VSCodeと拡張機能、そしてWebAssembly版Pythonの組み合わせには、大きな可能性を感じます。

WebAssembly版のランタイムはPythonだけでなく、先日Rubyの正式版がリリースされたばかりです。それ以外でもWebAssembly版の開発が進んでいるプログラミング言語は少なくないでしょう。

参考:WebAssembly版Rubyが正式に登場、YJITが実用段階に。「Ruby 3.2.0」正式リリース

今後Python以外にもWebブラウザで実行可能なプログラミング言語が増えてくるとすれば、今回と同様の仕組みによってWebブラウザの上で簡単にさまざまなプログラミング言語の編集、実行、デバッグなどの統合環境が実現していくのかもしれません。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
BigQueryがDocument AIを統合。請求書など画像データの内容をSQLで検索可能に、AIが画像から項目や数値を自動抽出
Google
2024-01-10 08:13
ドコモ、キャリアメールに“公式マーク”表示 フィッシング詐欺を抑止 佐川急便など13社が導入
企業・業界動向
2021-05-26 17:57
NEC X、ドローン活用した捜索・救助支援のスタートアップを新たに設立
IT関連
2023-01-20 12:25
Facebook、広告好調で純利益は94%増の95億ドルに
企業・業界動向
2021-04-30 00:04
体験型ストアのb8taが埼玉県越谷市に新店舗を4月27日オープン、家電お試しサービスのレンティオ取扱製品が体験可能に
IT関連
2022-03-15 13:41
Facebookの「MySQL 8.0」への移行作業、エンジニアが詳細をブログに
IT関連
2021-07-29 02:49
エンジニアのキャリアデザインについて共に対応できることは?–SES分科会
IT関連
2022-12-02 01:28
デルのサーバー事業にみる「ITインフラ需要の新たな動き」とは
IT関連
2023-02-04 21:39
IBM、デル、HPEとハイブリッド/マルチクラウド–主要クラウド動向2021年版(2)
IT関連
2021-04-02 20:37
メルカリのスマホ決済サービス「メルペイ」がマイナンバーカードのJPKIによるリアルタイムの本人確認に対応
セキュリティ
2021-03-05 16:10
「Nutanix Clusters on Azure」正式リリース。これでAWSとAzureとオンプレミスのマルチクラウド/ハイブリッドクラウド対応に
Microsoft Azure
2022-10-18 12:20
Paramount+が月額約550円の廉価サブスクを間もなく開始、オンデマンド競争が激化
ネットサービス
2021-06-07 14:32
AWS、AI関連の仕事を得るのに役立つ新たな認定資格を創設
IT関連
2024-06-13 05:22
緊急事態宣言1年 テレワークなど企業の働き方も変化
IT関連
2021-04-13 07:40