タグ

2010年11月15日のブックマーク (2件)

  • トップ

    Clean Craftsmanshipをいただきました。いつものボブおじさんのClean XXXシリーズ。 ボブおじさんの書籍シリーズの良いところは、自分は以下のように見ている。 前提知識が少なくても出来る限り理解できるように練られている。 高尚な話ではなく、現場叩き上げの話が中心。 なんとなく、これおかしいよなぁと薄々感じつつも、現場の空気で言えないようなことを、ズバっと言ってくれる(Clean Codeでの「コメントは害悪」など)。 今回も個人的に面白かった部分を取り上げたい。 第2章 この章は基的にTDDの実践をサンプルを使って詳しく記載している。基的な部分から解説されているので、TDDについては初めてという初心者の人でも全く問題なく理解できるだろう。前提知識不要というのは素晴しい。 「デバッガーが得意になることを目指すべきではない」 テストコードを数行書き、エラーやテスト失敗を

    ttmmrr
    ttmmrr 2010/11/15
  • Super Technique 講座~longjmpと例外

    プログラムの流れを制御する手段として、いわゆる「構造化構文(for とか if とか)」、悪名高い「goto 文」などがあるのは周知のことだが、かなり特殊なものとして、「setjmp, longjmp」による「非ローカル分岐」と呼ばれるものがある。この「非ローカル分岐」は「非ローカル」と言うだけあって、ある関数の中から、別な関数に制御を移すことができたりする。まあ、そのために乱用すべきではなく、注意して使わなくてはならないライブラリ関数なのだが、実はこれは JavaC++ で言語の上で実装されている「例外」の基礎となるものである。だから、まずこの標準ライブラリ関数「setjmp, longjmp」について解説しよう。 → Java 講座の「例外」 setjmp, longjmp とは どうやって実現してるの? setjmp/longjmp の利用例~インタプリタ 補追1:setjmp