はじめに

これは、Visual Basic Advent Calendar 2017の7日目の記事となります。

前回、「Windows Subsystem for Linuxでの .NET Core を使用したVisual Basic のHello World アプリケーションの構築」を書きました。

Visual Basicアプリを編集するエディタとして vi を使いましたが、Windowsに慣れているせいでとっつきにくいです。かといって、WSLはあくまでサブシステムであり、GUIを構築してまで使わなくもいいやと思っています。

人工知能ブームでTensorFlowを使った際に「Jupyter Notebook」を使って、ブラウザ上でPythonを実装しました。
Jupyter Notebookは、Python以外の一般のテキストを編集したり保存することが可能です。ということは、Visual Basicアプリを編集するエディタとしても使えるということです。
更にWSLのJupyter Notebook上でTerminalも開けますから、ブラウザからVisual Basicアプリを実行することもできます。

環境作成

WSL上にAnacondaをインストールします。
インストールについては、次のサイトを参考にpyenvのインストールから行いました。
Bash on Ubuntu on WindowsでJupyter NotebookからTensorflowを実行する

pyenvのインストール

WSLにはWindowsにはデフォルトでもpythonが入っていますが、Anacondaを
使いたかったので、pyenvをインストールしました。

$ sudo aptitude install git
$ git clone https://github.com/yyuu/pyenv ~/.pyenv
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(pyenv init -)"' >> ~/.bashrc
$ source ~/.bashrc

Anacondaのインストール

pyenvのインストールが終わったら、次のコマンドを実行してAnacondaの最新のバージョンを探します。

$ pyenv install --list

この記事を書いた時点では3-5.0.1が最新だったので、3-5.0.1をインストールしてデフォルトの設定にしました。インストールは30分以上放置。

$ pyenv install anaconda3-5.0.1
$ pyenv global anaconda3-5.0.1
$ pyenv rehash

jupyterの実行

Anacondaをインストールすれば、jupyterはインストールされます。

$ jupyter notebook

JupyterLab v0.27.0
Known labextensions:

    Copy/paste this URL into your browser when you connect for the first time,
    to login with a token:
        http://localhost:8888/?token=958935352ca737add97459f395235b7e6c45f822ab96ef61

ブラウザ上で上記で示された長いクエリ付きのURLを入力します。
次からはクエリ部分は不要でもいいようです。

http://localhost:8888/

Visual Basicアプリの編集

myAppVBフォルダを選択します。Program.vb にチェックを付けて、Editボタンをクリックします。

jupyter_file.png

編集画面になります。メニューのLanguageからVB.NETを選択すればシンタックスハイライトされてコードが表示されます。

メッセージを変更して、メニューのFileからSaveをクリックします。
jupyter_edit.png

Visual Basicアプリの実行

NewメニューからTerminalをクリックします。
※Windows版のJupyterにはTerminalは出てきません。

jupyter_file2.png

ターミナル画面から次のコマンドを実行します。
すると、変更したメッセージが出力されます。

$ cd myAppVB
$ dotnet run

Hello World Test! VB.NET on .NET Core!

jupyter_terminal.png

最後に

本格的なものにはとても使えませんが、手軽に試したいならブラウザ上で編集と実行が出来るようになったわけです。

Jupyter NoteBookにて、PythonのようにC#を即時実行するプロジェクトを見つけました。VB.NETは頑張れば作れるってことでしょう。

Interactive C# Notebook
https://github.com/zabirauf/icsharp

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.