Какой алгоритм разработки клиент-серверного приложения?
=========================================================

 Сразу оговорюсь, суть вопроса может показатся глупой, но:   

обясните мне, какие правильные шаги я должен сделать чтоб разработать полноценное клиент-серверное приложение сам, имея три технологии: Angular(клиент), Node.js(сервер), PostgreSQL(бд)  

  

Обясню проблему. Начал пилить проект. Создал клиент, потом в том же проекте начал пилить сервер. Потом подумал, наверное это не правильно, и перенес сервер на оттдельный проект. Не знаю правильное ли решение.  

  

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

  

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

  

Я самоучка, по этому не понимаю некоторых нюансов. Если что опыт в самом програмировании есть, но в другой сфере(не клиент-сервер без прямых запросов и подключений к БД) 

 Для БД при инициализации и разработке могут использоваться миграции.   

[В чем суть миграций БД?](https://qna.habr.com/q/422737)  

[Миграции БД в nodejs](https://qna.habr.com/q/60464)  

  

Не знаю как в ноде, но в ASP.NET можно и предпочтительно делать проект используя подход Code First, который предполагает использование миграций для генерации таблиц из кода в БД. 

 Во-первых успеха! Кстати, в Винница на заводе "Терминал" я начинал свою карьеру в 1986.  

  

Насчет миграций вам написали абсолютно правильно.   

А в целом - или идти по roadmaps, типа [https://www.freecodecamp.org/news/how-to-become-a-...](https://www.freecodecamp.org/news/how-to-become-a-full-stack-web-developer-in-2020/) , [https://dev.to/ender\_minyard/full-stack-developer-...](https://dev.to/ender_minyard/full-stack-developer-s-roadmap-2k12).  

И <https://12factor.net/> конечно.  

Или написать минимальную апликацию самому, а потом уже смотреть-думать, что и как улучшать с учетом best practices.  

  

Признание: я уже много лет не разработчик, а DevOps. 

 начни с чистых языков JS CSS HTML PHP без ничего  

для БД используй Sqlite  

  

сделай так простой проект учебный  

и только после этого переходи на фреймворки и сложные БД