タグ

設計に関するterurouのブックマーク (10)

  • PostgreSQLアンチパターン

    37. 積み重なるWHERE句 -- 有効なアカウントのブログを取ってきたい場合 SELECT * FROM blog INNER JOIN users ON users.id = blog.user_id AND users.delete_flag = 0 WHERE blog.delete_flag = 0 38. 積み重なるWHERE句 -- 有効なアカウントのブログを取ってきたい場合 SELECT * FROM blog INNER JOIN users ON users.id = blog.user_id AND users.delete_flag = 0 WHERE blog.delete_flag = 0 ユーザの削除フラグを見る 39. 積み重なるWHERE句 -- 有効なアカウントのブログを取ってきたい場合 SELECT * FROM blog INNER JOIN users

    PostgreSQLアンチパターン
  • イミュータブルデータモデル(入門編)

    6. Step1 エンティティの抽出 発送担当者が受注リストをもとに、商品の在庫を確認し、在庫が あれば商品を発送する。 ① 要求仕様の「動詞」を抜き出しエンティティとする。 ② ①に関わる「名詞」を抜き出しエンティティとする。 ③ エンティティ間の関連に線を引く ④ 属性や候補キーも分かる範囲で書いておきます。 間違い! この段階で実装をプロパティファイルにするとか、Enum にするとか決め打ちでエンティティとして表さないのはや めましょう。 まず、はじめにエンティティを抽出します。

    イミュータブルデータモデル(入門編)
    terurou
    terurou 2014/10/21
    時系列に沿ったデータモデル設計はRDBMS以外にも通用しやすい概念なので重要すよね
  • Cassandra Data Modeling Best Practices, Part 2

    In the first part, we covered a few fundamental practices and walked through a detailed example to help you get started with Cassandra data model design. You can follow Part 2 without reading Part 1, but I recommend glancing over the terms and conventions I’m using. If you’re new to Cassandra, I urge you to read Part 1. September 2014 Update: Readers should note that this article describes data mo

  • Cassandra Data Modeling Best Practices, Part 1

    This is the first in a series of posts on Cassandra data modeling, implementation, operations, and related practices that guide our Cassandra utilization at eBay. Some of these best practices we’ve learned from public forums, many are new to us, and a few still are arguable and could benefit from further experience. September 2014 Update: Readers should note that this article describes data modeli

  • MVVMパターンと他のUIパターン

    Please select the category that most closely reflects your concern about the presentation, so that we can review it and determine whether it violates our Terms of Use or isn't appropriate for all viewers.

  • クラウド時代にこそCOBOLなベテランから学ぶこと - 急がば回れ、選ぶなら近道

    言うまでもなく、COBOLなベテランは非同期バッチ処理の達人が多い。 日ではこの手のベテランが多い。 まず世界でも例がないほどだと思う。 クラウド時代はむしろ非同期処理のオンパレードであり、 学ぶべき点はたくさんある。 こと運用レベルや、対障害設計は神レベルの人が多いので まじでノウハウは受け継ぐべし。 個人的に達人系の技のポイントをまとめておく 1.コンテキストを外部から与える 一種のDI的な考え方である。 但し、あくまで運用目線であることが重要。 通常のDIは開発効率を目的に考えていることが多く見受けられるが 非同期処理についてのDI的な考えは運用効率性の重視だ。 対障害設計をする上で、もっとも大事なことは 「コンテキストがまっさきに見えることだ。」 これはDI的は発想とはまるで違う。 今走っている処理は、 ・どういうモノで、 ・何を想定していて、 ・どういうスケジュールになっていて

    クラウド時代にこそCOBOLなベテランから学ぶこと - 急がば回れ、選ぶなら近道
    terurou
    terurou 2011/06/13
    1と3は関数型の考え方に通じる。2と4が考えられない人はきのこれないだろうなぁ
  • http://1978th.net/tech/promenade.cgi?id=79

  • 関数型言語でのデザイン手法

    Takashi Miyamoto @tmiya_ オブジェクト指向はOOPの他にOOA,OODなど上流工程向けの方法論があるのだが、関数型言語についてもFPの他にFA,FDがあるのだろうか?誰か適切な論文/教科書とか知りませんか? 2010-05-30 09:26:38 Ikegami Daisuke @ikegami__ 探してみます。でも強い型付けか、弱い型付けかで、まるっきり異なるでしょう RT @tmiya_: オブジェクト指向はOOPの他にOOA,OODなど上流工程向けの方法論があるのだが、関数型言語についてもFPの他にFA,FDがあるのだろうか?誰か適切な論文/教科書とか知りませんか? 2010-05-30 09:30:40 Ikegami Daisuke @ikegami__ @tmiya_ 個人的な感想ですが、強い型付けのプログラミング言語で開発を行う場合、実装の前に、全体

    関数型言語でのデザイン手法
  • モデルは世界を表現していない (arclamp.jp アークランプ)

    システム開発は情報のモデル化 システム開発とはなにか、と聞かれたら「情報をモデルとして扱うこと」と答えるようにしています。オブジェクト指向としてモデリングを説明すると、たとえば車であれば色や馬力といった属性と、走るや止まるといった振る舞いに分けることができるわけです。ソフトウェアというのは、情報という見えないものをモデリングすることによって扱えるようにする手法というわけです。 最近あらためて感じるのは、あくまでもモデルを扱っているに過ぎないんだなということです。以前は「オブジェクト指向であれば現実世界を表現できる」みたいなことをいっていたのですが実際には不可能なことです。モデルの中の車を”当に”走らせようとしたらガソリンがエネルギーに変換されるところまでモデリングしないといけなくなります。そんなことはできないので「謎の力」に登場してもらうことでモデリングされた車は走ることができるように

    terurou
    terurou 2007/09/08
    現実世界をモデリングするのではなく、現実世界にあてはまるモデルを考える。
  • dpinfo.html

    目次 はじめに Abstract Classパターン Abstract ClassパターンRuby版 (by 助田雅紀さん) Balkingパターン Before/Afterパターン Futureパターン FutureパターンRuby版 (by 助田雅紀さん) Generation Gapパターン Hook Operationパターン Hook OperationパターンRuby版 (by 助田雅紀さん) Immutableパターン Marker Interfaceパターン Monostateパターン MonostateパターンRuby版 (by 助田雅紀さん) MonostateパターンPerl版 (by 宮川さん) Null Objectパターン Null ObjectパターンとSingletonパターン Producer-Consumerパターン Sharableパターン Singl

  • 1