Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
 Аватар для Tryd0g0lik
56 / 3 / 1
Регистрация: 04.05.2012
Сообщений: 240

Как дебажить на серверных файлах из VSCode?

14.08.2024, 13:31. Показов 1916. Ответов 26

Студворк — интернет-сервис помощи студентам
День добрый.
Подскажите.
Как debug-ить на серверных файлах?

Работаю на VSCode.
С front-ом вопросов нет. Server загадкой остается.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.08.2024, 13:31
Ответы с готовыми решениями:

HMVC js framework. Как выодить текст в серверных js файлах?
Есть index.html <!DOCTYPE html> <html> <head> <title>Title of the document</title> </head> <style type="text/css"> #pop { ...

Как прописать слежение за изменениями во всех файлах sass vscode
есть несколько sass файлов, проблема состоит в том что не происходит слежение за всеми sass файлами а только за style.sass в котором...

Как дебажить ошибки в Си
У меня к примеру выскакивает ошибка "Вызвано исключение по адресу 0x00007FFACC7A4203 (KernelBase.dll) в Prgct.exe: 0x40010005:...

26
 Аватар для Tryd0g0lik
56 / 3 / 1
Регистрация: 04.05.2012
Сообщений: 240
27.08.2024, 02:48  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Usaga Посмотреть сообщение
Да нет, не синоним. Авария - внештатная ситуация, с проблемами. Отладка - просто изучение работы участка кода. Не только для поиска проблем, но и просто для того, чтобы разобраться что происходит.
Об этом тебе и говорил там. Всё работает не зависимо друг от друга , под разными командами.

Там, на репе, вчера обновил.
На примере бэкенда можешь увидеть свзязь.
Для одного проекта одно ядро и 2 sub-ядра

В Ядро заливаем то, что пригодится в этих 2-х sub-ядрах (фронт и бэкенд).
Эти sub-ядра (в данном примере конкретно и только бэкенд ) получают свои зависимости.

Все работает под разными/независимыми (фронт и бэка) командами.
Все команды из корня.

Обрати внимание на package.json и атрибут workspaces/workspace.
JSON
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
  "workspaces": [
    "./src/backend",
    "src/frontend"
  ],
  "scripts": {
    "lint": "eslint . --ext jsx,ts,tsx",
    "cssstyle": "npx tailwindcss -i ./src/frontend/src/account/styles/style.css -o ./src/frontend/src/account/output.css --watch",
    "build:front": "webpack --mode=development --config ./webpack.config.js",
    "build:back": "npm --workspace=backend run build:dev",
    "watchs": "webpack --watch --mode=development --config ./webpack.config.js",
    "server:front": "webpack server --mode=development  --config ./webpack.config.js",
    "server:back": "forever -w ./dist/server/index.js",
    "lint:write": "eslint --debug src/ --fix",
    "pushing": "git push https://github.com/Tryd0g0lik/london.git master",
    "husk": "npm prepare",
    "prepare": "husky"
  },
}
Фронт не трогай. Над ним на заморачивался.

Как ты и говоришь, только ядро одно.
Цитата Сообщение от Usaga Посмотреть сообщение
Это должны быть два проекта, пускай и в одной корневой папке. Но у них не должно быть общего package.json
.
Как вариант - да.
Но дока npm затрагивает workspaces из package.json/
Значит мой вариант допустим.

То , что обычно заливается в само ядро ни как не мешает работать фронту НЕЗАВИСИМО от бэки.
Поэтому, только если заказчик потребует, то разнесу по разным.

Цитата Сообщение от Usaga Посмотреть сообщение
Ты вообще где и как с нодой работать учился?
Дока npm затрагивает workspaces из package.json/
Значит мой вариант допустим.

Учился 2 года в Нетологии. Там с практическим опытом, а не теоретики.
Они тоже настаивали на твоей версии. Но остаюсь на своём.
Ещё раз, Все работает из 1 ядра. Остальное как ты говоришь, разные команды + независимость.
Почитай workspaces.
Тебе ни кто не мешает развернуть проект одной командой или можешь двумя. Тут дело вкуса.

Цитата Сообщение от Usaga Посмотреть сообщение
Не вороти херню и отладка будет нормально работать
Ни кто не говорил, что она плохо работает. Был фактически вопрос - как видеть данные , в нужном месте при условии, что код НЕ предназначен для браузера.
0
Эксперт .NET
 Аватар для Usaga
14332 / 9426 / 1357
Регистрация: 21.01.2016
Сообщений: 35,523
27.08.2024, 02:58
Цитата Сообщение от Tryd0g0lik Посмотреть сообщение
Ещё раз, Все работает из 1 ядра.
А зачем? Какой практический смысл ты в этом видишь? Я вот вижу дополнительные проблемы и ничего более.

Цитата Сообщение от Tryd0g0lik Посмотреть сообщение
Ни кто не говорил, что она плохо работает. Был фактически вопрос - как видеть данные , в нужном месте при условии, что код НЕ предназначен для браузера.
Открой в VSCode папку с беком (где package.json бека лежит) и пробуй запускать там отладку. Но в целом совет такой: если ты решил через жопу (но допустимую с точки зрения NPM) организовать проект и работать с ним, то сам и разбирайся как там отладку прикручивать. При нормальной организации проектов оно всё работает из коробки.

Добавлено через 1 минуту
Цитата Сообщение от Tryd0g0lik Посмотреть сообщение
Поэтому, только если заказчик потребует, то разнесу по разным.
Обычно заказчику до фонаря. Ему нужно, чтобы это работало и собиралось потом.
0
 Аватар для Tryd0g0lik
56 / 3 / 1
Регистрация: 04.05.2012
Сообщений: 240
27.08.2024, 04:13  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
А зачем? Какой практический смысл ты в этом видишь? Я вот вижу дополнительные проблемы и ничего более
Тут дело вкуса.
Мне вот нравится когда через команду 'cd'. заходишь в один адрес и больше не бегаешь. Буквально всё работает с одного места и не зависимо друг от друга.
Цитата Сообщение от Usaga Посмотреть сообщение
если ты решил через жопу (но допустимую с точки зрения NPM) организовать проект и работать с ним, то сам и разбирайся как там отладку прикручивать
Ну тебя ни кто силой сюда не гнал. Сам пришел. И кто сказал, что твой вариант ни есть через жопу? Твои наставники в твои первые минуты знакомства с редактором кода? (без ответа давай).
Нет стандарта который говорит , что твой вариант (но допустимый с точки зрения NPM) есть идеал, а мой нет.
Если большинство выбрало твой вариант, это не говорит что ты есть элита.

Если желаешь высказать мысль, то вначале развивай свой диалект более широким словарным запасом.

Мне все мнения интересно почитать если этот кто-то не решил , что он есть элита, а остальное
через анус.

Добавлено через 15 минут
Цитата Сообщение от Usaga Посмотреть сообщение
Какой практический смысл ты в этом видишь?
Если ещё желание осталось, перечисли плюсы своего варианта по отношению к моему (с той картиной которую видишь). Только не забудь о словарном запасе.
1
Эксперт .NET
 Аватар для Usaga
14332 / 9426 / 1357
Регистрация: 21.01.2016
Сообщений: 35,523
27.08.2024, 05:38
Цитата Сообщение от Tryd0g0lik Посмотреть сообщение
Мне вот нравится когда через команду 'cd'. заходишь в один адрес и больше не бегаешь. Буквально всё работает с одного места и не зависимо друг от друга.
А зачем тут вообще бегать? Открой ДВЕ VSCode и всё. Это обычная практика.

Цитата Сообщение от Tryd0g0lik Посмотреть сообщение
И кто сказал, что твой вариант ни есть через жопу?
Тем, что отладка работает из коробки, как надо. Это не аргумент?

Цитата Сообщение от Tryd0g0lik Посмотреть сообщение
Нет стандарта который говорит , что твой вариант (но допустимый с точки зрения NPM) есть идеал, а мой нет.
Нет тут никаких стандартов. Есть подходы, которые создают больше проблем, а есть те, что создают меньше. Твой создаёт больше проблем.

