Параметр функции - идентификатор против объекта - PullRequest
2 голосов
/ 23 апреля 2019

У меня есть служба, которая возвращает данные пользователя по его идентификатору.Пользователь уже сохранен в запросе (сеансе) - нет необходимости извлекать его каждый раз.

Вопрос в том, что является лучшим методом для параметра.Идентификатор пользователя (SOLID) или пользовательского объекта (дополнительная проверка / ввод).

Пример:

//...

// this
public async getByUser(user: User) {
  return await Transaction.findAll({
    where: { userId: user.id }
  });
}

// or this
public async getByUser(userId: number) {
  return await Transaction.findAll({
    where: { userId }
  });
}

1 Ответ

2 голосов
/ 23 апреля 2019

Либо.В самом деле.Просто сохраняйте правильное наименование.

Чем более декларативны имена ваших функций, тем меньше путаницы

//...

// this
public async getByUser(user: User) {
  return await Transaction.findAll({
    where: { userId: user.id }
  });
}

// or this
public async getByUserId(userId: number) {
  return await Transaction.findAll({
    where: { userId }
  });
}
...