タグ

ブックマーク / m-hiyama.hatenablog.com (2)

  • メイヤー先生の偉大さとCommand-Query分離 - 檜山正幸のキマイラ飼育記 (はてなBlog)

    バートランド・メイヤー(Bertrand Meyer)先生は、とにかく偉大です。局所的には、無理筋な例え話や強引な主張で僕らを笑わしてくれるのですが、全体としては実にまったく正しいことを言っています。 メイヤー先生の主張のなかでも、僕がもっとも影響を受けて、はてしなく役立っているのは「Command-Query分離の原則」です。オブジェクトやシステムのインターフェイス&実装を「CommandとQueryに分けろよ」という提案。Commandは値を持たず、副作用(つうか、主作用だけど)だけを持ちます。Queryは副作用を持たず値だけを返します。 Commandとは何であるか、Queryとは何であるか、副作用を持つ/持たないとは何であるか -- これらの概念は、日常直感に頼るだけではなくて、正確に定義することができます。 Queryが副作用を持たないことから、同じQueryを二度発行すると、同

    メイヤー先生の偉大さとCommand-Query分離 - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • シェルのリダイレクトを「こわいものなし」というくらい完全に理解しよう - 檜山正幸のキマイラ飼育記 (はてなBlog)

    Java BlockingQueueで遊ぶ:パイプラインごっこ」でパイプラインの話をしたので、来の、つまりUnixのパイプやリダイレクトを少し調べてみました。 たまに話題となる some-command >file 2>&1 と some-command 2>&1 >fileの挙動の違いについて、「シェルはコマンドラインリダイレクトの指定を右から左に解釈実行する」なんて説明が見つかりました。んなバカな! パージングは左から右にするものですよ。パーズツリーを逆順にたどることはできるけど、そんなことする必然性はなんにもないよ。 次の記事を読むと、「右から左」なんて事情じゃないことが分かるでしょう。 UNIXの部屋 検索: リダイレクト シェルのリダイレクトにまつわる失敗 さてここでは、複雑なリダイレクト処理も完全に理解できる処方箋を示しましょう。例えば、次のコマンドラインが何をするか分かる

    シェルのリダイレクトを「こわいものなし」というくらい完全に理解しよう - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • 1