プログラミング言語C++ (アスキーアジソンウェスレイシリーズ―Ascii Addison Wesley programming series)

プログラミング言語C++ (アスキーアジソンウェスレイシリーズ―Ascii Addison Wesley programming series)

第3章 標準ライブラリひとめぐり

知らないことなど一瞬の問題なのだから、勉強などに時間を浪費するな。 Hobbs

実務の世界をすこしのぞいてみると、「うーん、そうだよなって、思えることがあります。」
ある仕事の現場で、「こんな知識があったらな。」「こんなやり方を知っていたらな。」
そういうことを思うことはよくあります。ガーンもうだめだと落ち込んでしまうのですが。
でも、どうにかなってしまうということもあるわけですよね。
どうしようもないときは、その場で「調べる」
そういうことになるわけです。
最近、ネットに接続したPCがどこにでもあるようになりましたから、こういう臨機応変なことが前よりもやりやすくなったのではないかな。
ただ、やはり、完ぺき主義の名残をどこかで残すと、やはり、「もしもの事態に備えて」の勉強は、やはりやってみたいなとか。
暗記を要求されるものであれ、解法を要求されるものであれ、
忘れたころに、思いっきり、必要とされても、ぱっと、そのときの備えを生かすというか。
そういう備えが大事なこともあるかと考えます。長年の蓄積というのは、時間の経過だけではやはり得られるものではないでしょう。
その場、その場で、「こんなことを知っていると、役に立つのだな」
そういう意識をもち、それをそのままにして、忘却のかなたにおいていくのではなく。
きちんと、どこかで、まとまった時間のインプットをとると。
私も、「だったらいいな」
という感じで積み上げた課題がたくさんあります。

高校生のときに、履修することが要求される自然科目系統の学習をしっかりやっておきたいな。(なぜなら、私は文系型の受験勉強をしていたから。)
大学の教養課程レベルの物理や数学は、やっておきたいな。(だって、それを勉強することが、大学に入る目的であり、受験勉強はその手段だから。)
中学受験の難関私立の傑作難問集は、きっちりとフォローしておきたいな。(このレベルで求められる家庭教師は、需要がないわけではない。)
古文という名前でひとくくりされている、文学作品をきっちりと読む時間がほしいな。
TOEICの勉強とか、してみたいな。(やはり英語のテストのスタンダードだと思いますから。)
有力な家庭教師が指定した学習参考書リストを読破・消化してみたい。
ゲームプログラマになる前の覚えておきたい技術」の参考文献は読破したい。


まあ、いってしまうと、無限にやりたいことが出てきてしまうので、人間は、限られた人生をいきていますから、どこかで限定を加えないといけないわけです。
Hobbsというのは、Thomas Hobbs、あのリバイアサンを記述した大物政治思想家ということでいいのかな。
この人は、イギリスが、清教徒革命やらなにやらで、国をあげて、支配者が、次々と変わる中で、三日天下の君主が、次の日には、あの世にいっているというような
ことを、日常でみてきた人と、どこかの本で書いてありました。
血なまぐさい現実をみてきた人間は、「剣はペンよりも強い」という経験的な事実をそのまま受け入れてしまう部分があるでしょう。
彼自身は超がつくインテリだったはずなのですが、どこかで、Bookを頼りにする人間の生き方に無力な何かを感じていたのでしょうか。
コンピュータ・プログラミングというのは、知性的な作業なのか、頭でやる土木作業なのか、よくわからないところがあります。
人づての話を聞く限り、なにやら、後者のような気がします。
Hobbsの微妙な心の揺れを、ここで採用するというのは、まことに、時宜を得ているのかもしれません。といっても、この書籍が翻訳されて、かなりの時間が経過しているわけですけど。
この書籍の執筆者に電子メールを送信して、このHobbsの記述がどこからの出典なのかを聞くというのも、なかなかいいことかもしれません。
そんなことも企画として、暖めておいたらいいのではないかなとか。
そんなことを思います。
それにしても、とても含蓄のある言葉ですね。
とある友人に聞いたところ、医学部に在籍している学生が、それはもう、びっくりするほど、日夜の勉学に励んでいるとのこと。
Hobbsが聞いたら、どういうのでしょうか。私は、「今のうちに、しっかり勉強しておきなさい!」と、案外、まじめな教師の顔をして、いうのではないかと。直感では思います。
不勉強なお医者さんというのは、やはりこわいですから。

以下、Wikipediaから、コピペしたものです。
どれくらい信用がおけるプロフィールなのかは、知る由もありません。これくらいで許してください。
どうやら大学のポストを得ることなく、世をさったようです。

トマス・ホッブズ(Thomas Hobbes, 1588年4月5日 - 1679年12月4日)は、イングランドの哲学者であり、近代政治思想を基礎付けた人物である。
イングランド国教会聖職者の子として生まれる。1588年、スペインの無敵艦隊襲来というニュースにショックを受けた母親は産気づき、予定より早く出産した。このため「恐怖と共に生まれた」といわれる。オックスフォード大学を卒業した後、キャヴェンディッシュ男爵家(のちのデヴォンジャー伯爵家)に家庭教師として仕える。ピューリタン革命で1640年からフランスへ亡命し、皇太子(チャールズ2世)の家庭教師を務める。最もよく知られる著作『リヴァイアサン』は亡命中に執筆し、1651年帰国の年に刊行された。ベーコンやガリレオ、デカルトらと交友があった。
1655年に円積問題の解を見つけたと公表し、数学者のジョン・ウォリスとの論争に発展した。ホッブズは終始この問題の本質を理解することができず、自分の解の誤りを認識できずに死ぬまで激しい論争を続けた。
形而上学においては唯物論の立場に立ち、その考えは『物体論』において展開された。また、デカルトから『省察』の批判を書くよう頼まれた時はその立場から批判を行ったが(デカルトは他の哲学者や神学者にも批判を頼み、ホッブズのそれは第三論駁と呼ばれる)、自身の哲学への不理解と解したデカルトからの反応は冷淡であった。


さて、本文ですが。やはりここも「総論」の意味合いがとても強いので、あらかじめ、C++全体の構成をわかっていないと、読んでいてつらいものが
あります。いまひとつ、ターゲットにしている読者の層がわかりにくい書き方かなと思いました。
とにかく、最初は、全体を「概観」しましょうと。そういうことなのだと思います。
反復子などは、もっと具体的な例があるとわかりやすいのではないかとか。
それと、この書籍に書かれているソースコードは、そのままコピペしても、コンパイルができない。

「冒頭に、書いておかないといけない、「決まり文句」は省略します。」

気持ちはわからないではないですが。あまりこういうことはしないでほしいです。
最近の、解説本でこんな乱暴なことはしないと思いますが。
なんか、権威となっているテキストの悪いところのような気がする。
これも、他の分野の学問でもありそうな話です。

3-1 イントロダクション
3-2 Hello,World!

これはお約束。「春はあけぼの〜で古典の教科書が始まるのと同じようなものです。

3-3 標準ライブラリ名前空間
3-4 出力
3-5 文字列
  3-5-1 Cスタイルの文字列→手持ちのC++のレファレンスで調べても、はっきりと説明なし。
3-6 入力
3-7 コンテナ →これもわかりづらいです。小林先生の書籍で復習する必要があります。どれも、「これならわかる」シリーズに掲載されていたな。わかりづらかったからパスしていたのに。
  3-7-1 vector
  3-7-2 範囲チェック
  3-7-3 list
  3-7-4 map
  3-7-5 標準コンテナ

3-8 アルゴリズム →お、よく聞く言葉登場。基本的に、この節は全体の通読が終わってから、戻ってくる必要があるなと思いました。

  3-8-1 反復子の使い方 →これも、小林先生の本に解説が書いてあった。でも、わかりにくかった。やはり復習する必要があります。
  3-8-2 反復子の型
  3-8-3 反復子と入出力
  3-8-4 走査と叙述関数
  3-8-5 メンバ関数を使うアルゴリズム
  3-8-6 標準ライブラリのアルゴリズム

3-9 数値演算 → 平山本で、数学の教科書の次に、これをやるための参考文献が掲載されておりました。プログラミングの基礎にケリがついたら、今度は、この分野がまっている・・・。

  3-9-1 複素数
  3-9-2 ベクタ演算

3-10 標準ライブラリの機能
3-11 アドバイス

今回、この本を読んでいく記録を書いていくにあたり、参考にしているのは、この書籍です。(実は購入はまだしていません。)

『資本論』も読む (幻冬舎文庫)

『資本論』も読む (幻冬舎文庫)

