タグ

ブックマーク / zerobase.hateblo.jp (3)

  • DCIアーキテクチャへの違和感から見えてくるユースケースDSL - 石橋秀仁(zerobase)書き散らす

    DCIとDDD DCIアーキテクチャ - Trygve Reenskaug and James O. Coplien - Digital Romanticismを読んだり、DCI meetup w/ @jcoplien for Rubyistsに参加したりして、DCIアーキテクチャについて考えてきた。 DCIはメッセージパッシング指向だ。そのSmalltalk的なオブジェクト指向の原理はいいけど、実装が嫌だ。 そもそも、DCIアーキテクチャ提唱の目的は、メンタルモデルのセマンティクス・ギャップを埋めることだ。DDDの「ユビキタス言語」も、メンタルモデルのセマンティクス・ギャップを埋めるための要素であり手法だ。だから、ふつうにDDD(ドメイン駆動設計)をやればいいと思った。 DCIへの疑問 DCIでは、「オブジェクトのアイデンティティ」にこだわりすぎていることで、アーキテクチャが複雑になって

    DCIアーキテクチャへの違和感から見えてくるユースケースDSL - 石橋秀仁(zerobase)書き散らす
  • 関数型とオブジェクト指向という一見相反するプログラミングパラダイムの併用について理解した - 石橋秀仁(zerobase)書き散らす

    最近、ScalaとSmalltalkを触っていて思ったこと。 一見すると、関数型は「データ」より「処理」を重視しているように見える。 関数型プログラミングパラダイムそのものは「副作用のない関数」の合成による演算の恩恵を最大限に享受するパラダイムだ。副作用がないので並列演算の高速化に向いている。 昨今のマルチコア化やクラスタ化のメリットを最大に活かすには関数型プログラミングパラダイムの導入が鍵だろう。プロセッサ単体での性能向上が頭打ちになってきたのだから、並列演算に対応したプログラミング方式へのシフトは不可避だろう(ただし高性能が要求されない分野は除く)。 関数型プログラミングパラダイムは、データよりも処理を重視したパラダイムのように見える。 一見すると、オブジェクト指向は「処理」より「データ」を重視しているように見える。 オブジェクト指向プログラミングパライダムは、(Smalltalk的に

    関数型とオブジェクト指向という一見相反するプログラミングパラダイムの併用について理解した - 石橋秀仁(zerobase)書き散らす
  • 分散オブジェクト・アーキテクチャ/ドメイン指向アーキテクチャ - 石橋秀仁(zerobase)書き散らす

    これから述べる分散オブジェクト・アーキテクチャに近いフレームワークやアプリケーションの実装がすでにあれば教えて頂けると助かります。 背景:ゼロベースの管理会計システムを開発するよ。 (凡例:追記と削除) 目的 ドメイン駆動設計(DDD)を原理的に突き詰めたアーキテクチャによって、オブジェクト指向プログラミングの作業から、インフラストラクチャ層に関する配慮がほとんど不要になる。SQLもデータスキーマ設計も不要になる。 といっても、Ruby on RailsのActiveRecord的な話ではないので、誤解なきよう。むしろ正反対。リレーショナル・データベースを使わない。 ドメインのオブジェクトをシンプルに書けばシステムが実現するようになる。一言で言えば、「GOOS/DDD原理主義者のためのフレームワークが欲しい」という話。 ウェブ・アプリケーションの三層アーキテクチャ再考 ウェブ・アプリケーシ

    分散オブジェクト・アーキテクチャ/ドメイン指向アーキテクチャ - 石橋秀仁(zerobase)書き散らす
  • 1