プログラミング勉強中の女ブログ

プログラミング学習中!アウトプット用ブログです。

オブジェクト指向を取り入れる意味

Rubyオブジェクト指向プログラミング言語です」
この意味は大体分かってきました。
でも、「Rubyは〜」と言っているということはオブジェクト指向じゃない言語もあるわけですよね。

ということで、今回はオブジェクト指向を取り入れる意味について考えてみます。

オブジェクト指向は何のためにあるのか?

実は、オブジェクト指向を全く取り入れずにアプリケーションを作ることもできます。皆さんは、アプリケーションを触っていて「あ〜これはオブジェクト指向で作られてるなぁ〜最高だなぁ〜」とか感じたことありますか?ないですよね?笑
いや、エンジニアの人は感じるのでしょうか。とりあえず、感じないという前提で話しますね。

アプリケーションがオブジェクト指向で作られたかどうかはユーザーには分からないですし、オブジェクト指向で作ったからといってユーザーが得られるサービスが変わるわけでもありません。
なぜなら、オブジェクト指向はユーザーの為の知識ではなく、開発者同士の円滑なコミュニケーションのためにある指向なんです!

オブジェクト指向のメリット

オブジェクト指向でコードを書く理由は、ずばり、、、
変更に対して柔軟に対応するため!です。
プログラムは、日々更新しないと時間と共に枯れていきます。
いいサービスを提供し続ける為には、メンテナンスが必要なのです。
オブジェクト指向によるアプリケーション開発は、頻繁に変更されるであろう箇所をクラスに取り出しておくことができます。
そうすることで、システムが変更に対して柔軟に対応できるようになるのです。
これがオブジェクト指向を取り入れる最大のメリットと言えます。

●まとめ

アプリケーションを開発する際には、「このサービスには、今後このような仕様変更の可能性がある」と予測を立てて、変更に強いアプリケーションを設計することが大切です。その手助けとなってくれるのが、オブジェクト指向だと覚えておきましょう。

●独り言コラム

この「可能性を予測する」ということを意識すると、どこまで予測するべきか悩む事になるかもしれません。例えば、頻発に変更されると予想した箇所をクラスに取り出して、使うかもしれないメソッドを定義したのに、結局そのような仕様変更が発生しなかった!意味無かったじゃん!ということが起きそうな気がします。かもしれないかもしれないかもしれないを考えすぎて、無駄なコードが増えてしまいそうですよね。きっとそれを良いバランスで予測できるエンジニアが、いいエンジニアなのでしょうか。そうなれるように、がんばりましょう。