Лучшие практики для создания базовых моделей в NodeJS

Я работаю над проектом NodeJS API. У меня есть много моделей (пользователи, проекты, команды, ...) и для каждой из этих моделей у меня есть:

  • Методы моделей (геттеры и сеттеры)
  • Запросы к БД (я использую Couchdb)
  • Проверка схемы

Мой первый вопрос:

Должен ли я создать несколько модулей для запроса БД и методов класса (чтобы отделить уровень домена от уровня персистентности)?

Мой второй вопрос: "Как мне управлять созданием модели?"
Несколько случаев:

случай 1 (конструктор init с идентификатором):

var user = new User({id: 1}); 
user.fetch(function(err, user) {
   user.get('name'); // George
});

случай 2 (без метода конструктора):

user.fetchById({id: 1}, function(err, user) { 
   user.get('name'); // George
}

case3 (Различает модули БД и доменный уровень):

userDB.fetchById({id: 1}, function(err, data) { 
   var user = new User(data);
   user.get('name'); // George
}

Или, может быть, есть другие лучшие практики? Примечание: я часто вижу людей, создающих модули, которые представляют модели и которые выставляют только запросы БД.

С наилучшими пожеланиями.

0 ответов

Другие вопросы по тегам