Цитата Сообщение от Tryd0g0lik Посмотреть сообщение
Если ещё желание осталось, перечисли плюсы своего варианта по отношению к моему (с той картиной которую видишь). Только не забудь о словарном запасе.
Твой подход плох тем, что связывает два по сути независимых проекта. Представляя каждый независимый проект как модуль некого корневого проекта (который и не нужен вовсе). Общим package.json, общей корневой папкой node_modules. Создаёт проблемы, типа сложностями с отладкой. Ты это уже успел прочухать. Создание модулей (так это называется, когда есть вложенные package.json) имеет смысл на практике. Но когда твой проект логически делится на какие-то субъекты. Типа , модуль "заказы", модуль "админка", если речь о беке веб-приложения. А твой не делится. У тебя два разных приложения: бек и фронт.

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

Весь мир разработки пляшет от "разделяй и властвуй!". Крупные системы делят на сервисы и микросервисы. Классы разделяют по ответственностям. Функции раскладывают по разным папкам выражающим разные бизнес-задачи. И только ты решил, что в одну кучу всё скидывать - круто и правильно просто потому, что физически возможно и законом не запрещено. Ради бога.

Момент про cd - ерунда какая-то. Открывай каждый проект в своей IDE\терминале и не надо будет никуда "бегать". И отладка будет корректно работать. Не нравится тебе, что часть общих зависимостей дважды копируется в каждый проект забивая твой SSD? Перейди с NPM на YARN. Там вместо пакетов копируются символические ссылки на общий кеш.

А так, я не вижу от тебя весомых аргументов в пользу твоего подхода, кроме того, что "так не запрещено" и "элитарии так не делают, а я буду не как все". Зато проблемы ты со старта получаешь.

Так тебе предметно? Словарный запас устроил?
0
 Аватар для Tryd0g0lik
56 / 3 / 1
Регистрация: 04.05.2012
Сообщений: 240
27.08.2024, 08:11  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
А зачем тут вообще бегать? Открой ДВЕ VSCode и всё. Это обычная практика.
Просто вкладки раскидываю по всем мониторам из одной VSCode и не грею голову где какое дерево. Особенно удобно когда с Alt+Tab работать приходится.
Цитата Сообщение от Usaga Посмотреть сообщение
Тем, что отладка работает из коробки, как надо. Это не аргумент?
Да вопрос то был - Как отладку сделать.. Пока глючить нечему.
))
Цитата Сообщение от Usaga Посмотреть сообщение
Твой создаёт больше проблем
Хорошо. Перечисли проблемы. Я уже предлагал тебе плюсы перечислить. Давай с проблем. Я только ЗА.
На данный момент у меня нет проблем, может просто из-за того, что более легкой работы не получал.
Цитата Сообщение от Usaga Посмотреть сообщение
типа сложностями с отладкой. Ты это уже успел прочухать.
Нет ещё. Ещё раз. Сложностей НЕТ и НЕ-БЫЛО так как отладку не запускал. Доку (страницу) от VSCOde , которую кинули в начале еще не читал.

Цитата Сообщение от Usaga Посмотреть сообщение
Но когда твой проект логически делится на какие-то субъекты. Типа , модуль "заказы", модуль "админка", если речь о беке веб-приложения. А твой не делится. У тебя два разных приложения: бек и фронт.
Я понимаю к чему это клонишь. твой вариант имеет смысл (имхо) если модули из проекта имеет будущее помимо - когда оказываются в одном контейнере на сервере. А дальше про них все забывают.

Цитата Сообщение от Usaga Посмотреть сообщение
Плюс разделения тут как минимум в том, что у тебя VSCode не будет с ума сходить, не понимая что именно тут отлаживать и запускать надо.
Каждая команда не зависима. Уже говорил Везде есть конфиги с игнорами, которые в частности и обеспечивают независимость.
В репо , в дереве есть игноры + webpack и tsconfig и прочие имеют 'exclude' || 'include'.

