友人が今度プログラムをやるらしく、c++について教えてほしいといってきました。
別件でかなりお世話になった友人なので、是非1からしっかり教えていきたいと思っています。
内容はオブジェクト指向とc++とMFCについてです。
しかしオブジェクト指向を教えるにあたって、いい資料が手元になく、
どう教えていっていいものか悩んでいます。
そこで皆さんに質問というかお願いがあります。
みなさんがオブジェクト指向を理解するために使った、又は、おすすめの参考資料を教えてください。
媒体は何でも構いません。(ネット上、本ぐらいしかありませんが)
よろしくお願い致します。
オブジェクト指向の参考資料
Re:オブジェクト指向の参考資料
こんにちは。
プログラムは、人に教えると自分の理解も一層深まりますからね。
私も、人に教えることでプログラムの復習をしてます。
では、私が参考にしている資料を紹介しましょう。
まずは、こちらのサイト
ttp://www.geocities.jp/ky_webid/index_old.html
C言語もC++についても、基礎から丁寧に、サンプルコード付きで説明しているサイトです。
最初から順番に読んでいけば、最後までいく頃にはかなりの力が付いていると思います。
探したいことを目次から探しやすいので、今でも非常に重宝してます。
こちらは、純粋なリファレンスサイト。
ttp://www.cppll.jp/cppreference/
STLコンテナの関数が全部載ってるので、こちらも重宝してます。
もちろん、もっと基礎的な数学関数も載ってるので便利です。
本は、私はハーバートシルトの「独習C++」で勉強しました。
これをプログラミングの教科書にしている学校も多数あるようです。
ただ、この本はかなりの厚みがありますし、ボリュームもあります。
C++とOOPについての基礎をがっつり勉強したい人向けかもしれません。
「独習」ってあるくらいなので、人に教えるときの参考書としては向いてないかも…?
オブジェクト指向とかカプセル化だとかは、
ある程度の規模のプログラムを自分で組んでみた時に
重要性やコツがわかってくると思います。自分はそうでした。
小さいプログラムだと、なかなか便利さを実感できないですかも…?
頑張ってくださいね。
プログラムは、人に教えると自分の理解も一層深まりますからね。
私も、人に教えることでプログラムの復習をしてます。
では、私が参考にしている資料を紹介しましょう。
まずは、こちらのサイト
ttp://www.geocities.jp/ky_webid/index_old.html
C言語もC++についても、基礎から丁寧に、サンプルコード付きで説明しているサイトです。
最初から順番に読んでいけば、最後までいく頃にはかなりの力が付いていると思います。
探したいことを目次から探しやすいので、今でも非常に重宝してます。
こちらは、純粋なリファレンスサイト。
ttp://www.cppll.jp/cppreference/
STLコンテナの関数が全部載ってるので、こちらも重宝してます。
もちろん、もっと基礎的な数学関数も載ってるので便利です。
本は、私はハーバートシルトの「独習C++」で勉強しました。
これをプログラミングの教科書にしている学校も多数あるようです。
ただ、この本はかなりの厚みがありますし、ボリュームもあります。
C++とOOPについての基礎をがっつり勉強したい人向けかもしれません。
「独習」ってあるくらいなので、人に教えるときの参考書としては向いてないかも…?
オブジェクト指向とかカプセル化だとかは、
ある程度の規模のプログラムを自分で組んでみた時に
重要性やコツがわかってくると思います。自分はそうでした。
小さいプログラムだと、なかなか便利さを実感できないですかも…?
頑張ってくださいね。
Re:オブジェクト指向の参考資料
自分が悩んだ時と同様に、それを人に教えることはそれ以上に難しいものですよね^^;
>本は、私はハーバートシルトの「独習C++」で勉強しました。
私もこれを読みました。
いい書籍だと今でも思います。
個人的には、相手のプログラムに沿った回答がいいのではないかと思います。
>友人が今度プログラムをやるらしく、c++について教えてほしいといってきました。
題材が漠然としているので、特定はできませんが、ゲームならキャラクターの構造をクラスにしてみるとか、
敵をクラスにしてみるとかですかねぇ。。。
業務用アプリケーションなら、データベースを管理するクラスや、日付を管理するクラスとかなどからではないでしょうか?
>本は、私はハーバートシルトの「独習C++」で勉強しました。
私もこれを読みました。
いい書籍だと今でも思います。
個人的には、相手のプログラムに沿った回答がいいのではないかと思います。
>友人が今度プログラムをやるらしく、c++について教えてほしいといってきました。
題材が漠然としているので、特定はできませんが、ゲームならキャラクターの構造をクラスにしてみるとか、
敵をクラスにしてみるとかですかねぇ。。。
業務用アプリケーションなら、データベースを管理するクラスや、日付を管理するクラスとかなどからではないでしょうか?
Re:オブジェクト指向の参考資料
オブジェクト指向って最初は意味が分かりませんからね。
というか僕は、今でも真髄はわからないです。
オブジェクト指向だけでも教えるつもりなら、UMLのテキストを使うというのはどうでしょうか。
UMLのテキストなら、いい本がたくさんあると思います。
あとは結城さんの
Java言語で学ぶデザインパターン入門
はきっと分かりやすいと思うので、こんな感じで利用するって読んでもらうといいかもしれません。
僕はエリックガンマの本しか持ってないので、結城さんの他の本を読んだ印象です。
>独習C++
C言語をさわったことがない方なら明解C++の方がいいと思います。
Cが出来るなら独習C++はすごくオススメします。その方のモチベーション次第ですけど・・・・
MFCを使えればオッケーならば、MFCの開発入門書を利用したほうがいいとは思います。
まぁMFC利用したことないので、なんともいえないです
というか僕は、今でも真髄はわからないです。
オブジェクト指向だけでも教えるつもりなら、UMLのテキストを使うというのはどうでしょうか。
UMLのテキストなら、いい本がたくさんあると思います。
あとは結城さんの
Java言語で学ぶデザインパターン入門
はきっと分かりやすいと思うので、こんな感じで利用するって読んでもらうといいかもしれません。
僕はエリックガンマの本しか持ってないので、結城さんの他の本を読んだ印象です。
>独習C++
C言語をさわったことがない方なら明解C++の方がいいと思います。
Cが出来るなら独習C++はすごくオススメします。その方のモチベーション次第ですけど・・・・
MFCを使えればオッケーならば、MFCの開発入門書を利用したほうがいいとは思います。
まぁMFC利用したことないので、なんともいえないです
Re:オブジェクト指向の参考資料
MFCだけでいいのならば…
※林晴比古著「新VisualC++6.0入門」
http://www.amazon.co.jp/%E6%96%B0Visual ... pd_sim_b_1
ビギナー編には、少しだけC++についての解説も少し載っていますが、メインはMFCの解説です。
スーパービギナー編はぶっちゃけ不要かな?ビギナー編とシニア編があればとりあえずOKです。
VisualStudio6.0以降に対応したものも発売されていますが、MFC自体はそんなに変わっていないので、古いのでも充分ではないかな?(開発環境に関する説明箇所は結構変わっていますが…)
※林晴比古著「新VisualC++6.0入門」
http://www.amazon.co.jp/%E6%96%B0Visual ... pd_sim_b_1
ビギナー編には、少しだけC++についての解説も少し載っていますが、メインはMFCの解説です。
スーパービギナー編はぶっちゃけ不要かな?ビギナー編とシニア編があればとりあえずOKです。
VisualStudio6.0以降に対応したものも発売されていますが、MFC自体はそんなに変わっていないので、古いのでも充分ではないかな?(開発環境に関する説明箇所は結構変わっていますが…)
Re:オブジェクト指向の参考資料
オブジェクト指向を勉強すればするほどMFCのダメさ加減が目に付きます。
ただし、それはオブジェクト指向の観点からの話であって、MFCが絶対的にダメなわけではありません。
C++はオブジェクト指向だけの言語ではありませんので、バランスをとりながら勉強することをオススメします。
ただし、それはオブジェクト指向の観点からの話であって、MFCが絶対的にダメなわけではありません。
C++はオブジェクト指向だけの言語ではありませんので、バランスをとりながら勉強することをオススメします。
Re:オブジェクト指向の参考資料
皆様回答ありがとうございます。
>山崎様
>ttp://www.geocities.jp/ky_webid/index_old.html
見た感じ、なかなか使えそうですね。
これを軸に教えていこうと思います。
>オブジェクト指向とかカプセル化だとかは、
>ある程度の規模のプログラムを自分で組んでみた時に
>重要性やコツがわかってくると思います。
たしかにオブジェクト指向単体で教えることは結構至難ですね。
(実際自分もオブジェクト指向は理解しているといえばウソになりますから・・・)
C++教えながら、オブジェクト指向の話を織り交ぜる形で教えていきます。
>山崎様、Mikan様、sizuma様
>独習C++
週末、本屋で少し読んできました。
かなりボリュームがあっていい感じなのですが、
友人のC言語のレベルが、C言語入門書の第1章あたりにでてくる
簡単なプログラム程度を作れる程度(ほぼ初心者)なので、
sizuma様の明解C++を使いたいと思います。
>バグ様
>※林晴比古著「新VisualC++6.0入門」
これは自分も持っています。
MFCを教える場合に使っていこうかなと考えてました。
これで解決とさせていただきます。
ありがとうございました。
>山崎様
>ttp://www.geocities.jp/ky_webid/index_old.html
見た感じ、なかなか使えそうですね。
これを軸に教えていこうと思います。
>オブジェクト指向とかカプセル化だとかは、
>ある程度の規模のプログラムを自分で組んでみた時に
>重要性やコツがわかってくると思います。
たしかにオブジェクト指向単体で教えることは結構至難ですね。
(実際自分もオブジェクト指向は理解しているといえばウソになりますから・・・)
C++教えながら、オブジェクト指向の話を織り交ぜる形で教えていきます。
>山崎様、Mikan様、sizuma様
>独習C++
週末、本屋で少し読んできました。
かなりボリュームがあっていい感じなのですが、
友人のC言語のレベルが、C言語入門書の第1章あたりにでてくる
簡単なプログラム程度を作れる程度(ほぼ初心者)なので、
sizuma様の明解C++を使いたいと思います。
>バグ様
>※林晴比古著「新VisualC++6.0入門」
これは自分も持っています。
MFCを教える場合に使っていこうかなと考えてました。
これで解決とさせていただきます。
ありがとうございました。
Re:オブジェクト指向の参考資料
> あとは結城さんの
> Java言語で学ぶデザインパターン入門
> はきっと分かりやすいと思うので、こんな感じで利用するって読んでもらうといいかもしれません。
私も持っていますがとても良い本だと思います。演習問題も充実しています。
しかし今回の場合はC++でということなので、この本はまだまだ先でしょう。
あれこれと手を広げるよりも、C++でオブジェクト指向を身に着けるのが無難だと思いますので、
本の説明を利用するとしても、サンプルコードはC++のものを用意することをお勧めします。
(欲を言えばJavaのソースを参考に学習者にC++で作成してもらいたいですが)
また、山崎さんも書いてますが、
> オブジェクト指向とかカプセル化だとかは、
> ある程度の規模のプログラムを自分で組んでみた時に
> 重要性やコツがわかってくると思います。自分はそうでした。
> 小さいプログラムだと、なかなか便利さを実感できないですかも…?
結局こういうことなのですよね。
入門書には、車から乗用車とトラックを派生させる類のサンプルがありますが、
これをある程度の規模のプログラムに適用させる方法は書いていません。
デザインパターンのサンプルについても、自分の関わっているプログラムの
どこにどのように応用するかは、著者には判るはずがありません。
会社の先輩や同僚が教えることもある程度は可能ですが、
身に付くかどうかは最終的には本人の資質ではないかと思います。
> Java言語で学ぶデザインパターン入門
> はきっと分かりやすいと思うので、こんな感じで利用するって読んでもらうといいかもしれません。
私も持っていますがとても良い本だと思います。演習問題も充実しています。
しかし今回の場合はC++でということなので、この本はまだまだ先でしょう。
あれこれと手を広げるよりも、C++でオブジェクト指向を身に着けるのが無難だと思いますので、
本の説明を利用するとしても、サンプルコードはC++のものを用意することをお勧めします。
(欲を言えばJavaのソースを参考に学習者にC++で作成してもらいたいですが)
また、山崎さんも書いてますが、
> オブジェクト指向とかカプセル化だとかは、
> ある程度の規模のプログラムを自分で組んでみた時に
> 重要性やコツがわかってくると思います。自分はそうでした。
> 小さいプログラムだと、なかなか便利さを実感できないですかも…?
結局こういうことなのですよね。
入門書には、車から乗用車とトラックを派生させる類のサンプルがありますが、
これをある程度の規模のプログラムに適用させる方法は書いていません。
デザインパターンのサンプルについても、自分の関わっているプログラムの
どこにどのように応用するかは、著者には判るはずがありません。
会社の先輩や同僚が教えることもある程度は可能ですが、
身に付くかどうかは最終的には本人の資質ではないかと思います。