2011-01-01から1ヶ月間の記事一覧
プログラミングHaskell作者: Graham Hutton,山本和彦出版社/メーカー: オーム社発売日: 2009/11/11メディア: 単行本(ソフトカバー)購入: 14人 クリック: 503回この商品を含むブログ (117件) を見る今朝はあまり時間が取れなかったのではじめの0.3歩くらい…
プログラミングHaskell作者: Graham Hutton,山本和彦出版社/メーカー: オーム社発売日: 2009/11/11メディア: 単行本(ソフトカバー)購入: 14人 クリック: 503回この商品を含むブログ (117件) を見る今日から「プログラミング Haskell」を読むことにします。…
付録C の最後までです。 eval に任意の文字列(ユーザからの入力など)を渡せてしまうなど論外 文字列の内容を検証するのは抜けがおこり得る どうせ文字列を解析するのなら意味解析してメソッドを使ったほうがいい rescue での例外捕捉によるガードする書き方…
引き続きワーストプラクティスについてです。 クラスメソッドでクラス名をハードコードすると継承して使う時にこまることがある 継承よりも Mix-in 今日はここだけ。
Ruby ベストプラクティスの最後を飾るのは 付録C Rubyワーストプラクティスです。やってしまいがちな失敗について述べたものです。「こうしたほうがいい」というのにくらべて「こうするとよくない、失敗しがち」という知見は実践的なものになりがちなのでと…
引き続き 付録B です。ほぼ既にどこかで読んだライブラリなのですっとばしていきます。 strscan digest mathn require "mathn" すると整数除算が Rational を返すようになる sqrt(-1) #=> Complex(0, 1) Vector, Matrix csv pstore json { "json_class" : "M…
付録B は標準ライブラリの紹介です。ほぼ既にどこかで読んだライブラリなのですっとばしていきます。 pp (pretty printer) p に対する inspect のように pretty_print メソッドを定義することで表示をカスタマイズできる pretty_print の引数 printer の tex…
長い付録へ突入します。まずは 1.8 と 1.9 に対応する書き方の話題です。 本書では 1.8.6 と 1.9.1 を対象にしているのでちょっと古い(今なら 1.8.7 と 1.9.2) RUBY_VERSION で分岐したくなるけどできるだけ避ける オープンクラスを利用して 1.9 からメソッ…
第8章後半、RubyGems と Rake タスクについてです。 gemspec を書く Gem::Specification.new のブロックでいろいろ情報を記述 files にパッケージに含めるファイルリストを記述 executables に bin にインストールするユーティリティを記述 test_files にテ…
第8章後半、RDoc についてのところです。 RDoc による APIドキュメント生成 rdoc 自体の記述方や使いかたはレシピ本で読みましたね 本書ではさらにドキュメントに何を書くべきかといった内容に踏み込んでいます rdoc ディレクティブについて プライベートな…
第8章中盤です。Ruby製のプロジェクトのディレクトリ構成などの慣習について書かれています README に書くこと そのプロジェクトが何をするものなのか、概要 簡単な使い方のドキュメント。詳細は API ドキュメントへ 簡単なインストール方法 インストール方…
第8章ではドキュメントやプロジェクトのディレクトリ構成などあまり他に類のないトピックをあつかっているようです。やや長いので3日くらいに分割して読むくらいのペースで行きます。 まずは Haml を例に上げてレビューしていく README.rdoc に Haml とは何…
第7章は多言語化やローカライゼーションの話題みたいです。さくっと読みたいと思います。「プログラマのための文字コード技術入門」を先に読んでおいて良かった。 csv ライブラリの例 解析のために使う正規表現を対象の文字列のエンコーディングに合わせてか…
第6章の後半です。 不具合調査の原因追求の手法について Kernel#p, Object#inspect などを使ったいわゆる print デバッグ Object#class, Object#instance_variables, Object#public_methods などのリフレクションを利用してオブジェクトを調査する Object#in…
2011年の早朝読書会開始します。引き続きRubyベストプラクティスを読み進めます。第6章はデバッグ技法がテーマみたいです。 「デバッガなしでもいろいろできる」みたいに表現されていますが裏をかえすといいデバッガが存在しないとも言えるわけですよね Enum…