Вот твой вариант имеет смысл когда эти модули можно применить в хотелки клиента который объявиться когда-то потом.
Цитата Сообщение от Usaga Посмотреть сообщение
IDE\терминале и не надо будет никуда "бегать".
Не удобно когда с Alt+Tab работать приходится.

Цитата Сообщение от Usaga Посмотреть сообщение
Перейди с NPM на YARN
Всегда работаю на YARN. Но в этом проекте запусти 'husky' , а он не любит YARN. Там сложности с настройкой.
Цитата Сообщение от Usaga Посмотреть сообщение
А так, я не вижу от тебя весомых аргументов в пользу твоего подхода
Как и я в твоём варианте.

Цитата Сообщение от Usaga Посмотреть сообщение
ты со старта получаешь.
Нет ещё проблем в работе. Просто не знаю как впринципе ДЕ-ЛА-ЮТ отладку. Вот когда узнаю, может и появятся проблемы. Пока, отладка это console.log или логи в файл.
Цитата Сообщение от Usaga Посмотреть сообщение
Словарный запас устроил?
Вполне.
0
 Аватар для Tryd0g0lik
56 / 3 / 1
Регистрация: 04.05.2012
Сообщений: 240
28.08.2024, 11:07  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
А зачем тут вообще бегать? Открой ДВЕ VSCode и всё.
Давай вернем к твоему варианту.

Вот тут задача.
Мой вариант тебе известен. Да и его видно там.

Теперь о конкретике.
На какие проекты сам разделишь?


Вот у меня функции регистрация и добавление заголовка в список дел это лишь директории в sub-проекте - frontend.
Я понимаю, что регистрацию и заголовок и список дел это разные проекты у тебя. Верно или как?
0
Эксперт .NET
 Аватар для Usaga
14332 / 9426 / 1357
Регистрация: 21.01.2016
Сообщений: 35,523
02.09.2024, 11:47
Цитата Сообщение от Tryd0g0lik Посмотреть сообщение
На данный момент у меня нет проблем, может просто из-за того, что более легкой работы не получал
Не работающая отладка к проблемам не относится? Публиковать проекты уже пробовал?

Цитата Сообщение от Tryd0g0lik Посмотреть сообщение
Не удобно когда с Alt+Tab работать приходится.
А зачем тебе постоянно между средами переключаться? Будто это нужно по 50 раз в минуту делать.

Цитата Сообщение от Tryd0g0lik Посмотреть сообщение
Вот тут задача.
Мой вариант тебе известен. Да и его видно там.
Теперь о конкретике.
На какие проекты сам разделишь?
На два. Фронт - отдельно, бек - отдельно. Хотя технически, на три. Ещё может корячиться проект миграции базы данных. Ещё сценарии и всякие .env-файлы для docker compose тут вырисовываются, которые я бы в корень всего этого положил.

Я бы ещё рассмотрел вариант разделения образов приложения на две штуки: один релизный (где и фронт и бек) и один dev-образ, который с вотчером будет пересобираться если что-то на фронте или беке поменяется. Мы такое уже применяли на одном проектею. Довольно удобно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.09.2024, 11:47
Помогаю со студенческими работами здесь

Как дебажить в Smarty
Здравствуйте. Не могу понять почему не работает конструкция. {foreach from=$newsList item=news} <div...

Как дебажить winmain
Сабж. Если нет консоли то куда принтэфить?

Как дебажить dynamicLinkedLybrary
Здравствуйте, я решил продолжить свое изучение с++ в сфере dll, но как я могу дебажить dll используя Visual Studio 2019. К примеру такой...

Как дебажить на Питоне?
Народ, помогите!!! Подскажите пожалуйста как дебажить на питоне! Очень нужно.

Как дебажить GWT код?
Здравствуйте, доводилось ли кому-то дебажить GWT (v.2.5) код в Intellij Idea?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Новые блоги и статьи
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром. возможно получится прикрутить интерпретатор питон для кастомизации игровой логики. что есть на текущий момент:. . .
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2. Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru