Товар больше не доступны в связи с прекращение сотрудничества с автором. Выберите подходящий курс из похожих.
Автор(ы): Владилен Минин
В курсе предоставлена информация от самых основ, от установки самого NodeJS, до деплоя готового приложения и размещения его на сервере. Кульминацией практической части курса является создание большого статического интернет-магазина и сложного REST API приложения.
В этом блоке рассказано про курс, посвященный NodeJS. Вы узнаете про план работы на данный курс, в каком порядке проходить блоки, что будет сделано, какие знания вам нужны и так далее. После рассказано про то, что такое NodeJS и почему выгодно и целесообразно изучать эту платформу, какие инструменты пригодятся и как установить NodeJS на компьютер.
В видео Вы узнаете про автора, про курс, про то, что вам потребуется знать для прохождения данного курса и дальше узнаете, в каком порядке и как проходить блоки курса.
В видео рассказано про то, что такое Nodejs, почему следует изучать данную платформу и какие преимущества Вы получаете, разрабатывая приложения на Nodejs.
В видео показано как установить Nodejs на компьютер и как убедиться, что программа успешно установлена.
В ролике Вы увидите написание скрипта на платформе Nodejs.
В ролике рассказано, какие редакторы кода лучше использовать, разрабатывая на Nodejs и какой редактор с какими расширениями будет использоваться автором на протяжении курса.
Данный блок является теоретическим, где вы познакомитесь с NodeJS и узнаете, как писать первые программы. Вначале будет рассказано про стандартные модули, которые есть в платформе и как с ними работать. Вы узнаете про то, что такое пакетный менеджер NPM и как с ним взаимодействовать. В результате прохождения этого блока курса будет реализовано несколько web-серверов, работающих просто с данными и с HTML-страницами.
В данном уроке Вы узнаете про то, что такое пакетный менеджер NPM, какие задачи он выполняет и увидите, как с помощью него проинициализировать приложение и установить дополнительные модули.
В ролике Вы увидите, какие глобальные объекты есть на платформе в отличии от клиентского JavaScript и как работает система модулей.
Начиная с данного урока вам будут показаны основные модули, которые встроены в Nodejs. В этом уроке будет рассказано про модуль Path с помощью которого можно очень просто взаимодействовать с путями.
В этом видео будет рассказано, как пользоваться стандартным модулем FS, который предназначен для работы с файлами и папками.
В видео Вы увидите, как пользоваться стандартным модулем OS, который предназначен для того, чтобы определить операционную систему и другие параметры компьютера.
В ролике будет разобран стандартный модуль EVENTS, который предоставляет возможность создавать классы типа EventEmitter, что впоследствии даст лучшее понимание того, как работают некоторые элементы в Nodejs.
В ролике будет разобран новый модуль, с помощью которого возможно создавать свои собственные HTTP-сервера.
В видео Вы узнаете, как пользоваться дополнительным инструментом Nodemon, который существенно упростит и ускорит разработку на Nodejs.
В ролике Вы увидите пример создание простого HTTP Web-сервера. В ролике также показано, как работать с параметрами и обрабатывать POST-запросы, конвертируя данные через Buffer.
В видео показан пример того, как на основе модуля HTTP можно создать простой Web-сервер, работающий с множеством HTML-страниц.
В ролике Вы увидите пример того, как в Nodejs создать простой REST API сервер, работающий с данными в формате JSON.
В заключительном ролике блока Вы узнаете, как работать с консолью в Nodejs и передавать в программу данные, которые Вы введете при запуске приложения.
В этом блоке начинается разработка основного приложения курса на фреймворке Express.js. Вы узнаете, как настроить приложение для работы, как работать с файлами, как настроить Template Engine на примере Handlebars, как создать и поддерживать множество страниц, динамически рендерить контент и как работать с асинхронными запросами. Еще вы узнаете, как создать свою собственную базу данных из файловой системы.
С этого ролика начнется создание большого приложения – интернет-магазина. В видео Вы узнаете, как подключить Express и настроить его для запуска приложения.
В видео показано, как Express.js работает с файлами, в отличии от обычного модуля HTTP.
Для того, чтобы более эффективно и динамически показывать страницы в приложении необходимо подключить движок, в данном случае будет использован Handlebars. В ролике Вы увидите, как его установить и настроить.
В ролике Вы увидите, как осуществить разбивку на разные элементы Handlebars страниц, чтобы автоматизировать процесс создания новых страниц и уменьшить количество кода.
В ролике будет разобран концепт, который называется Partials и с помощью него будет создана навигация для приложения.
В видео Вы увидите, как в Express передавать различные данные внутрь шаблона и рендерить их в формат HTML.
В ролике будет разобрано, как создавать и регистрировать новые роуты в приложении для большей модульности и декомпозиции файлов.
В видео Вы увидите, как обрабатывать форму, с помощью которой можно создавать новые объекты методом POST.
В текущем ролике Вы увидите, как создавать модель данных без использования базы данных, а с использование файловой системы.
В уроке будет показано, как вывести список курсов, которые до этого были созданы и как реализовать метод у модели, который будет получать список всех курсов из файла данных.
В ролике Вы увидите, как подключать сторонние JavaScript-файлы в приложение, но уже не для серверной части, а для клиентской части. В нем будет написан функционал, который позволит сформировать цену в привычный и удобный формат.
В уроке Вы увидите, как с помощью Express обрабатывать роуты с динамическими параметрами на примере страницы, где будет выводиться детальное отображение отдельного курса.
В видео будет показано, как добавить форму в приложение, которая позволит редактировать уже существующий курс. Помимо этого, будет показано, как работать с Query параметрами.
В ролике будет написан функционал, который подготовит шаблон страницы, где будет реализована корзина товаров для каждого пользователя.
В видео Вы увидите, как реализовать модель корзины, которая будет иметь возможность добавления в нее товаров, удаления и сохранения состояния в отдельном файле.
В ролике Вы увидите, как совместно с моделью вывести актуальные данные из корзины в шаблон для реализации первоначального рендеринга страницы.
В видео будет разобрана возможность работы приложения с асинхронными XHR-запросами для динамического изменения контента без перезагрузки страницы.
В видео Вы увидите, как на основе ответа сервера реализовать динамическое изменение контента страницы корзины: пересчет цены, количества элементов и отрисовка таблицы целиком.
В этом блоке рассказано про то, как использовать базу данных MongoDB для приложения на NodeJS. В блоке показано, как подключить и настроить базу данных, какие инструменты потребуются для работы с MongoDB. После этого будет переписано приложение из прошлого блока от файловой системы до использования MongoDB.
В ролике Вы увидите, как настроить и подготовить базу данных MongoDB через сервис Mongo DB Atlas.
В ролике Вы увидите, как установить ORM Mongoose, которая позволит взаимодействовать и работать с MongoDB, а также увидите, как ее настроить.
В видео показано, как, используя Mongoose, создавать модели, которые впоследствии будут являться абстрактным слоем при взаимодействии Nodejs и MongoDB.
В видео Вы увидите, как переписать старую модель, которая работала с файловой системой на модель, которая работает с реальной базой данных.
В видео показано, как используя Mongoose-модель реализовать функционал, позволяющий удалить курс из базы данных.
В уроке Вы увидите, как создать модель пользователя, к которой потом будет привязано все в приложении: сессии, курсы, авторизация, корзина и т.д.
В ролике показано, как временно программно создавать одного пользователя для тестирования работы приложения.
В уроке Вы увидите, как исправить работу корзины, уже используя модель базы данных, а не файловой системы, функционал которой уже будет привязан к отдельному пользователю.
В ролике показано, как снова оживить страницу корзины, так как модель данных немного изменилась из-за переноса данных в MongoDB.
В ролике показано, как вернуть функционал по динамическому асинхронному удалению данных из корзины используя базу данных.
В уроке Вы увидите, как с помощью Mongoose написать трансформер, меняющий формат данных поля _id на id для того, чтобы клиентская часть снова работала.
В видео Вы увидите создание HTML-структуры страницы, на которой будут выводиться список заказов, сделанных пользователем.
В уроке показано, как с помощью модели получить список заказов, сделанных пользователем и подготовить роут для отдачи заказов в приложение.
В уроке показано, как на основе полученных данных вывести список заказов в приложении.
В блоке рассказывается про то, как работать с сессиями и авторизациями в приложениях на NodeJS. Вначале будет добавлена страница регистрации и логина для последующей авторизации пользователей. Далее вы познакомитесь с концепцией сессии в NodeJS, реализуете регистрацию и логин пользователей, а также узнаете про CSRF-защиту для вашего приложения, которая позволит улучшить приложение от атак. В конце блока вы узнаете, как показывать пользователям сообщения об ошибках, если такие присутствуют.
Начиная с данного видео будет показана разработка части авторизации в системе и в этом ролике будет создана страница, отвечающая за вход в систему и создание нового аккаунта.
В ролике Вы познакомитесь с новым концептом в Nodejs – сессиями, которые будут содержать в себе всю необходимую информацию о текущем пользователе.
В ролике Вы увидите, как в сессии содержать полезные данные касательно текущего пользователя и на основе этих данных показывать динамический контент сайта.
Для оптимизации и защиты каждую сессию необходимо хранить в базе данных, поэтому в этом видео Вы увидите, как это сделать в автоматическом режиме.
В ролике Вы увидите, как создать свой собственный Middleware, который позволит защитить любой роут в приложении от неавторизованных пользователей.
Урок №6. Исправление работы корзины
Из-за небольшого изменения работы с пользователем, данные которого были перенесены в сессию, необходимо поправить отображение страницы корзины.
В видео Вы увидите, как с помощью страницы регистрации создавать нового пользователя в системе.
В ролике будет реализован функционал по авторизации в системе на основе данных, которые уже реально хранятся в базе данных.
Так как абсолютно не безопасно хранить не зашифрованный пароль в базе данных, то в этом уроке Вы узнаете, как зашифровать пароль при регистрации в одном направлении.
Для большей защиты приложения Вы увидите, как добавить CSRF-защиту.
Для того, чтобы в формах показывать различные сообщения об ошибках, если они есть. Вы увидите, как это реализовать с помощью дополнительного пакета Connect-flash, который может передавать временные сообщения через сессию.
В ролике будет протестирован функционал приложения, которое было написано ранее, чтобы понимать, что пользователи не пересекаются по данным и работают независимо друг от друга.
В блоке вы узнаете, как NodeJS работает с Email. Вы узнаете про дополнительные инструменты, которые позволят это реализовать и дальше по блоку будет реализован новый функционал для приложения. Пользователь будет иметь возможность восстановить свой пароль через форму. Далее приложение будет отправлять Email человеку и, владея специальным токеном, человек сможет поменять пароль.
В ролике Вы увидите подготовку приложения под дальнейшие изменения, когда будет вынесен объект конфигурации в отдельный файл для большей гибкости управления приложением.
В ролике Вы узнаете, как Nodejs работает с отправкой email писем.
В уроке Вы увидите, как отправлять письма в приложении на примере регистрации в системе.
В видео Вы увидите, как будет написан функционал по восстановлению пароля человека, если он его забыл. На этой странице человек будет иметь возможность написал свой email, получить на почту письмо с ссылкой на восстановление доступа.
Когда человек перейдет с письма по ссылке, и если он пройдет валидацию по токену, то будет иметь возможность изменить свой пароль.
В ролике Вы увидите дополнительную валидацию по смене пароля у человека, и если все хорошо, то будет реализован функционал по хешированию и изменению пароля..
В ролике Вы увидите, как ограничить права доступа пользователям на редактирование и удаление курсов, которые они не создавали. В это будет входить 2 этапа: ограничение визуальных элементов и программных роутов на сервере.
В ролике Вы увидите, как программно защитить возможность удаления новых курсов у пользователей, которые не создавали эти курсы.
В этом блоке рассказано про то, как в Express осуществлять валидацию входящих параметров, показывать пользователям сообщения об разных ошибках валидации и улучшать данные, которые поступили с клиента. Далее в блоке рассказано про то, как работать с файлами: будет реализована страница профиль для каждого пользователя, где человек сможет менять свою аватарку.
В ролике Вы узнаете про то, какой дополнительный пакет потребуется приложению для реализации валидации и как его настроить.
В видео Вы увидите, как полностью отвалидировать все входящие параметры на странице регистрации и показывать ошибки, если такие будут.
В видео Вы увидите, как создавать асинхронные валидаторы, которые позволят декомпозировать логику контроллеров и вынести валидацию в отдельный файл.
В видео Вы узнаете про такой концепт как Sanitizers, позволяющие улучшить обработку поступающей информации на сервер и защитить данные от потенциальных угроз.
В ролике Вы увидите валидацию другой формы в приложении – создании курсов, где будет показана best practice по валидации форм с сохранением данных даже после перезагрузки страницы.
В видео Вы увидите, как реализовать функционал по обработке 404 ошибки в приложении.
В уроке показано, как создать новую страницу в приложении для последующей демонстрации загрузки и сохранения файлов.
В видео Вы увидите, как настроить дополнительный пакет, позволяющий в Express работать с загрузкой файлов. В ролике показано, как настроить процесс сохранения файлов и валидацию.
В видео Вы узнаете, как загружать файлы, как настроить и подключить Middleware созданный в прошлом уроке, а также узнаете, как хранить статические картинки на сервере и сохранять пути в базе данных.
Данный заключительный блок посвящен тому, как подготовить и залить готовое NodeJS приложение на удаленный сервер. В курсе будет использоваться система Heroku. В начале Вы узнаете про то, как защитить ваше приложение перед деплоем, как улучшить его с помощью дополнительных инструментов и как подключить к разработке систему контроля версий GIT.
В ролике показано, как защитить объект конфигурации, разделив их на две части: конфиг для разработки и продакшн сборки.
В ролике рассматривается дополнительный пакет для Nodejs, который автоматически добавляет большое количество хедеров, защищающих от потенциальных атак.
В ролике показано, как с помощью дополнительного модуля в автоматическом режиме оптимизировать статические файлы.
В ролике Вы увидите какие шаги необходимо выполнить для настройки системы Heroku для бесплатного деплоя приложения на Nodejs.
В ролике Вы увидите, как настроить систему MongoDB Atlas для того, чтобы она корректно работала с Heroku и приложение было запущено на удаленном сервере.
Данный практический блок покажет разработку отдельного приложения, где клиентская часть реализована на VueJS+Vuetify (уже готовая) и на основе клиентского кода будет реализовано Fullstack REST API приложение, где на сервере будет использоваться база данных MySQL. Вы узнаете, как настроить весь этот стек с нуля, как взаимодействовать с MySQL Community Server через MySQL Workbench, а со стороны NodeJS через инструмент Sequelize.
В этом видео Вы увидите клиентскую часть приложения, написанную на Vue.js и узнаете план на текущий блок.
В ролике будет создан и проинициализирован сервер и будет настроен таким образом, чтобы он всегда отдавал одну и ту же страницу.
В ролике показано, как настроить базовый роутер для приложения для работы REST API.
В ролике Вы узнаете, как установить MySQL на компьютер совместно с дополнительной программой MySQL Workbench для просмотра данных в базе.
В ролике показано как с помощью Sequelize настроить соединение с базой данных MySQL в Nodejs.
В уроке Вы увидите, как создать модель данных для синхронизации данных Nodejs и базы данных MySQL.
В ролике показано как обрабатывать POST-запрос на примере создания новой задачи.
В видео Вы увидите, как полностью завершить функционал для сервера и клиента при создании задачи и динамическом ее отображении.
В ролике показано, как обрабатывать GET-запрос и получить список всех задач из базы данных с последующим динамическим отображением в списке.
В видео Вы увидите, как обработать PUT-запрос и изменить отдельный элемент в базе данных и динамически изменить его на клиентской части.
В уроке показано, как обработать DELETE-запрос для удаления задач из списка, где на серверной части будет показано, как сделать SQL-запрос с ключевым словом WHERE, а на клиентской части динамическое удаление задачи.
В данном блоке рассказано про то, что такое технология GraphQL, какие задачи она выполняет, чем отличается от REST API. В блоке будет реализовано клиент-серверное приложение, использующее GraphQL в качестве средства коммуникации. Вы узнаете, как полностью подготовить сервер для работы этой технологии с нуля.
В ролике Вы узнаете про то, что такое GraphQL, зачем технологию разработали и чем они отличается от REST API.
В ролике показано как настроить GraphQL к серверному приложению, написанному на Express.
В уроке Вы увидите основные примеры того, как использовать GraphQL, включая различную типизацию, мутации и запросы.
В видео показано, как реализовать получение данных через GraphQL, переписав подход, который был реализован на REST API.
В ролике показано, как обрабатывать REST-POST-запросы, используя GraphQL, через мутации.
В видео Вы узнаете про то, как изменять состояние элементов в базе данных.
В уроке показано, как удалять различные элементы, используя GraphQL.