タグ

2006年12月31日のブックマーク (2件)

  • メソッド、ブロック、クロージャ | METAMATE

    Rubyの一番のウリと言えばブロック引数メソッドでしょう。 メソッド(関数)とクロージャとブロックの関係についてちょっと掘り下げてみました。 普通のメソッド定義はdef...endで定義します。 def hello name puts "hello, " + name end hello "taro" => hello, taro Rubyでは関数は全てクラスに属するので関数=メソッドです。 トップレベルで定義をした場合はObjectクラスのメソッドになります。 self.class => Object Object.method_defined? :hello => true メソッドはファーストクラスではありません。 ファーストクラスとは以下の4つを満たす言語要素のことです。 1. 名前を付けられる 2. 関数の引数に渡せる 3. 関数の戻り値にできる 4. データ構造の

  • 未来の転職が、過去にさかのぼって現在の自分を有能にする - 分裂勘違い君劇場

    転職、すなわち中途採用の面接では、自分が過去に取り組んだ仕事について質問されます。 しかも、ごまかしがきかないよう、具体的な行動内容を、細かく聞かれます。 広く浅く訊くのではなく、何カ所か適当に選んで、狭く深く訊いていきます。 たとえば、エンジニアなら、過去に自分が開発したシステムにおいて、 なぜ、そのフレームワーク、ツール、ライブラリ、DBを使ったのか? 他に、どのようなフレームワーク、ツール、ライブラリ、DBが候補として 上げられたのか? 他の選択肢と比べて、どの様な短所と長所があるのか? なぜ、他の選択肢ではなく、それを選んだのか? 使う前に、どのように性能評価・検証したのか? なぜ、ある部分を汎用的に作り、別の部分をハードコーディングしたのか? なぜ、その設計だと、生産性が高く、トラブルのリスクやメンテナンスコストが低くなるのか? もっと低くできる余地として、どのようなものが考えら

    未来の転職が、過去にさかのぼって現在の自分を有能にする - 分裂勘違い君劇場