勉強日記

チラ裏

PoEAA

PoEAA ch12 Dependent Mapping

martinfowler.com Dependent Mapping How It Works When to Use It Dependent Mapping Has one class perform the database mapping for a child class. 「他のオブジェクトのコンテキストでしか現れないオブジェクト」もある 例: アルバムに対するトラック …

PoEAA ch12 Association Table Mapping

martinfowler.com Association Table Mapping How It Works When to Use It Association Table Mapping Saves an association as a table with foreign keys to the tables that are linked by the association. 多対多ではForeign Key Mappingを適用できな…

PoEAA ch12 Foreign Key Mapping

martinfowler.com Foreign Key Mapping How It Works delete/insert back pointer 差分 循環参照について When to Use It 英語 Foreign Key Mapping Maps an association between objects to a foreign key reference between tables. オブジェクトの関連は…

PoEAA ch12 Identity Field

martinfowler.com Identity Field How It Works Choosing Your Key Representing the Identity Field in an Object Getting a New Key When to Use It 英語 Identity Field Saves a database ID field in an object to maintain identity between an in-memo…

PoEAA ch16 Coarse-Grained Lock

martinfowler.com Coarse-Grained Lock How It Works When to Use It Coarse-Grained Lock Locks a set of related objects with a single lock. オブジェクトはグループとして編集される 例: 顧客と住所 グループを構成する1要素を編集する際には、グループ…

PoEAA ch16 Implicit Lock

martinfowler.com Implicit Lock How It Works When to Use It 英語 Implicit Lock Allows framework or layer supertype code to acquire offline locks. Offline Lockは、1行忘れただけで全部台無しになる read lockの取得が漏れると、最新のセッションデ…

PoEAA ch16 Pessimistic Offline Lock

martinfowler.com Pessimistic Offline Lock How It Works When to Use It 英語 Pessimistic Offline Lock Prevents conflicts between concurrent business transactions by allowing only one business transaction at a time to access data. ビジネスト…

PoEAA ch16 Optimistic Offline Lock

martinfowler.com 【補】用語 Optimistic Offline Lock How It Works When to Use It 英語 【補】用語 セッションとビジネストランザクションがほぼ同義扱い Optimistic Offline Lock Prevents conflicts between concurrent busines transactions by detect…

PoEAA ch11 Unit of Work

martinfowler.com Unit of Work How It Works When to Use It Unit of Work Maintains a list of objects affected by a business transaction and coordinates the writing out of changes and the resolution of concurrency problems. DBへの変更をともな…

PoEAA ch17 Database Session State

martinfowler.com Database Session State 【補】語彙 How It Works When to Use It 英語 Database Session State Stores session data as committed data in the database. 【補】語彙 レコードデータ ビジネストランザクション完了後の完全なデータ セッシ…

PoEAA ch17 Server Session State

martinfowler.com Server Session State How It Works Java Implementation .NET implementation When to Use It 英語 Server Session State Keeps the session state on a server system in a serialized form. How It Works 最も単純な形としては、アプリ…

PoEAA ch10 DataMapper

martinfowler.com Data Mapper How It Works Handling Finders Mapping Data To Domain Fields Metadata-Based Mappings When to Use It Example Data Mapper A layer of Mappers that moves data between objects and a database while keeping them indepe…

PoEAA ch17 Client Session State

martinfowler.com Client Session State How It Works When to Use It 英語 Client Session State Stores session state on the client. How It Works 大なり小なり使うことになる 最小 セッションIDを保持、セッション情報本体はサーバサイドで持つ 最大 Cl…

PoEAA ch15 Remote Facade

martinfowler.com Remote Facade How It Works Remote Facade and Session Facade Service Layer When to Use It Remote Facade Provides a coarse-grained facade on fine-grained objects to improve efficiency over a network. OOPにおいて、複雑なロジ…

PoEAA ch14 Application Controller

martinfowler.com Application Controller How It Works When to Use It Further Reading Application Controller A centralized point for handling screen navigation and the flow of an application 画面の出し分けに関して複雑なロジックがある場合 一…

PoEAA ch14 Template View

martinfowler.com Transform View How It Works When To Use It 英語 Transform View A view that processes domain data element by element and transforms it into HTML. MVCのVの責務をデータ変換と捉える 入力: DomainやData Sourceから取ってきたデー…

PoEAA ch14 Front Controller

martinfowler.com Front Controller How It Works Web handler Controller Hierarchy When to Use It Further Reading Example Front Controller A controller that handles all requests for a Web site. 複雑なWebサイトでは、リクエスト処理時に似たよう…

PoEAA ch14 Template View

martinfowler.com Template View How It Works Embedding the Markers Helper Object Conditional Display Iteration When to Process Using Scripts When to Use It Example 英語 Template View Renders information into HTML by embedding markers in an …

PoEAA ch14 Two Step View

martinfowler.com Two Step View How It Works When to Use It Example: Two Stage XSLT (XSLT) Example: JSP and Custom Tags (Java) Two Step View Turns domain data into HTML in two steps: first by forming some kind of logical page, then renderin…

PoEAA ch14 Page Controller

martinfowler.com Page Controller How It Works When to Use It 英語 Page Controller An object that handles a request for a specific page or action on a Web site. Webエクスペリエンスのほとんどは静的ページ 1パス1ファイルの関連 動的ページになる…

PoEAA ch13 Repository

martinfowler.com Repository How It Works When to Use It Further Reading コード例 英語 Repository Mediates between the domain and data mapping layers using a collection-like interface for accessing domain objects. Domain ModelとData Mapper…

PoEAA ch13 Metadata Mapping

martinfowler.com Metadata Mapping How It Works When to Use It コード例 Metadata Mapping Holds details of object-relational maping in metadata. O/Rマッピングのコードのほとんどは、フィールドの対応づけ DBのテーブルのフィールド メモリ上のオブ…

PoEAA ch12 Single Table Inheritance

martinfowler.com Single Table Inheritance How It Works When to Use It コード例 英語 Single Table Inheritance Represents an inheritance hierarchy of classes as a single table that has columns for all the fields of the various classes. RDBは…

PoEAA ch12 Serialized LOB

martinfowler.com Serialized LOB How It Works When to Use It Example: Serializing a Deparment Hierarchy in XML Serialized LOB Saves a graph of objects by serializing them into a single large object (LOB), which it stores in a database field…

PoEAA ch15 Data Transfer Object

martinfowler.com Data Transfer Object How It Works Serializing the Data Transfer Object Assembling a Data Transfer Object from Domain Objects When to Use It Further Reading Example: Transferring Information About Albums (Java) Example: Ser…

PoEAA ch12 Class Table Inheritance

martinfowler.com Class Table Inheritance How It Works When to Use It Furhter Reading コード例 Class Table Inheritance Represents an inheritance hierarchy of classes with one table for each class. 1クラス1テーブル 抽象クラス含む How It Work…

PoEAA ch12 Concrete Table Inheritance

martinfowler.com Concrete Table Inheritance How It Works When to Use It Example: Concrete Players(C#) 英語 Concrete Table Inheritance Represents an inheritance hierarchy of classes with one table per concrete class in the hierarchy. 具象ク…

PoEAA ch11 Identity Map

martinfowler.com Identity Map How It Works Choice of Keys Explicit or Generic How Many セッションに1つ クラス/テーブルにつき1つ Where to Put Them When to Use It Example: Methods for an Identity Map Identity Map Ensures that each object get…

PoEAA ch11 Lazy Load

martinfowler.com Lazy Load How It Works 種類 Lazy Initialization Virtual Proxy Value Holder Ghost When to Use It Example: Lazy Initialization Example: Virutal Proxy Example: Using a Value Holder (Java) Example: Using Ghosts (C#) 英語 Lazy …

PoEAA ch12 Inheritance Mappers

martinfowler.com Inheritance Mappers How It Works When to Use It コード例 英語 Inheritance Mappers A structure to organize database mappers that handle inheritance hierarchys. @startuml abstract class Mapper { + insert(DomainObject) + upda…