C#初級プログラミング

C#初心者のための基礎!ブロックと名前空間とクラスとメソッドを解説#2

ブロックとは

C#をコーディングするエリアは中確固{}で囲みながら書いていくのが基本になります。いくつかのブロックに分かれているので見ていきましょう。

名前空間

まずは名前空間のブロックが一番外側にあります。

この例だと「namespace Demo」から始まる一番外側の{}です。名前空間は名前の衝突(重複)を防ぐためにフォルダー分けのような感覚で命名していきます。

次にクラスブロックがあります。「public class CodeA」で始まる{}です。この中にクラスの機能をコーディングしていきます。

最後のブロックがメソッドといわれるものになります。「public void Create()」で始まるブロックです。C#では基本的にはこのメソッドといわれるブロックの中に処理を書いていきます。

クラス

クラスブロックの中は,そのクラスで使う変数等を宣言できる

クラスブロックの中にはメソッド以外にも色々なことを書くことができます。
例えば変数というものを宣言することができ,クラスブロックで宣言したものは,そのクラスのどこからでも参照できるようになります。

この例で行くとCreateメソッドの中の「sb」はCreateメソッドの中でしか参照することができませんが,クラスブロックで宣言している「sb2」はCreateメソッドからも,Create2メソッドからも参照することができます。

メソッドの中で使い終わるものはメソッドの中で宣言し,クラスの中の複数のメソッドで使用される値はクラスブロックに宣言するというのが基本的な考え方です。

メソッド

メソッドには値を返すものと,値を返さないものがあります。

値を返さない場合はvoid

値を返さない場合は「void」というキーワードを使います。

この場合,Createメソッドは処理をした後,何も値を返さないことを示しています。

値を返す場合は型

値を返す場合は,返却する値の型を記述します。

この場合は「string」を返却するCreateメソッドになります。「return」キーワードに書かれたXXXXXという文字が返却されることになります。「string」というのは文字列の型になります。メソッドに型を指定した場合,returnキーワードを使って指定した型の値を返却しないとコンパイルエラーになります。

基本的にはすべて{}で囲む

このように,基本的には中カッコ{}の中に,プログラムコードをどんどん書いていくことになります。

冒頭にusingを書くことで名前空間を省略できる

冒頭に書かれている「using System.Text;」はusingキーワードを使って,そのクラスで使用する名前空間を記述しています。これがあると,名前空間の記述を省略できます。

usingキーワードがない場合は,名前空間をフルネームで記述しないとコンパイルエラーになります。

このように「StringBuilder」というクラスは「System.Text」という名前空間なのですが,冒頭のusingキーワードがない場合はすべての「StringBuilder」に「System.Text」を記述しないといけなくなり,大変ですし,可読性も落ちます。

C#初心者のための基礎文法

C#プログラマーのための正しい3層構造が分かる「C#アーキテクチャー解説動画」をここで公開しています。よかったら見てみてください。

 

参考図書

C#の文法

プログラミングC#

プログラミング.NET Framework

実戦で役立つ C#プログラミングのイディオム/定石&パターン

Head First C# ―頭とからだで覚えるC#の基本

Effective C#

C#プログラマのための.NETアプリケーション最適化技法