اشتراک‌ها
طراحی دیتابیس یک Workflow Engine

In this series, we're going to walk through the database design of our Workflow app and show each part of the solution was implemented, and finally how they were all wired together 

طراحی دیتابیس یک Workflow Engine
اشتراک‌ها
طراحی Entity پایه برای کلاس های Domain

How you shouldn’t implement base classes

public class Entity<T>
{

  public T Id { get; protected set; }

}

Motivation for such code it pretty clear: you have a base class that can be reused across multiple projects. For instance, if there is a web application with GUID Id columns in the database and a desktop app with integer Ids, it might seem a good idea to have the same class for both of them. In fact, this approach introduces accidental complexity because of premature generalization. 

There is no need in using a single base entity class for more than one project or bounded context. Each domain has its unique path, so let it grow independently. Just copy and paste the base entity class to a new project and specify the exact type that will be used for the Id property. 

طراحی Entity پایه برای کلاس های Domain
اشتراک‌ها
الگوهای طراحی در Typescript
Here are the implementations of the following design patterns in TypeScript
Creational
Singleton
Abstract Factory
Factory Method
and ...
الگوهای طراحی در Typescript
اشتراک‌ها
مجموعه Awesome Domain-Driven Design

A curated list of Domain-Driven Design (DDD), Command Query Responsibility Segregation (CQRS), Event Sourcing, and Event Storming resources 

مجموعه Awesome Domain-Driven Design