新しいことを始めるとき、何から手をつければいいか迷いますね。
今回 Small Basic Online の開発に取り組むと決めてから、最初は途方に暮れていました。
まず、取り組むと決めることは重要だと思います。
その後は、少しずつ情報を集めてどうすればいいのかに迫っていくしかありません。今回の最初の手がかりは公開されているソースコード https://github.com/sb/SmallBasic-Online でした。
GitHub(ギットハブ)はオープンソースのソフトウェアのソースコードを管理するシステムです。場合によっては、ここにドキュメントがあり、どのように貢献すればよいかがまとめられていることもあります。Small Basic Online に関してはドキュメントは今のところ、Readme に Small Basic Online の使い方、Code of Conduct に参加者の行動規範、Issues のページに問題点などがまとめられていますが、開発に関する文書はないようです。
ソースコード自体は有力な情報源になります。.ts という拡張子のファイルがあるので、TypeScript 言語が使われているだろうということが分かります。TypeScript はマイクロソフトが JavaScript に対して変数のデータ型を指定できるようにした言語です。JavaScript では変数の型が決まっていないので(Small Basic もそうですね)、大規模なプログラムを作るときにはバグを発生させやすいという面があります。これを回避するために TypeScript では変数の型を導入したようです。TypeScript の文法は JavaScript を拡張したもので、さらに Java や C 言語と同様の記法が使われています。いずれかの言語の経験があれば、気軽に覚えていけそうです。
開発環境をどうするのか、マイクロソフトの製品だから Visual Studio かと思いきや、どうやら Visual Studio Code というエディタを使う場合が多いようです。この辺はインターネットで検索して把握できました。Visual Studio Code (VSCodeとも)もオープンソースで、GitHub にソースコードが公開されています。
今回の取り組みの大きな前提として、このオープンソースのソフトウェアを開発する枠組みを理解しておく必要がありそうです。
ここまでのところをちょっとまとめておきましょう。
・オープンソースのソフトウェア開発(共同開発)
・言語は TypeScript
・エディタとして Visual Studio Code を利用
・ソースの管理は GitHub を利用
それぞれについて、インターネットや本で調べることも必要になってくるでしょう。どのような本に出会えるか、プログラミング人生において、結構重要なことだと思います。
私自身は、TypeScript は全く初めてなのですが、Visual Studio Code はホームページの作成と公開に使ったり、GitHub は Small Basic のソースを公開するために使ったりしています。TypeScript も初めてですが、JavaScript については囲碁のプログラムを作ったり、ホームページのちょっとした動作のために使ったりしているので、なんとかなる感覚はあります。初めての場合は、インターネットや本の情報をもとに実際に手を動かして使いながら覚えていくのがいいと思います。
ただ、やみくもにインターネットや本を探していると得られるものもある一方、時間がかかってしまうこともあるでしょう。よく知っている人に話を聞くのも大切かもしれません。今回私の場合は、Small Basic コミュニティを長年いっしょに支えているメンバから開発環境について教えていただくことができました。昨日試してみて、Visual Studio Code とブラウザの Chrome を使って Small Basic Online のデバッグができることを確認できました。
順を追って説明していきたいと思います。
(つづく)