InfoQ ホームページ デザインパターン に関するすべてのコンテンツ
-
Microservices — 字義と精神
「分離サービス」のパターンになるマイクロサービスは、パターンを理解 (「スモール」と「分離」) し、開発者が目的と一致する特定の設計上の決定を行うことで、最大限に活用することができました。記事では、適切な実装と不十分な実装について説明します。「スモールサービス」と「分離サービス」または「字義 (Letter)」と「精神 (Spirit)」です。
-
サーバレスシステムのデザインパターン
さまざまな抽象化レベルのデザインパターンを簡単に紹介した後、この記事では、パイプとフィルタのパターンなど、サーバレスシステムに特に適したいくつかのパターンを紹介し、AWS EventBridgeを使用したPOCの実装を示します。
-
C#のAPI設計のモデルとインターフェース
従来のMVC、MVP、MVVM、Web MVCの中で共通の要素はモデルです。ビュー、コントローラー、プレゼンターについて解説している記事はたくさんあります。しかし、モデルについてはほとんど取り上げられていません。この記事では、モデルを取り上げ、モデルをが実装する.NETのインターフェースについて解説します。
-
Azure対応Cloud Design Patternsを活用したエンタープライズクラウドシステム構築の「基礎と実践」
エンタープライズのクラウドシステム構築を大きく前進させた要素の1つに、クラウドデザインパターンの進展がある。2014年1月には、米マイクロソフトがWindows Azureに対応した「Cloud Design Patterns」の正式版を公開して注目を集めている。一般社団法人Azure Council Experts(ACE)会員企業として活動するFIXERとネクストスケープのセッションでは、前後編の形で、エンタープライズクラウドシステム構築におけるクラウドデザインパターン活用の基本スタンスと実践事例が語られた。
-
ドメイン・フレームワークのススメ(第2回)
簡単なゲームを題材として、ドメイン・フレームワークの考え方を数回の記事に分けて解説。第2回はドメイン・フレームワークの抽出と、ドメイン・フレームワークを利用して再構築されたモデル(分析モデル)のイメージを解説。
-
ダブル・ディスパッチ~ 典型的なオブジェクト指向プログラミング・イディオム ~
オブジェクト指向でのプログラミングでよく用いられる典型的なプログラミング・テクニック(イディオム)のひとつである「ダブル・ディスパッチ」について、具体的な例とUML図を用いて解説。
-
デザインパターンの自動化
コード1行あたりの総所有コストが高いにもかかわらず、定型的なコードの多くは、まだ書かれており、その多くは、よりスマートなコンパイラを使って回避することができる。実際、ほとんどの定型的なコードは、デザインパターンを繰り返し実装することに起因している。しかし、これらのデザインパターンのいくつかは、非常によく理解されており、もし我々がコンパイラにそれを教えることができれば、それらは自動的に実装することがでる。
-
Windows デバイスで開発するタッチユーザーインターフェイス
スマートフォンを中心としたマルチデバイスにおけるタッチユーザーインターフェイスへの対応は、既に必須の項目となりつつある。また、9月に新しいWindows である Windows 8 が発表され、その環境が” touch first ” となり、���倒的多数のPCにおいても検討が避けられない状況となっている。本記事では、Windows デバイスにおける UX のベースとなっている「メトロ」というデザイン言語を掘り下げながら、既存環境を意識しつつもどのようにタッチユーザーインターフェイス開発に取り組んでいくべきであるかについて解説していく。
-
アジャイルアーキテクチャの相互作用
アーキテクトがアジャイルとアーキテクチャのプラクティスを1つにまとめて、機敏にビジネスとアーキテクチャの両方を実現しつつ、実際的にこれら2つの優先順位のバランスをとる方法について、James Madison氏が論じています。
-
RIA のアーキテクチャーとデザインパターン (リッチクライアント編)
この記事では、Flex アプリケーションのアーキテクチャー概要を扱います。以下の内容は、Flex アプリケーション構築の際に一般的に起こる、と思われる問題への対応例を紹介することが目的です。Flex アプリケーションを常に同じ形で構築することを推奨するものではありません。 クライアント側とサーバー側を含めたアプリ全体のアーキテクチャーについては別記事 (アプリ全体編) をご覧下さい。
-
コンテキストマッピングによる戦略的ドメイン駆動設計
オブジェクト指向モデリングに対する多くのアプローチは、アプリケーションの規模が拡大し、複雑さが増すにつれてスケールしなくなりがちである。「コンテキストマッピング」のテクニックは、巨大なソフトウェア開発プロジェクトにおいて複雑さを管理するのに用いられ得る。この記事では、著者のAlberto Brandolini氏が、「境界つきコンテキスト」が持つ多くの側面に関して議論し、ソフトウェアプロジェクトにおける重要な意思決定を支える上でどのように「コンテキストマップ」を構築するべきかを示す。