【Lua言語講座】1.プログラムとLua言語

Lua言語講座

※この記事は会話形式にリライトしました。

こんにちは! ロブスタのハルです。
ここまで基本編練習編と続いてきましたがRoblox Studioの操作にはれましたか?
これから始まるLua言語講座ではLua言語と呼ばれるプログラミング言語を使って実際にゲームのプログラムを作っていきたいと思います。
第1回はそもそもプログラムとは何か、そしてLua言語の特徴とくちょうやプログラミングならではの考え方について紹介しょうかいしていきます。

Lua言語講座の進め方

各見出しの冒頭には生徒役のたかし君と先生の会話が書かれています。
まずは会話を読んでなんとなくこういうものなんだなということを確認しましょう。
もし余裕があればその下の解説も読んでみてください。
最初はわからなくても2周、3周とするうちにわかるようになります。

プログラムとは

――ある日の会話――

たかし
たかし

先生、ゲームを作りたいんですがプログラミングが全くわかりません…

先生
先生

大丈夫ですよ。一緒に勉強しましょう。

たかし
たかし

お願いします!

先生
先生

そもそもプログラムって何だと思いますか?

たかし
たかし

うーん、アプリとかソフトみたいなイメージです。

先生
先生

いいですね。
プログラムというともっと広いものを指していて、
一言でいえば『コンピュータを動かすための命令』のことなんですよ。

解説

プログラムとは一言で言うとコンピュータを動かすための命令のことです。

コンピュータは人間とちがって自分で考えるということができません。そこで、私たち人間がコンピュータにやってほしいことを伝える必要があるんですね。その方法としてプログラムを使っているわけです。

昔はスイッチを手動で切り替えたり、紙に穴をあけてそれを読み込ませることでプログラミングをしていたそうですが、時代が進むにつれてプログラミング言語でプログラミングするという方法が一般的いっぱんてきになってきました。

プログラミング言語について

――ある日の会話――

たかし
たかし

なるほど、プログラムは命令のことなんですね。
それじゃあ、その命令はどうやって書かれているんですか?

先生
先生

いい質問ですね。
現在はプログラミング言語を使ってプログラムを書くのが一般的です。

解説

現在ではたくさんのプログラミング言語が開発されています。それぞれ得意とする分野や実行速度、書き方などに違いがあり、必要に応じて言語を使い分けることもあります。どんな言語があってどんな特徴とくちょうがあるのかは各自で調べてみてください。

Lua言語

――ある日の会話――

先生
先生

たかし君は何を使ってゲームを作るのか決めていますか?

たかし
たかし

Roblox Studioを使おうと思っています。

先生
先生

なるほど、ではLua言語について勉強した方がいいですね。

たかし
たかし

Lua言語って何ですか?

先生
先生

Lua言語はRoblox Studioで使われているプログラミング言語です。
文法が比較的簡単で、動作が速く、ゲーム開発に向いている言語なんですよ。

たかし
たかし

文法?
英語みたいに勉強しないといけないの~?!

解説

RobloxではLuaルア言語と呼ばれるプログラミング言語を使って開発するのが主流しゅりゅうなようです。PythonパイソンJavaScriptジャバスクリプトなどの人気のある言語を使って開発することもできなくはないのですが、情報が少ないためこのサイトでは素直すなおにLua言語を使うことにします。(プログラミングにおいては情報の多さが大事だったりします)

Lua言語はスクリプト言語というくくりの中にある言語で比較的ひかくてき簡単に書くことができるという特徴とくちょうがあります。また、動作が速いためゲーム開発(簡潔かんけつなイベント処理など)に利用されることが多いようです。

このシリーズではLua言語の文法を実例を交えながら解説していきたいと思います。

なお、正式にはLua言語ではなくそれを改良したLuauルアウ言語というものが使われていますが、このサイトではLua言語として紹介します。

プログラミング独自の考え方

――ある日の会話――

たかし
たかし

先生、プログラミング言語って英語みたいに勉強しないといけないんですか?

先生
先生

人によりますが理解できれば英語より簡単ですよ。

たかし
たかし

本当ですか?

先生
先生

英語は読む・書く・話す・聞くといったことに加えて表現の幅も大きいですからね。
それに比べてプログラミング言語は決まったルールがあるので覚えることはそこまで多くないんですよ。

たかし
たかし

なるほど?
少し安心しました。

先生
先生

せっかくなので基本的な考え方を勉強しましょうか。

たかし
たかし

はい!

先生
先生

プログラミングの基本は『上から下に実行される』ということです。

たかし
たかし

えっ?
それだけですか?

先生
先生

簡単だけど大切なことなのでしっかり覚えておいてくださいね。

解説

プログラムは基本的に上から下に向かって実行される決まりになっています。ある程度規模きぼの大きいプログラムになると関数という手段しゅだんを使ったり、さらに規模が大きくなるとクラスという手段を使うことが多くなります。

参考までに主流しゅりゅうなプログラミングの考え方を紹介しておきます。
1つは手続き型プログラミングです。これは基本となる考え方で、処理内容を細かく手順通りに書いていく方法です。基本的には上から順番に記述していきます。イメージとしてはレシピですね。また、関数というものを定義ていぎしてそれを使うことで処理を行うこともあります。シンプルで処理が追いやすいというメリットがあります。

もう1つはオブジェクト指向しこう型プログラミングです。この方法では機能を持ったまとまりをモノと考えて、モノ同士にやりとりをさせます。イメージとしては私たちが社長になって、社員に仕事を渡して働いてもらうというものです。汎用性はんようせいすぐれており、変更しやすいという利点があります。一方で複数の事柄ことがらから共通点を抜き出すという考え方が必要です。そのため初心者にとってはクラスを作るのは難しいです。

その他にも手続き型プログラミングをより厳密げんみつにした関数型プログラミングというものもあります。

最後に

――ある日の会話――

先生
先生

たかし君、プログラミングについてなんとなくわかりましたか?

たかし
たかし

プログラムはコンピュータを動かすための命令で、私たちはプログラミング言語というものを使ってその命令を作るんですよね。

そして、プログラミングで大事なことは『上から下に実行される』ということでした。

先生
先生

素晴らしい!

次回はプログラムの書き方について説明しますね。

たかし
たかし

よろしくお願いします!

まとめ

  • プログラムとはコンピュータに与える命令のこと
  • RobloxではLua言語を使う
  • Lua言語はスクリプト言語で実行速度が速く簡単に書けるという特徴がある
  • プログラムは『上から下に実行される』!
  • プログラミングには手続き型・関数型・オブジェクト指向型という考え方がある
  • コードを書くのは簡単だが処理を考えるのが意外と難しい
  • トライアンドエラーを繰り返すことが大切

お疲れ様でした。第1回は以上です。
次回からは実際にコードを書いていきたいと思います!

コメント

タイトルとURLをコピーしました