Javaオブジェクト指向プログラミング講座

オブジェクト指向プログラミングの特徴

全333コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
オブジェクト指向プログラミング言語は、従来の手続き型プログラミング言語にはない「クラス」が記述できることによるメリットについて簡単に説明します。
講師:
06:40

字幕

このレッスンではオブジェクト指向プログラミング言語は従来のもの、手続き型プログラミング言語にはないクラスが記述できることによるメリットについて簡単に説明します。オブジェクト指向プログラミング言語英語では OOPLObject Oriented ProgrammingLanguage と言います。代表的なのは Java、C++ です。最近の言語は大体オブジェクト指向が主流になっております。クラスが記述できることが特徴です。C++ というのは、C 言語にクラスが記述できるように拡張した言語です。それより後にできた Java はC++ をより使いやすく、が開発目標です。オブジェクト指向プログラミングとは英語では OOPObject Oriented Programmingと言います。プログラムをクラスの集まりとして作成します。クラスにはデータと手続きが一体化されています。従来のプログラミング言語はそもそもプログラムというのはデータと手続きです。手続き型言語というのは、この手続きからデータをアクセスするわけです。そうすると、1つのデータが様々な手続きからアクセスされます。これは、実は変更 / 機能拡張性に劣るということになります。 どういうことかというとあるデータ1は手続き A からアクセスされ手続き C からもアクセスされる例えば、データ2は手続き B からアクセスされ、手続き C からアクセスする。プログラムは、これほど単純なものではなくてあるデータがどこからアクセスされてるかごちゃごちゃになってるんですね。そうす、ると何か修正しようとしたら例えばデータ構造を変更する、どういうインパクトがあるかわからないですね。そうすると、変更機能拡張非常にやりにくいです。1ついじればデータ2の構造をいじればいろんな手続きに影響を与える、そうすると他のデータにもまた何か影響でてくるかもわからないというので修正、非常に困難になってきます。オブジェクト指向プログラミング言語はクラスというのはデータ+手続きです。データを直接アクセスするのはクラス内、自分のクラスの手続きのみです。これは変更機能拡張性に非常に優れているということになります。つまりクラス A が自分のデータと手続き、クラス B は自分のデータと手続きという風になっているわけです。そうすると、例えば、クラス B のデータこれをいじれるのはこのクラス B の手続きだけですね。 クラス A の手続きはこれを直接アクセスしない、できないです。クラス C の手続きは、クラス B のデータを直接アクセスできないです。みんな自分の手続きは自分のデータしかアクセスしないというので従来の手続き型言語に比べて非常に有利になります。オブジェクト指向プログラミングの3大特徴第1がカプセル化、これはデータと手続きを一体化することです。第2が継承、これはクラス再利用の仕組みです。第3が多態性、これはプログラムの機能拡張を容易にする仕組みです。これらについては後ほどのスライドで説明します。OOPL と UMLオブジェクト指向開発プロセスというものがあります。プログラムを作る前に、当然設計があってその前には分析、要求があるわけです。ユーザー、お客様からはこういうシステムを作ってください、こういうプログラムを作ってくださいと要求があるわけです。そこから分析モデル、用途、仕組みそこから設計モデルに落とし込み、そこからプログラミングをします。これら4つの行程すべてがオブジェクト思考というキーワードで繋がっています。それがオブジェクト指向開発プロセスです。上流を UML要求、分析、ここら辺が上流ですね。 設計、ここまでが上流と考えましょう。そうすると要求、分析、設計ここまでが UML でモデリングを行います。実装、つまりプログラミングですね。オブジェクト思考プログラミング言語でプログラミングします。UML 設計モデルがOOPL に自然にマッピングできます。どういうことかというと設計モデルをクラスで書くわけですね。ここのクラスが、例えば Java、C++ のクラスに綺麗につながるわけですね。自然に繋がるわけです。それがオブジェクト指向開発プロセスの特徴です。設計技法の違い従来手続き型言語の場合手続き、プログラムの流れですけどこれはフローチャートで書きます。プログラムの流れを書いてます。これを手続き型言語でプログラムに落とし込みます。オブジェクト指向の場合はUML で設計します。プログラムをクラスの関係で表すわけですね。これは手続きの流れではないですね。流れではないです、環境を指名するわけです。オブジェクト思考言語ではクラスが記述できるわけですからオブジェクト指向言語ではここから綺麗にプログラムに落とし込むことができます。このレッスンではオブジェクト指向プログラミング言語は従来の手続き型プログラミング言語にはないクラスが記述できることによるメリットについて簡単に説明しました。

Javaオブジェクト指向プログラミング講座

このコースではオブジェクト指向プログラミングの3大特徴である「カプセル化」「継承」「多態性」を、UMLモデルとJavaプログラムを対比しながら解説します。「カプセル化」ではコンストラクタや可視性、「継承」ではUML汎化関係とJavaの関係、「多態性」では継承およびインタフェースによるプログラミング方法などを説明します。

3時間23分 (36 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 2,990
発売日:2016年09月27日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。