Задать вопрос

Как скрыть структуру таблиц postgresql от разработчика в nest.js?

Всем привет, столкнулся с ситуаций: мне нужно предоставить разработчику доступ к nest.js проекту.
Вопрос: как мне скрыть структуру таблиц бд и вообще структуру бд, но что бы разработчик мог вести разработку на локальном пк ?
Сама бд находится на удаленном сервере.
Так как на данный момент, у меня есть например файл user.entity.ts - а это структура таблицы user в бд и можно спокойно создать себе такую бд и слать меня далеко…
  • Вопрос задан
  • 49 просмотров
Подписаться 1 Простой 3 комментария
Пригласить эксперта
Ответы на вопрос 1
@rPman
'К сожалению' красивого решения тут нет.
Единственный способ скрыть структуру базы данных - это поставить между ней и приложением прослойку, подменяющую эту структуру. По факту это форма обфускации, только не кода а логики.

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

Самое 'простое' направление - перенести в эту прослойку абсолютно всю логику приложения, оставив 'снаружи' только отображение. Грубо говоря вместо таблиц users,documents,rights дать объекты-страниц/форм - авторизация пользователя, чтение, создание и редактирование документов. Помню для веб очень удачно с этим справлялись xml/xslt (между сервером и приложением гуляет xml, а в xslt описывается интерфейс, т.е. View в идеологии MVC), поддержка которых встроена в браузер до сих пор...

Правда по факту большая часть работы будет именно в этой прослойке, и не понятно что тогда останется разработчикам.

p.s. так ли важны и ценны эти структуры данных? стоит ли их сохранение затраченных усилий?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы