« 転職後2ヶ月が経って | Main | 白い巨塔 »

2003.12.06

C++のお勉強

昨日はあっさり寝てしまった。3日坊主とはよく言ったものですねぇ。
ではさっそくこの2ヶ月で目を通した本についてまとめてみます。

C++効率的最速学習徹底入門 標準プログラマーズライブラリ
このシリーズで「Javaの謎、落とし穴」という本が、個人的にすごく良かったので、
最初の入門書として選択。STLやTemplateなどがしっかり解説されており、
これを読んだ当初は「なんだJavaとあんま変わらんなぁ」という印象を受けた。
しかし、現場ではTemplate(STL含む)原則禁止、例外機構(RTTI)禁止という
運用が行われていることが判明してこの甘い認識は打ち砕かれた。
組み込みはやっぱ甘くない・・・・。

Effective C++ アスキーアジソンウェスレイシリーズ―Ascii Addison Wesley programming series
職場のコーディング規則で読むことが勧められていたので早速買ってみる。
ざっと流し読みをしたがあまりC++の基礎がわかっていない自分に気づく。
もう数冊基礎本を読んでから読み直すことにした。

C++プログラミング入門
オライリー本。結構丁寧に説明されていたのだが、終始C言語との比較という
観点で書かれているのが不満だった。C++の入門本ってCからの移行という形が多いなぁ。
この本でプリミティブな部分については固めることができたと思う。

C++実践プログラミング
やっとこの本でC++の基礎に不安がなくなった。他の本が文法の説明ばかり
しているのに対してこの本はC++のコーディングスタイルや独特の流儀など
実務的な側面から書いてあったので非常に役立った。
載っているサンプルもわかりやすい。最初からこの本一冊でよかったかも。


C/C++による組み込みシステムプログラミング
シリアルケーブルを使ったリモートデバックやICEなど組み込み特有の
開発方法について書いてありよかった。
後半の独自OSのくだりはいまいち。LEDのON/OFFサンプルあたりまでが参考になった。
期待していた効率重視のコーディングについては内容薄すぎ。


オブジェクト指向における再利用のためのデザインパターン
プログラムデザインのためのパターン言語―Pattern Languages of Program Design選集
デザインパターンはJavaによる実装ではいったので、C++による実装も知っておこうと
思い立ち2冊読んでみた。GOF本オリジナルではC++で説明されていたんですね。


ここまでで総括すると、コンストラクタ、デストラクタやコピーコンストラクタ、
Operation演算子の扱いなどC++特有の落とし穴さえ気をつければ
Javaと同じクラス設計方法で大きな間違いは起こらないということがわかった。
ただ、ポインタ渡し、値渡し、参照渡しの区別はしっかりTPOによって
使い分けないとドツボにはまりそう。
あとは実践で経験を積んでいけば問題ないと判断してここで一旦打ち止め。
しばらくはEffectiveC++を読み直してみることにする。

さらに読むとしたらこれですかねぇ。C++の詳しい知人は
この本を読まない本当にC++を理解することはできないと言ってたので・・・。
プログラミング言語C++第3版 アスキーアジソンウェスレイシリーズ―Ascii Addison Wesley programming


実は最初にこれを買ったのは秘密です。思い上がりすぎ(反省)。
でもC++に未来があるとしたらこの方向しかない気がします。
JDK1.5でジェネリック指向な実装がなされるという噂でしたが、
今のSUNはそれどころじゃないですね。
Modern C++ Design―ジェネリック・プログラミングおよびデザイン・パターンを利用するための究極のテンプレート活用術 C++ In‐Depth Series

|

« 転職後2ヶ月が経って | Main | 白い巨塔 »

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/1288/10828

Listed below are links to weblogs that reference C++のお勉強:

« 転職後2ヶ月が経って | Main | 白い巨塔 »