こんにちは!
超文系プログラマ/SE@SEKIです。
今回は
「 "神" になれる方法」
をご伝授致します。
…もちろん、
「プログラム」という世界でですが。笑
「クラス」と「オブジェクト」
あなたはこの2つの言葉を
聞いたことがありますか?
これはJavaなどの
オブジェクト指向言語と呼ばれる
プログラミング言語を学習している方なら
聞いたことがあるかもしれません。
これらは学習始めの人たちを苦しめる
困ったコンビで、関係性を理解するまでに
結構な時間がかかります。
今回はこれらの関係性を
分かりやすく説明していきます。
この記事を読めば、
「クラス」と「オブジェクト」
の関係性が理解出来ます。
さらに、
これからお話しすることを念頭に置きながら
実際にコードを打ち込んでいけば
実感を伴いながら
「クラス」と「オブジェクト」の関係性を
理解することができます。
「クラス」と「オブジェクト」の概念は
これからのあなたのプログラミング生活に
必要となってくる可能性が高いです。
つまり、今ここで理解しておかないと
いつか必ずつまづきます。
オブジェクト指向のプログラミング言語を
学習する前にこれらの関係性を知っておくと
学習時の飲み込みが早くなりますが
学習時にこの関係性を知ろうとすると
余計なことまで考えてしまい
飲み込みが極端に悪くなります。
実際には、難しいことを
全くしていないのにも関わらず
あなたは勝手に難しいと
決めつけてしまいます。
そして
プログラミングの学習意欲が低下し
最終的には「挫折」してしまいます。
クラス=「設計図」
オブジェクト=「設計図から出来たモノ」
これを今回あなたには抑えて欲しいと思います。
実は「クラス」の正体は「設計図」です。
設計図に色々な情報や機能を持たせていきます。
そして
情報や機能が揃った設計図を
もとに作り出すモノが
「オブジェクト」です。
これだけだとピンとこないかも
しれないので具体例をご紹介します。
自動車のクラス(設計図)を
考えてみましょう。
あなたなら自動車のクラスに
どんな情報や機能を持たせますか?
情報なら
・メーカー
・値段
・色
など
機能なら
・加速する
・減速する
などが挙げられるかと思います。
このように
情報と機能を持たせたのが
「クラス」です。
次に、このクラス(設計図)をもとに
モノを作り出します。
メーカー:ABC社
値段:500万円
色:黒
機能:「加速する」「減速する」
これが「オブジェクト」です。
例えば、メーカーと色を固定にして
自動車を作り出したいのであれば
クラス(設計図)はこのように考えます。
情報
・メーカー:XYZ社
・値段
・色:赤
機能
・加速する
・減速する
このようにクラスを作成すると
オブジェクトが何個作り出せれようが
必ずこうなります。
メーカー:XYZ社
値段:〇〇万円
色:赤
機能:「加速する」「減速する」
つまり、値段は好きに決めることは出来ますが
メーカーと色は固定になります。
では、これから実際に
クラスとオブジェクトを作る
練習をしてみましょう。
①「人」の「クラス」を考えてみます。
情報・機能を持たせてください。
②①で作成した「人」のクラスから
実際に「オブジェクト」を作り出してみます。
クラスをもとにオブジェクトを
複数作り出しましょう。
その際、「オブジェクト」に
情報を設定するのを忘れないでください。
解答例を挙げておきます。
①情報:「名前」「性別」「年齢」
機能:「話す」「歩く」「寝る」
②1人目
名前:たかし
性別:男性
年齢:17
機能(出来ること):「話す」「歩く」「寝る」
2人目
名前:ゆりこ
性別:女性
年齢:18
機能(出来ること):「話す」「歩く」「寝る」
この考え方をしっかりと持って
プログラミングに取り組むことで
「クラス」と「オブジェクト」の
関係性が理解しやすくなります。
関係性が分かると
あなたはプログラム上で
好きなように「モノ」を
作り出すことが出来るようになります。
つまり、 "神" になれます。
"神"になってしまえば、
あなたの思い描くプログラムを
作成するまでの距離が一気に縮まります。
この概念を意識して
あなたのプログラミングスキルを
どんどん向上させていきましょう。
それでは
今日も最後までお読みいただき
ありがとうございました!
ご意見・ご感想がありましたら
是非、コメントしてください♪
超文系プログラマ/SE@SEKI