初めまして、音ゲーデベロッパーの腕毛の人と申します。
色々あって本日からC#の勉強を始めることになりました(講義の開催決定→2日後に実施という超スパン…)。
というのも、僕は前々からUnityでの音ゲー開発をしたい!と思っていたのですが、肝心のプログラミングの知識を持っていませんでした。
そこでDiscord内メンバーの音ゲー開発経験のある方とボイチャで相談したところ、勉強会の開催をすることになりその講師役を快く引き受けてくれました。
この講座は本日5月11日の昼11時から約一時間開催。1週間程度でC#の基本を学んでしまおうという内容になっています。
コロナのせいで仕事もないしなぁ…
第一回テーマ:はじめの一歩
講師を務めてくれたのは小野塚企画さん@onozukaKikaku
クイズアプリ用に早押しボタンを作る等、面白い商品を作ったりもしてます。
- 今回の目標
- プログラムを書いて実行する
- 型と変数と値を使ってみる
- コンソールの表示方法を知る
この3つを達成できるよう教えて頂きました。
プログラミングを書いて実行する
PCはMac、コンソールツールにVisual Studioを使用(バージョン7.7.4 build1)し、まずはプロジェクトファイルを作成
左のその他から.NETを選択、コンソールプロジェクトがC#になってる確認ヨシ!作成!
ファイル名はMyFirstProjectにしました。英語表記じゃないと動かないようです。
すると、こんな感じで初期画面が出現
7行目の
public static void Main(string[] args)
から下の
{
このかっこの中身からプログラムが実行されます!
どの言語もだいたいMain〜以降で実行されるらしいです。
最初は何をやっていいのかわからないので、言われるがままに書いていきます。
Console.WriteLine("Hello World!");
の下に
Console.ReadKey();
書きました。
プログラミングが実行できました。やったね!
Console.WriteLine("Hello World!"); → Hello World!を表示しますという命令
Console.ReadKey(); → 書いた瞬間に消えるのを防ぐ命令
です。割と重要…
あとHello World!以外の文章に変えたりもしました。
✅プログラムを書いて実行する
目標達成です!
値を入れて表示する
ここから型というものを使っていきます。
{の下、9行目に
int score = 1000000;
11行目の""の中身を書き換えて
Console.WriteLine("score: {0}", score);
これでスコアを表示してみましょう
実行じゃああああ
無事に表示されました!
青文字で表示されてるintは整数型というものです。
, scoreが9行目のscoreと連動しています。
######(こっからスペース入れるとか半角とか細かく意識しだす)
intは整数のみを表示できる型です。続けて小数点を表示できる型を使ってみます。
10行目に
double bpm = 333.33;
13行目に
Console.WriteLine("BPM: {0:}", bpm);
を書いていきます。(検索候補とかすぐ出るので割と楽です)
(元ネタわかるかな)
はい、成功です
ここで入力したdoubleは小数型といいます。
ここまできたら曲名欲しいですよね?書いていきます。
11行目に
string songName = "The Legend of MAX";
13行目に
Console.WriteLine("songName: {0}", songName);
(ここで僕はConsole.WriteLine("songName: {0}", songName);を書き忘れて注意メッセージが出ました)
(一回ミスったけど)表示されたのでヨシ!あと元ネタも判明したのでヨシ!
ここで入力したstringを文字列型といいます。
✅型と変数と値を使ってみる
目標は達成しましたが何がなんやらなので次項、解説です。
色々な型と表示方法を知る
↑で習った型が基本の三型となります。これからもたくさん使ってくよ。
・int(整数型)
・double(小数型)
・string(文字列型)
これらは青い文字で表示されています。
intやdoubleの後にスペースを挟んで書いたscoreやbpmのことを変数といいます。
そして=の後の数字や文字列が値です。値はなんかオレンジっぽいような茶色っぽいような中途半端なやつです。
int score = 1000000;
は
型 変数=値
ということなんですね〜(セミコロンは行を終わらせる時に必須なんで忘れずに付けてね)
ここで講師からの大事なアドバイスなんですが
int aとか絶 対 に 書 か な い で く だ さ い
変数はただの文字なのでなんでもいいのですが
マジで人のこと考えてプログラミングしましょう。何の値を入れてるのかわかりにくくなるのに本職でさえこれやる人がいるらしいですよ?
ここで力尽きてきたので以下は早歩きで解説します(?)
・{0}{1}は文字列の順番です 値をいくつか表示したい時に使いますね
・プログラミングでは数字を0から数えます(0が一番目)
・小数点を隠したい時は{0:F0}と書きます
・スコアを指定した桁数で表示したい時は{0:D7}と書きます
以上のことを何やかんやしたプログラムがこれです
int maxScore = 1000000;
int score = 100;
double bpm = 333.33;
string songName = "The Legend of MAX";
int highScore = 950000;
Console.WriteLine("songName: {0}", songName);
Console.WriteLine("score: {0:D7} / {1}", score, maxScore);
Console.WriteLine("BPM: {0:F0}", bpm);
Console.ReadKey();
}
}
✅コンソールの表示方法を知る
これで今日やった内容は全てヨシ!
そして最後には次回への課題が出ました。それは…
課題:音ゲーのゲーム画面に必要な値を表現してみる。
今からやります
以上で第一回は終了です〜
プログラム知ってる人がたくさんいて初心者の僕には人権がなかった😦
次回は明日、5月12日昼11時
今回のアーカイブや講義の様子はDiscordで確認できますのでぜひお越しください〜
Discord:https://discord.gg/8arnHu6
Twitter:@stereonoah