本屋さんで立ち読みをしただけです。
Wikipediaから、コピペします。

宮沢 章夫(みやざわ あきお、1956年 - )は、劇作家、演出家、作家、放送作家。遊園地再生事業団主宰。京都造形芸術大学助教授。静岡県掛川市生まれ。多摩美術大学美術学部建築科中退。
大学在学中、映像演出研究会で8ミリ映画の制作をする。在学中より放送作家として活動を始める。1985年、大竹まこと、きたろう、斉木しげるいとうせいこう竹中直人らと演劇ユニット「ラジカル・ガジベリビンバ・システム」を結成する。
1990年に、作品ごとに俳優を集めて演劇を上映する劇団「遊園地再生事業団」を作り、主宰。 2000年から3年間、活動を休止していたが、2003年に再開した。
1992年に発表した「ヒネミ」で岸田國士戯曲賞を受賞。 小説「サーチエンジン・システムクラッシュ」は、第122回芥川賞、第13回三島由紀夫賞の候補にもなった。
2005年早稲田大学客員教授就任。

最近は、「勉強本」というものがとてもブームになっています。
どうやって、読むべき本を探していったらいいのか?
そんなことをトピックにした雑誌・書籍も本屋にいくと、やまほどあります。
そして、どの書籍にも取り上げられていることですが。
「お金を出して、買った本を読むというインプットをどうやってアウトプットにつなげるのか。アウトプットの形に実現させるのか?」
そういう問題意識についての論考が数多くなされています。
私は、この宮澤先生の「資本論」の料理の仕方、アウトプットの仕方に、とても新鮮な驚きをうけました。
アウトプットどころではなく、彼の書いた書籍は、現実にアマゾンでも売られているし、本屋で買うことも出来ます。
「マネタイズ」をされているところまでいっているのです。
彼は、「資本論」というテキストを、ビジネスマンとして、しっかりと利用したということです。これは、別に神聖なる由緒正しきテキストを冒涜しているとかそういうものではなく、
ただ、ただ、その合理性に脱帽したいと思いました。
こういう発想は、学生時代には、なかなかもてないのかもしれません。
最近は、ブログというメディアが、誰の手にもいきわたりはじめているので、どんな勉強もアウトプットとセットでなされるべきという風潮が生まれているのかもしれません。
かくいう、私も、懐かしい学生時代には、「資本論」のテキストをながめていたものでした。
忘れもしない、ちょうど、長野オリンピックが開催されていたとき、なんとか、全3巻読破することができたときの感動は、今でも忘れられません。
いまにして、かんがえてみると、こういうことが快感なのだということを、自分の適性として、しっかりと把握していたら、自分は大学というものを違った形で
使っていたのではないかと思います。
そう、学生時代は、アウトプット、どうやって、「食っていくのか?」こういう切実な意識で自分の人生、キャリアパスを構築するという発想がありませんでした。

宮澤さんは、この書籍を、実は「資本論」の第1巻だけを読むことで、書き上げたふしがあります。
というより、引用のページは忘れましたけど、彼がどこかでそのように書いていたのを見ました。
自分は、演劇を生業としているから、別に、プロフェッショナルなことは、書けなくていいとか。
そこは、プロデューサーらしく、彼は、社会思想の研究家を味方につけて、自分のたりない部分は補って、注釈などをつくっていました。
彼は、「資本論」というテキストに立ち向かっていくのに際して、自分の足りないところは、どこにあるのかということをキチンと自覚したうえで、

「資本論」も読む

という発想にいきついていると思いました。
私は、自分がこれから、読書をしていくとき、この精神を忘れないようにしたいと思いました。

私は、彼のテキストをそんなに読んではいないのですが、おそらく、あれだけ、長い間、いろいろな人に読まれて、コメントされてきたテキストなので、
彼オリジナルな読み方というものが、はしばしに見られるということは、そんなにないのではないかと思いました。
筆者自身も、それは自覚しているのではないかなと。
そうであるにもかかわらず、彼は、「資本論」というテキストへのお金と時間の投資を、見事にマネタイズしているのです。
私は、仕事を生み出すという精神は、こういう発想から生まれるのではないかなと思ったのです。

