Общая служба CRUDL [closed]

Я пишу общий сервис CRUDL в качестве основы для множества простых объектов, которые аналогичным образом работают с базой данных. Я хотел бы написать что-то вроде этого:

export class CRUDLService<C, R, U, D, L, T> {
  async create(fields: C, connection: Connection): Promise<T> { ... }
  async read(fields: R, connection: Connection): Promise<T> { ... }
  async update(fields: U, connection: Connection): Promise<T> { ... }
  async delete(fields: D, connection: Connection): Promise<T> { ... }
  async list(fields: L, connection: Connection): Promise<T> { ... }
}

Но мне это кажется тяжелым по типам.

Есть ли альтернативы этому подходу?

Это сработает?

0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *