paiza開発日誌

IT/Webエンジニア向け総合求人・学習サービス「paiza」(https://paiza.jp ギノ株式会社)の開発者が開発の事、プログラミングネタ、ITエンジニアの転職などについて書いています。

初心者でもほぼ無料でオブジェクト指向について学べるコンテンツ10選

f:id:paiza:20171030121949j:plain
Photo by Scott Akerman
f:id:paiza:20140916135428p:plainこんにちは。谷口です。

プログラミング初心者の方で、オブジェクト指向の勉強に苦労している方は多いかと思います。(そして教える側で苦労している人も多いと思います)

オブジェクト指向プログラミング(OOP) に適した機能を備えたプログラミング言語には、JavaC#Rubyなどいろいろな言語がありますが、これらの言語を学ぶ中で、オブジェクト指向について理解する必要性が出てきた人もいるかと思います。また、C言語などの手続き型言語を最初に学んで、次にJavaなどを学ぶことになって「オブジェクト指向とは……??」となっている人も多いのではないでしょうか。(というか私がそうでした)(そして結構な期間「オブジェクト思考」だと思ってました)

プログラミングにおける「オブジェクト指向」とは、データと、そのデータに関する処理を含めてオブジェクトとして定義し、オブジェクト同士の相互作用をもとに処理が行われる…という考え方です。クラスベースのオブジェクト指向では、「クラス」というオブジェクトの設計図をもとに、インスタンス(実体)を作っていきます。

……と言っても何だかよくわかりませんよね。

↓「オブジェクト指向」という言葉で調べてみても……辞書や用語集、ウィキペディアに至るまで、いろいろな説明があって、わかったようなわからないような……簡単に説明したり、ざっくり理解したりするのがとにかく難しいのがオブジェクト指向という概念です……。
オブジェクト指向 - Wikipedia
オブジェクト指向とは - はてなキーワード
オブジェクト指向とは - 意味の解説|ITトレンドのIT用語集


そこで今回は、オブジェクト指向についてなるべくやさしく、なるべくコストをかけずに学べるコンテンツを、解説のベースになっている言語ごとに、計10件ご紹介していきます。

オブジェクト指向入門本

Java

◇わかりやすいJavaオブジェクト指向入門編

わかりやすいJavaオブジェクト指向入門編

わかりやすいJavaオブジェクト指向入門編

オブジェクト指向でなぜつくるのか

オブジェクト指向でなぜつくるのか 第2版

オブジェクト指向でなぜつくるのか 第2版

Ruby

オブジェクト指向設計実践ガイド ~Rubyでわかる 進化しつづける柔軟なアプリケーションの育て方

■まとめ

オブジェクト指向は、プログラミングにおける考え方の一つですから、説明を読むだけでなく、実際にプログラミングをした方が圧倒的に理解が深まります。

上記サイトや書籍のサンプルコードを実際に自分で作ってみるのもよいですし、『ThoughtWorksアンソロジー』という書籍では「オブジェクト指向エクササイズ」という勉強方法も紹介されているので、練習としてこちらにトライしてみるのもよいかと思います。

ThoughtWorksアンソロジー ―アジャイルとオブジェクト指向によるソフトウェアイノベーション

ThoughtWorksアンソロジー ―アジャイルとオブジェクト指向によるソフトウェアイノベーション



動画で学べるpaizaラーニングには、JavaPHPRubyC#JavaScriptPythonなどのプログラミング言語が学べるレッスンだけではなく、「未経験からITエンジニアを目指したい!」という方に向けて、IT業界の構造やエンジニアのキャリアについて学べる「ITエンジニアの就活準備編」もございます。

ITエンジニアの就活準備編」では、エンジニアのキャリアや働き方がわかる「業界構造を学ぶ」、就活で使えるポートフォリオの作り方がわかる「ポートフォリオ制作」のレッスンを公開中。新卒の就活生だけでなく、ITエンジニアとしての転職を目指す方に役立つ動画レッスンとなっております。

詳しくはこちら
ITエンジニアの就活準備編(2レッスン) | プログラミング学習ならpaizaラーニング





paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。

詳しくはこちら

そして、paizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。

スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。

詳しくはこちら

ITプログラマ・エンジニア向け転職・就活・学習サービスのpaiza