だから、私のようなプログラムの初心者が、このプログラミング言語 C++ 第三版」を読み進めて、何かを、書き散らすことで、なにかオリジナルな
ものが生まれるのかといったら、そんなわけはないわけです。
ましてや、この本や、「資本論」のように「思想」「ビジョン」をあつかったものではなく、「技術」を扱ったものです。
究極のところ、たんなるマニュアルでしかないわけですから。
書いてあるテキストの持ち味がどうこうというのではなく、「うまいこと説明ができているのかどうか」ただ、それだけの話なわけです。
でも、ところどころ、文学的な香りがしないでもないし。
「権威」が、ごく一部にあるテキストですから。なんとなく、宮澤式の料理の仕方にはまるのではないかと思いました。

宮澤先生は、おそらく、自己規定をエンターテイナーであると思っていらっしゃるのではないでしょうか。

C++という言語は、「ゲームプログラマになる前に覚えておきたい技術」の筆者が、自身の講義を組み立てる上で、指定言語にしました。
日本が誇る、(最近はそうでもないようですが。)デジタル・エンターテインメントが記述されている言葉についての代表的なテキストですから、
おそらく、「資本論」も読む の精神が何がしかの糧になるのではないかなと。
すでに、思いつきで書いていますが。そんな風に思うのであります。

あまり、突き詰めていません。
私は、本の執筆のスタイルを真似してみたいとこれだけ真剣に思ったことはありません。
私は、偶然、ロールモデルというものを見つけてしまったのかもしれません。

ある対象に、本格的に一緒になるということが出来ず。
ただ、「も」の精神で、ちょっとたわむれるだけ。そんな距離感をどこまでももっていたいという、どこか大人になりきれない、中途半端な自分の姿が、
この欲望を突き動かしているような気がします。
不思議だな。どうして、こんなことをしたいと思っているのかな。
「書く」という行為は、「伝える」ための行為です。私は、いまこうして、キーボードをたたいている。
なにかを、書き残している。どうしてこんなことをしているのだろう。
ただ、思いつくままに、書いている。
プログラミングの本について、自分で、コードを打つというわけでもなく、書いている。

資本論のすべてを読まなくても、本を作り上げて、販売することは、不可能ではない。

この事実について、自分は、どうしても真剣に向かい合いたいと、私はそう思ったのです。

この企画を思いついたとき、私は、ひとつの、書籍を思い出しました。

田中角栄研究―全記録 (上) (講談社文庫)

田中角栄研究―全記録 (上) (講談社文庫)

たしか、学生時代、このテキストにも手を出したなと思いました。
そして、このテキストについては、あとがきかなにかで、忘れられないことが書いてあったのです。

要するに、このテキスト・本で、筆者は、田中角栄という政治家をたたいたわけです。
ありとあらゆる取材の手段を使って、彼のお金の集め方について、たたいわわけです。
そして、この政治家のお金の集め方、稼ぎ方は、当時、代表的なマスコミの政治部に在籍していた記者の人たちに
とっては、珍しくもなんともない、「常識」だったのだと。
そんなものを、わざわざ本に出して、世の注目を浴びるなどというのは、バカらしいと。
このときから、確か、筆者は、すでに、フリーランスだったはずです。
彼は、そういう大手マスコミの「スキ」をうまく、ついて、この作品を自分の出世作にしたということもあったのでは
ないでしょうか。
そう、玄人といわれている人にとって、めずらしくもなんともないことでも、
そこまで、いかない、100%の「素人」にとっては、声を大にして、いってもらって、盛り上がってしまうことが
どこかに転がっているのかもしれない。

宮澤さんにせよ、立花さんにせよ。
私は、なにかを世に出すというときの「成功のTips」として、この玄人さんと、素人さんの間にある知識・情報のギャップというものが
あるように思うのです。
では、私は、このエントリを書いていく中で、このギャップを、プログラミングの中に発見することが出来るのか。
この取材をするのに、外に出て行くことは必要ない。
もちろん、プログラミングに詳しい人から、ヒアリングをすることは必要なのではありますが。
それは、それでなんとかしたいなと思っています。でも、基本的な自己完結的なモードで、作品を書き上げることが出来ます。

書いていく中で、自分がやりたいことが一体何か。
そういうことを突き詰めるということがどうやら実験的に私がやりたいことなのかもしれません。
どうして、そんなことがしたいのか。
それは、私が、自分は一体、なにがしたいのかをよくわかっていないという負い目があるからかもしれません。

