JavaScriptと相性の良いnode.jsが使えるGlitchサーバーがおすすめ

こんにちは!

子供向けプログラミング教室kobakoスタッフです。

kobakoではJavaScirptでのゲーム開発をメインに教えています。

ゲームを作っていく上で、サーバーが必要になってくるタイミングがあります。

今回はそんなサーバーを簡単に作れるGlitchというサービスを紹介します。

ところで・・・

この記事を書いている人はだれ?

子供向けプログラミング教室です!

JavaScriptを使ったゲームプログラミング、ゲーム企画が得意な教室です。

プログラミング教室で実際に使用している、学習成果のある教材をYouTube無料配信しています。

サーバーとは?

そもそもサーバーとはなんでしょうか?

サーバーとは、簡単に言えば、中央コンピューターです。

そしてもっとざっくり言えば、ソーシャルゲームが作れるのがサーバーです。

UnityやProcessing、JavaScriptで作ったゲームは、プレイヤーのそれぞれのパソコンで動作します。

ですが、それぞれのパソコンで動かしたゲーム結果、レベルやステージ、スコアなどは、各自のパソコンの中でしか管理されていません。

例えば、全国のプレイヤーのスコアランキングなどを作りたい場合、

各プレイヤーのスコア情報を中央コンピューターに蓄積しておく必要があります。

これがサーバーというもののざっくりとした説明です。

ホームページなどを公開するときにもサーバーが必要ですね。

Glitchとは?

そんなサーバーですが、お金がかかるものがほとんどです。

有名なところで行くと、Amazonが運営しているAWS、ペパボが運営しているロリポップなどが有名でしょうか。

今回紹介するGlitchは一部無料で使えますし、ちょっと使う分には無料の範囲で申し分ないレベルです。

https://glitch.com

node.js

Glitchはnode.jsというサーバー用のプログラミング言語を使います。

サーバー用のプログラミング言語といえばPHPやRubyが有名ですが、

node.jsはサーバーで動作するJavaScriptと呼ばれ、かなり特殊なサーバー用言語として親しまれています。

おそらく、PHPやRubyをやったことがある人なら、node.jsは相当理解しづらい代物かと思います。

逆にJavaScriptに親しんでいるとnode.jsはむしろしっくりくるプログラミング言語になるかもしれません。

Glitchの使い所

Glitchの使い所としては、WEB APIの開発です。

WEB APIは主にJSONというデータ形式でやりとりされ、このJSON形式が実にJavaScriptと相性が良いのです。

例えば、プレイヤーのスコア情報をGlitchサーバーに送信して、node.jsで受け取ったスコアを蓄積しておく。

蓄積された各プレイヤーのランキング情報をJSON形式でゲーム側が受け取り、ランキング表示をしてあげる。

例えば以下のようなnode.jsコードであれば、リクエストを送るたびにcountを1ずつ増やしてJSON形式でデータを受信できます。

let data = {
  count: 0,
};
fastify.get("/", function(request, reply) {
  reply.header('Access-Control-Allow-Origin', '*');
  reply.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
  reply.header(
    'Access-Control-Allow-Headers',
    'Content-Type, Authorization, access_token'
  );
  data.count += 1; 
  reply.send(data);
});

まとめ

サーバーというのは非常に難解で、いまいちしっくりこない人も多いと思います。

ですが、サーバーが使えるようになると、できることが格段と増えます。

遅かれ早かれ、いつかはサーバーに触れる機会もでてくるでしょう。

そのときで結構です。

今回のGlitchやnode.js、JSONといったキーワードを思い出して頂けたらと思います。

プログラミング教室kobakoでは、サーバーもゲームも開発できるクリエイターが在籍しています。

ゲーム開発やプログラミングに関して幅広く学べるのがプログラミング教室kobakoです。

無料体験へのお申し込みはこちらから!

kobakoのゲームプログラミング教材もYouTubeで無料配信中です!

初回の授業料(体験)は無料です。

※現在はオンライン授業でのみ対応しています。通学型ではありません。

TumisuによるPixabayからの画像