Perlネタ
http://d.hatena.ne.jp/naoya/20050809/1123563794
こちらの改変ネタ。Lv1,2と7〜10は言語とあんまり関係ないので略。
レベル3: プログラムをゼロから作成したいが、ある種の教育が必要だとわかっている。C++ を学ぶのに適した書籍を推薦して欲しいと思っている。このレベルのプログラマの中には、プログラミング言語C++をチュートリアルだと思って手に入れ、その内容を読破しようとして、重いトラウマに苦しむ者がいるかもしれない。
レベル4: new[] とdelete[] を初めて学び、
有用性よりも厄介さを感じている。ポインタの意味について思案している。std::stringは知っているが、templateの意味は知らない。C++のニュースグループに参加しているが、自分に関係のないトピックについての大量の議論に圧倒されている。
レベル5: class、継承、STLについて基本的な理解がある。皆が言っているので、const参照、仮想デストラクタおよびprivateコピーコンストラクタを使用している。多くの人たちがこのレベルを超えないのは、
たとえメモリリークしていても、長時間動作するデーモンプログラムを除けば、ほどんど何でもできるからである。このレベルか次のレベルでは、参照のことを知っている。
レベル6: C++ の講習を受けている人もいる。templateの使い方を知っており、この知識を利用して強力なgenericプログラムを作成できる人もいると知っている
が、自分ではあまり書かない。次のレベルに進んで、この能力拡大がどこまで行くのか見たいと思っている
レベル7: オブジェクト指向モジュールを自分で作成できるようになり、コードを再利用することの喜びをようやく感じている。自分がコンパイラに何を指示しているのか理解しているので、どのような機械語が吐かれるかある程度想像がつく。時折Segmentation Faultを見かけることはあるが、大体どこで落ちているのか検討がつくし、そうでなくても落ち着いてcoreをgdbに食わせる余裕がある。
すでに解脱しかけており、C++が素晴らしい言語に思えてくる自分に戸惑いを隠さない。
※ネタですので気にしないでください。