どこかで、どれだけ、くだらないものでもいいから。
自分のコントロールが及ぶ範囲で、
残せるアウトプットを残したい。僕は、いまそんな気持ちでいっぱいでいる。

感情と理性は、僕がこのエントリーを書いているときに、つながっているのだろうかって、考える。
私には、意欲というものが存在しているのかどうかということを考える。

僕は、意欲をもって、心のそこからやりたいことをしているのだろうかって、考える。

そう、考える。考える。
自分の中を見つめる。
そう、考えるのではない。見つめている。

自分の心の奥底にわけいって、心の声を聞こうとしている。

こういうのを、自分探しと、人はいうのだろうかな。
それとも、違うような気がするけど。

とにかく自分はいま、言葉を探している。

国語の先生もやったことがあるけれど。
どうやら、僕は、いきていくための日本語を使うことが出来ないでいるようだ。

でも、僕は、なんとかして、生きていくための日本語を使ってみたい。

生きていくための日本語を自分の中で育てたい。
そうでないと、僕は、僕が何者であるのかを把握することが出来ない。

追記 2011年5月26日
革命的オリーブ少女主義者同盟演説 - 安全ちゃんオルグ日記
2008年2月27日に更新されております。
どこかでみたような気がします。
たしか、料理のブログでみたのだろうと。
カール・マルクス共産主義宣言」のテキストのパロディ
パロディというものは、何かと何かを結びつける発想なんだなということを
再確認。
彼女は、「少女文化」「現代女の子文化」と「マルクス」を結びつける
という離れ業をやった。
どうも、雑誌が大好きな人らしい。
「資本論」というテキストの冒頭は「商品論」から始まっていたと記憶している。
「雑誌」というのは、「商品広告」を、読者に読んでもらうための手段という
一面がある。
その商品にまつわる「女性心理」というものの、一端が彼女の数の少ない珠玉の
ブログの1本1本からほとばしるように感じます。

なんか真面目に書いていますけど、最初のこの動画を見たときは
ひっくり返りそうなほど笑いました。
彼女がやってのけたことは、「もしドラ」の筆者のやってのけたことと同じだと
思います。
もしドラ」は、マルクスの代わりにドラッカーをソースにしたわけです。
「オリーブ」という雑誌のかわりに、「高校野球」「萌えキャラ」「小説という形式」
と使ったわけです。
もしドラ」の筆者は、職業的エンターテイナーですから、安全ちゃんより
こういうパロディの「商業化」というものを徹底的に洗練されたものにした。
彼が狙いをつけたのは、「ビジネス」だったわけです。ドラッカーが政治に
興味をもっていたのかは、私は彼のテキストを読んだことがないのでわかりませんが。
安全ちゃんは、「政治」と「消費文化」を結びつけたパロディを生み出した。
ハックルベリーに会いに行く
もしドラ」の発想の口火をきったのはおそらくこのブログだったのでしょう。
そしてこのエントリーが「上梓」されているのは2008年7月11日。
なんと安全ちゃんのほうが半年ほどはやい。
もしドラ」の仕掛け人は男性であり、バーチャルな「女性」を使って
世に作品を送り出した。
ところが、安全ちゃんはリアル「女子」こんな違いもまたおもしろい。
男性が「ビジネス」
女性が「政治」
これがまたおもしろい。
そして僕は、2009年8月29日。
夏休みがそろそろ終わるというタイミングかな。
安全ちゃんより1年半ほど、遅かったです。先取特権は成立しませんね。
学生時代に慣れ親しんだカールマルクス(内田先生と、宮沢さんからのインスピレーションかな?)のテキストと「ゲーム・プログラミング」を結びつけるパロディを意識したのだと
思う。
ゲーム・プログラミングという切り口から、コンピュータ・サイエンスや物理数学の教育というものについて、掘り下げたかったのだろうか。
そして、自分の生産性というものを身につけたかったのかな。
甦るマルクス (内田樹の研究室)
2008年5月23日

マルクスが「プチ・ブーム」らしい。
『赤旗』からの電話取材で、「このところのマルクス・ブームと日本共産党再評価の動きについて」訊かれる。
たしかに、マルクスについて言及される回数がこのところ心持ち増えたような気がする。少なくとも、私自身の書きものに「マルクス」という語の出現頻度が上がっているのは間違いない。

そうだったのか。
安全ちゃんもそういうブームの上にのっかっていたのだね。