Дима, привет! В нашем случае express используется совсем мало. По сути, у нас все с ним взаимодействие ограничивается одним файлом /server/index.ts. По моей практике максимум что от него требуется, так это роутинг запросов и объекты Request и Response, то есть объект запроса из вне и объекта ответа во вне. Там уже разбор заголовков и составление заголовков. То есть сам по себе node-js из коробки не несет необходимых методов по работе с кукисами, данными форм и т.п. Это как раз и дает express-js. С node-js одновременно все просто и не просто. Просто в том плане, что это все тот же JS, так что если ты основы JS выучил, то и в основы node-js сможешь. А сложнее в том, что в чистом виде нода мало пригодна нам для работы. Нам здесь нужны всякие библиотеки для работы с файловой системой, заголовками, базами данных и т.п. При этом есть как встроенные библиотеки самой ноды (как те же fs, path и т.п.), так и внешние, которые часто используются и считаются практически маст хэв (типа того же debug). Поэтому здесь, чтобы дать какой-то список необходимых знаний, надо дорабатывать структуру родительских-дочерних технологий, чтобы это прям боле менее наглядно было. Сейчас же могу пока только посоветовать развернуть у себя @prisma-cms/nextjs-nexus и пытаться разобраться с ним. Вот тебе примерно самооценка. Если ничего не ясно, на 1 не тянешь. Если что-то можешь поправить, то 2. Если в общих чертах понятно и даже можешь схему подправить, задеплоить в базу, пересобрать API и т.п., то троечка :) Спойлер: это довольно большой объем знаний. Но, наверно, не зря я видео записывал и топик писал? https://freecode.academy/topics/obzornoe-video-@prisma-cms/nextjs-nexus
Николай, приветствую! Вопрос по уровню знаний в технологиях. Изучаю NodeJS и Express.js. Вернее - знакомлюсь. И тут прям совсем не понятно, как оценивать свой уровень. NodeJS можно углублять до седин, а Express - как мне показался, довольно компактный фреймворк. Можешь дать список, что я должен уметь с их помощью делать, чтобы честно поставить себе 2 и 3 балла? Мне кажется, что этот список будет прям очень востребован в описании технологий.
Я писал: << Дело в том, что в профиле пользователя теперь тоже есть этот уровень (всем советую зайти в свой профиль и указать его, особенно тем, кто обучается) Надо было мне скрин сразу приложить :)
Есть еще кое-что, что предстоит сделать: обсуждения в стратегиях. И тут будет минимум два типа: 1. Обсуждение самой стратегии. То есть я создал стратегию, в ней можно задавать вопросы, писать попутную информацию. Это общее. 2. Обсуждение в подключенной стратегии пользователя. Это уже менторство. То есть, допустим, я, как ментор, захожу в твою подключенную стратегию, и даю тебе советы.
Есть один момент, структурный: я подключаюсь к стратегии и развиваюсь по ней или я кликаю ПОДКЛЮЧИТЬ, если все технологии изучены на достаточном уровне? Мне ошибку выдаёт про "or: Не указан ваш технологический уровень. Сделать это можно в своем профиле." Хотя все технологмии вроде указал для стратегии https://freecode.academy/learnstrategies/ckt3zs06t34271hncycpoa3us Да, надо сразу подключать. Смысл в том, что это твоя цель. То есть ты указываешь чего хочешь достичь, смотришь чего не хватает и прокачиваешь. А уровень не указан у тебя в самом профиле. То есть указать надо не уровень отдельной технологии, а твой личный. Тебе можно сразу 3 поставить, хоть и будешь более начальные стратегии проходить ввиду смены стека.
Дима, да, сейчас это чисто субъективное мое время. Ведь здесь даже сложно определить границы необходимого изучаемого материала. У нас нет сейчас тестов-экзаменов на проверку кто что выучил. Но все же я пытаюсь определить это время боле менее реально исходя из сложности первых шагов. Согласись, в CSS и HTML сделать первые шаги совсем не сложно. Можно даже в блокноте начинать. Всего пара часов, и ты визуально уже определяешь начальные и конечные теги, атрибуты и свойства. Даже до второго уровня можно без особых сложностей подняться за неделю. А вот на третий уровень (чтобы хотя бы на джуна претендовать), надо уже значительно больше времени потратить, чтобы начать ориентироваться в каких случаях какие именно теги лучше использовать, какие в них базовые свойства и как их переопределять (и можно ли переопределять). То есть тут уже нужна практика побольше. Но в дальнейшем я планирую все же внедрить некоторые элементы автоматизации. Но это заработает в том случае, если пользователей будет больше и более оперативно будет набиваться информация. Раскрою идею: у нас сейчас есть уроки и время, затрачиваемое на прохождение уроков фиксируется и сейчас довольно точно. Если сделать привязку "Раздел уроков - Технология, уровень", то можно боле менее точную статистику собрать. Здесь останется только внедрить еще одну мою задумку - Прогресс пользователя. Что это такое? Сейчас, когда пользователь меняет у себя уровень знания технологии, мы имеем только сам факт - его уровень в текущий момент. Я же хочу внедрить как бы журнал, чтобы логировалось когда что изменилось. Имя статистику типа "Поднял 1 уровень", "Прошел столько-то уроков, затратил столько-то времени", "Поднял такой-то уровень" можно очень четкую картину получить. Ну и визуализировать это в графики.
Есть один момент, структурный: я подключаюсь к стратегии и развиваюсь по ней или я кликаю ПОДКЛЮЧИТЬ, если все технологии изучены на достаточном уровне? Мне ошибку выдаёт про "or: Не указан ваш технологический уровень. Сделать это можно в своем профиле." Хотя все технологмии вроде указал для стратегии https://freecode.academy/learnstrategies/ckt3zs06t34271hncycpoa3us