プログラミング

オブジェクト指向がわかるようになるためにする3つのこと

投稿日:2019年9月9日 更新日:

オブジェクト指向がいまいちわからない人向けに、
オブジェクト指向でプログラミングできるようになるまでのステップを以下にまとめました。

 

Javaでプログラミングする

Javaはオブジェクト指向言語です。
自分でClassを作って、プロパティ、メソッドを作っていかなくては動いてくれません。
また、静的型付け言語であることと変数スコープが厳密なため、適当に書いていては動いてくれません。

これを克服すると、オブジェクト指向で書き方に体がなじんできます。
Javaでなくても、オブジェクト指向言語であるならば他の言語もでもかまいません。

スクリプト言語なら、Rubyでもいいです。
コンパイラ言語なら、Kotlinでもいいです。

大事なのは、
オブジェクト指向を身に着けたいなら、オブジェクト指向言語を選び、書く練習をするということです。

 

すでにあるものを題材にする

世の中にすでにあるサービスをプログラミングで表現するすることで、「オブジェクト(物)」を扱うことができるようになります。

たとえば、じゃんけんといった遊びもオブジェクト指向でプログラミングすることができます。
オブジェクト指向でじゃんけんを作ってみる

何か新しいものを作ろうとすることは一切不要です。
すでにあるもの、かつ自分がよく知っているものから始めて下さい。

そうすれば、どのように実現すべきかを簡単に考えられます。

 

まず最初に意識することはプロパティとメソッドだけ

interfaceやabstractクラスもオブジェクト指向の概念ですが、一旦それは置いてください。
まず最初に身に着けるべきことは、クラスはプロパティとメソッドを持つということだけです。

クラスを定義し、
そのクラスがどのようなプロパティ(値)を持ち、
どのようなメソッド(機能)を持つべきか?
これを考えて実現できるように自分の思考を鍛えることから始めて下さい。

 

まとめ

オブジェクト指向がわかるようになるまでにすべきことは以下の3つです。
・オブジェクト指向言語でプログラミングする。
・自分がよく知っている事柄を題材にしてプログラミングしてみる。
・最初はプロパティとメソッドだけ使えればいい。

上記の3つを守りながら、最低でも1000行以上のコードを書いてみて下さい。
1つの題材で1000行でもいいですし、複数の題材で合計1000行でもOKです。

これは私の体験談ですが、1000行ほど書くと「オブジェクト指向で書ける」という感覚が芽生え始めます。
ぜひ試してみて下さい。

 
最後までお読み頂き、ありがとうございました!
ご意見・ご要望がありましたら、遠慮なくコメント下さい!
もし内容が良かったらランキング評価を頂けると励みになります(^^)

ランキング評価する

-プログラミング
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


関連記事

【Java入門】配列の扱い方まとめ

概要 配列の扱い方について学んでいきましょう。 配列は、同一の型の値を複数持つことができるデータ構造です。 ・int型の配列だったら、int(数値)を複数個持っている。 ・String型の配列だったら …

SpringでNotNullなどのバリデーションが効かないときの対処法

状況 フィールドに入っている値は空文字なのに、 @NotNull, @NotEmpty, @NotBlankでエラーとして検知されない。 (BindingResultでhasErroe=0件となる) …

Springでバリデーションがimportされていないときの対処法

状況 SpringF/Wでバリデーションを実装したいが、@NotNullや@Minといったアノテーションが使えない。 @NotNullを使おうとすると、import com.sun.istack.No …

【Java入門】例外処理の基本的な操作まとめ

概要 例外処理の基本的な知識と操作について記載しています。 例外処理の構文 try~catch~finally ◆基本構文

・fina …

no image

GitでIndexが壊れたときの直し方

これは自分の環境用の備忘録です。 (状況) Virtual BOX内のGit環境において、INDEXが0KBになっている。(INDEXが壊れている) (対処方法) リモート環境から新しくCloneして …

記事を探す

SpringFramworkの良書

■おすすめ教材
Javaの基本を学んだ人が、次のステップとして読む本(中級者向け)

※SpringはJavaのFrameworkの1つです。
変更のしやすさ、保守性の高さが特徴です。