#0 Hello, world!
プログラムにあまり慣れ親しんでいない初心者に向けてC#プログラムの書き方を教えるつもりでQiitaにまとめることで,自分の中の数少ない知識を整理するという目的で書いていきます.今回はVisual Studioのインストールから実際に簡単なプログラムを書くまでをまとめようと思います.また,今回はWindowsで行うことを前提としています.
#なぜC#なのか
C#はWindowsの開発元であるMicrosoftが開発した言語で,IDE(統合開発環境)もMicrosoftが出しています.また,公式のドキュメントも多く,Unityでも使われているため,サンプルコードも簡単に見つかるため,比較的簡単に習得できるプログラミング言語です.
##VisualStudioのインストール
まずはVisual Studioをインストールし,プログラムを書く環境を整えます.
Visual StudioはこちらのサイトからCommunityのインストーラをダウンロードしてください.
Visual Studio Installerを起動して,ワークロードをインストールします.ワークロードはUniversal Windows Platform developmentと.NET desktop developmentをインストールすれば十分だと思います.
##プロジェクトの作成
インストールが完了したら,次は実際に簡単なプログラムを書きましょう.
Visual Studioを起動し,[新しいプロジェクトの作成(N)] -> [コンソールアプリ(.NET Framework)] を選択します.プロジェクトの名前をHelloWorldにすると,自動でソリューション名もHelloWorldになるのでそのまま [OK] を押してプロジェクトを作りましょう.今回作ったプロジェクトは C:\Users\(UserName)\source\repos の中に作成されていると思います.保存場所を変えたい場合は,場所のところでお好みの場所を指定してください.
##Hello, world!
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HelloWorld
{
class Program
{
static void Main(string[] args)
{
}
}
}
さて,プロジェクトを作成すると上のようなプログラムが自動で作成されます.まずは,usingやnamespace,classなどは考えずに,**static void Main(string[] args)**に注目しましょう.
static void Main(string[] args)と波括弧で囲われた部分を総じてMain関数と呼びます.プログラムはこのMain関数の中に書いたことが実行されます.試しに次のように書いて実行してみましょう.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HelloWorld
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello, world!");
}
}
}
Hello, world!
[デバッグ] -> [デバッグなしで開始]またはCtrl + F5キーで実行できます.
Console.WriteLine("Hello, world!"); は,"(ダブルクオーテーション)で囲われた文章がコンソールに出力されるものです.
もうお気づきの方もいらっしゃるかもしれませんが,C#では文の終わりに;
(セミコロン)をつける決まりがあります.これを忘れるとエラーになるので気をつけましょう.
今回はここまで.次回はリテラルと変数・定数について説明します.
##練習問題
自分の名前を画面に出力するプログラムを書いてください.
解答例
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HelloWorld
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Kyohei Morita");
}
}
}