この記事はKMCアドベントカレンダー 9日目の記事です。
昨日の記事は、id:asRagi さんの【KMCAdventCalendar2016】アプリ・ゲーム制作者のためのエフェクト制作入門(Effekseer) - らぎメモでした。
Introduction
KMC 5回生のhatsusatoです。
最近は学校が忙しくてあまり趣味のコーディングができていなかったので、ネタがなくて困っていました。そのことを部室でこぼしたところ、終焉のC++のことを書くとよいと言われ、なるほどと思ったので書きます。
What is the 終焉のC++?
C++は"expert friendly"*1とも言われるように、初心者にはとても習得の難しい言語です。まともに書けるようになるまでには長い道のりがあります。
終焉のC++とは、その名の示すとおり、C++についての見識を深め、よりよいC++プログラマになるために、C++の参考書を輪読する勉強会です。KMC内では終焉と略されて呼ばれたりします。僕はこの勉強会において、他人より長くC++に触れてきた経験を活かして、参考書の内容を強調したり、否定したり、*2コメントしたりするチューターの役割をしています。単に読み進めるだけでなく、どの部分を重視すべきかという視点を与えるのは、とても価値のあることだと思います。
History
これまでこの勉強会の存在は、外部にほとんど宣伝されることなく*3来たので、この機会にちょっとした経緯を書いておきます。
終焉のC++は2013年に初めて始まりました。なお、この終焉のC++というタイトルは、「はじめての...」*4などといった初心者向けの内容と比べて、もっと深い内容を扱いたいという思いから、割と適当な感じでつけたものです*5。このころは僕を中心とした少人数でEffective C++を読んでいました。殆どの部分を自分ひとりで発表していたので、とても疲れた記憶があります。Effective C++を読み終えた後は、少人数つまり需要が少なかったこともあって、この勉強会はそこで一度終了します。
その後ブランクを挟んで2015年、新入生の間にC++の勉強会の需要を見出したので、終焉のC++は再開しました。メンバーがほとんど新入生だったので、また一からEffective C++を読むことにしました。十分な人数を確保できたので、担当をローテーションして発表してもらう輪読形式で行うことができました。
今年の終焉のC++は、去年からの続きとして、前期にEffective STLを、後期にEffective Modern C++を読んでいます。
Future
現在は、まもなくEffective Modern C++も読み終えようというところ*6に来ているので、そろそろ次に何の本を読むか考える必要があります。 これまでEffective...系の本ばかりを読んできているので、まだ読んでいないC++の参考書はたくさんあります。 しかし、新入生に対して、C++の学習を進める上で欠かせない*7Effective C++を啓蒙する活動もまた重要です。 その一方で、Effective C++には今となっては古い記述や間違いになってしまっている記述*8も多々あるので、非常に悩ましいです。
また、KMC 5回生となった今、いつまで主導権を取って勉強会を進めるのかという問題もあります。 まだしばらくはチューターとして活躍するつもりですが、C++に詳しい新入生*9も入ったので、いずれは引き継いでいかないとなあなんて思ったり。
いずれにせよ、今後も引き続きC++の啓蒙活動は行っていくことでしょう。
Conclusion
終焉のC++とは、KMC部員をC++の"expert"に近づけることで、C++に対して"friendly"な人を増やす勉強会です。
明日のKMCアドベントカレンダーはnonamea774さんのroot就任おめでとうの予定です。