Sunday, May 24, 2009

Command Query Separation : Cara berfikir design yang berbeza

Bila anda create Person dan persistence/simpan record kedalam mana-mana Persistence Storage (normally RDBMS) adakah sepantas kilat anda perlu view list record Person? Dan adakah anda ingin beberapa saat selepas anda masukkan record Person kedalam DB, anda mengharapkan orang lain yang search akan dapat record tersebut? Berapa penting business requirement ini kepada design anda?

Ini adalah pertanyaan yang boleh ditanya apabila hendak design sesuatu system yang melibatkan creating dan reporting (search/view record).

Command Query Separation membawa conceptual architecture yang agak berlainan tetapi bukan baru. Topik ini telah lama diperbincangkan cuma bukan mengguna nama Command Query Separation dan kebanyakkan adalah untuk working paper yang berkaitan dengan "Distributed Application". Martin Fowler ada artikel yang ada kena mengena dengan topik Command Query Separation , beliau menulis tentang EagerReadDerivation .

0 comments: