В последний раз во время Learning Time я продолжал смотреть видео John Papa & Dan Wahlin о создании сервисов RESTful с Angular 2, о которых я упоминал в прошлый раз. Как я уже сказал тогда, мне нравится их стиль презентации — он легкий и неформальный, но они также хороши в приземлении некоторых потенциально запутанных тем.

При этом у меня сейчас довольно много путаницы. Я сравниваю это с тем, когда я начал изучать Rails в последние недели Dev Bootcamp: в этой среде так много движущихся частей, что трудно уложить в голове, как все это работает вместе.

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

Бюджетирование времени

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

Установка

Papa & Wahlin предоставили репозиторий Github приложения, о котором они говорят в видео, поэтому я хотел загрузить его, запустить и поэкспериментировать с кодом во время просмотра. Я обнаружил, что важно запачкать руки и использовать код, чтобы глубоко его изучить; если я просто смотрю видео (или слушаю лекцию) о коде, не пытаясь его использовать, я только поверхностно его понимаю.

У меня были некоторые проблемы с самого начала, когда я пытался запустить приложение локально; установка MongoDB оказалась сложной задачей. Установка через менеджер пакетов Homebrew — это то, что наконец сработало, и на самом деле было довольно просто в использовании.

Различия версий

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

Почтальон

В одной части они используют Postman, инструмент расширения Chrome, который позволяет вам совершать HTTP-вызовы и видеть их ответы в среде коробки. На самом деле у меня есть некоторый опыт работы с этим инструментом, поскольку я использовал его при разработке своего проекта чат-бота. Это очень полезно для быстрой проверки того, какой HTTP-вызов с возвратом, вне среды остальной части вашего проекта — если вы отлаживаете, вы можете быстро определить, не работает ли это ваш код или сервер, к которому вы звоните. . (Он также имеет более глубокие возможности, с которыми я менее знаком).

Классы

Здесь я начинаю проникать в туманную территорию. Я помню классы из Ruby (которыми я давно не пользовался), и я знаю, что они являются новой частью ES6 (набор обновлений JavaScript от 2015 года, которые представили кучу новых функций), но в остальном это ново. мне.

Мое понимание классов на данный момент: это способ создания экземпляров объектов с общим набором свойств.

Инъекции

Совершенно новое для меня! Похоже, это способ разрешить импорт данных из внешних источников (таких как база данных) в класс.

Машинопись

Тоже новое для меня. Код имеет смысл, но я еще не начал его использовать.

— — — — —

В этом видео есть еще что рассказать — в следующий раз я поделюсь своими мыслями о второй половине, которая будет охватывать подписку на потоки событий, обработку ошибок и использование RxJS для обработки асинхронных операций. Спасибо за чтение!