Академический Документы
Профессиональный Документы
Культура Документы
Знакомство
Правила игры на лекциях
3
Цель курса
Подготовить полноценных и востребованных
специалистов начального уровня, готовых работать
в веб-индустрии.
4
Профессии «React-разработчик»
и «Фронтенд-разработчик»
5
Как проходит обучение?
Обучение Защита
Старт Финал
6
Авторы и преподаватели курса
Николай Вадим
Шабалин Макеев
7
Профессиональная триада
8
Профессиональная триада: наставники
9
Наставники
149 практикующих разработчиков из:
– Агентств.
– Веб-студий.
– Продуктовых компаний.
– И просто фрилансеров.
10
Работа с наставником
Обязательная часть курса. Наставник:
– Проверяет задания.
– Разбирает тонкости и консультирует.
– Передаёт опыт.
– Оценивает случайный личный проект на защите.
11
Как выбрать наставника и работать с ним?
– Выбирайте по удобному времени консультирования в интерфейсе ученика.
– Первые несколько наставников будут из вашего часового пояса
– Наставник свяжется с вами в течение первых нескольких дней и уточнит расписание
консультаций.
12
Профессиональная триада: проекты
13
Проекты
Лекторы будут пошагово показывать примеры на учебном проекте «Барбершоп».
14
Проекты
Программа курса повторяет процесс работы верстальщика:
1. Разметка.
2. Подготовка графики.
3. Создание сеток.
7. Оптимизация.
15
Учебный проект «Барбершоп»
16
Личные проекты «Нёрдс», «Седона» и «Техномарт»
Личные проекты «Глейси» и «Девайс»
Комфортный Комфортный
18
Сложность личных проектов
1. Нёрдс — лёгкий проект.
19
Формат проектов
Figma
20
Техническое задание в каждом проекте
21
Профессиональная триада: критерии
22
Критерии качества
23
Критерии качества
– Все критерии будут разобраны в процессе курса.
– Делятся на базовые и дополнительные.
– Базовые задают минимальный уровень качества для начинающего верстальщика.
– Все базовые критерии обязательны для сдачи личного проекта.
– Дополнительные критерии отражают уровень профессионализма.
24
Успешное завершение курса?
Защитить личный проект.
25
Защита проектов
26
Регламент защиты проектов
27
Защита проекта
1. Получить развёрнутую обратную связь от личного наставника.
28
Сертификат
– Разные для сдавших и не сдавших личный проект.
– Электронная версия для всех.
29
Сертификат для первого уровня вёрстки
30
Дополнительный сертификат для профессии
31
А если пропустил лекцию?
Ничего страшного, будут видеозаписи, а также весь наш арсенал:
– Пошаговые демонстрации.
– Скринкасты.
– Подборки ссылок на лучшие статьи.
– Вопросы авторам.
32
Как задать вопрос автору?
33
Наши кураторы
34
Связь с кураторами
С любым вопросом или проблемой можно обратиться к кураторам курса с помощью
специальной формы в интерфейсе ученика.
35
Что на самом деле происходит, когда...
36
вы вводите в браузере адрес сайта и нажимаете Enter?
37
Открывается сайт!
38
Верно, но копнём глубже
1. Где физически расположен сайт?
39
Где же находится сайт?
Люди живут в домах, у которых есть адрес.
Доехать от дома до дома можно по дорогам.
Сайты живут на серверах,
у которых есть IP-адрес.
42
«Доехать» от сервера до сервера
можно по кабелям сети.
IP-адрес — 178.79.181.169.
44
В доме может быть много квартир, у них есть номера.
45
На сервере запущено много программ.
У них тоже есть номера: «порты».
46
Сайты живут в программе «веб-сервер»
– Номер порта веб-сервера по умолчанию — 80 или 443.
– Популярные веб-сервера: Apache HTTP Server, nginx.
– Пример адреса — 178.79.181.169:80 или 178.79.181.169:443.
47
Но и это не всё. Коммуналки!
В коммуналках есть комнаты.
48
Веб-сервер-коммуналка
– Такие сервера содержат виртуальные хосты.
– Веб-сервер отдаёт нужный сайт по его названию.
nginx.conf
1 server {
2 listen 80;
3 server_name htmlacademy.ru;
4 root /Users/simonenko/Sites/htmlacademy/public;
5 }
6 server {
7 listen 80;
8 server_name assets.htmlacademy.ru;
9 root /Users/simonenko/Sites/assets/public;
10 }
11 server {
12 listen 80;
13 server_name up.htmlacademy.ru;
14 root /Users/simonenko/Sites/up/public;
49}
15
Письмо человеку и письмо сайту
– Адрес дома: Санкт-Петербург, – Адрес дома (сервера):
Набережная реки Карповки 5 Л. 178.79.181.169.
50
Где же находится сайт
– На железном сервере в сети.
– Внутри программы веб-сервера.
– На своём виртуальном хосте.
Разобрались!
51
Прогресс раскопок
1. Где физически расположен сайт?
52
Но как браузер узнаёт адрес?
– Дано: htmlacademy.ru.
– Надо получить: 178.79.181.169.
53
C помощью системы DNS
56
DNS обновляется медленно
Срок добавления и обновления записей в DNS
может составлять до 48 часов.
57
58
Прогресс раскопок
1. Где физически расположен сайт?
59
Службы доставки
60
Службы доставки в Сети
– Служба доставки — протокол TCP/IP.
TCP/IP
– Доставляет HTTP-пакеты.
HTTP
61
HTTP-запрос
62
HTTP-ответ
63
<!DOCTYPE html><html lang="ru" class="no-js"><head><meta
charset="utf-8"><meta name="viewport" content="width=device-
width,initial-scale=1"><link rel="dns-prefetch" href="https://
assets.htmlacademy.ru"><link rel="stylesheet" href="https://
assets.htmlacademy.ru/css/core.css"><link rel="stylesheet" href="https://
Тело ответа
assets.htmlacademy.ru/css/index-page.css"><link rel="preload" as="script"
href="https://assets.htmlacademy.ru/js/general.js"><title>HTML Academy:
интерактивные онлайн-курсы по HTML, CSS и JavaScript</title><meta
name="theme-color" content="#2f358f"><link rel="mask-icon" href="/
favicon.svg" color="#2f358f"><link rel="manifest" href="/
htmlacademy.webmanifest"><meta name="format-detection"
content="telephone=no"></head><body><header class="page-header page-
header--home"><h1 class="sr-only">Интерактивные онлайн-курсы HTML
Academy</h1><div class="page-header__inner"><div class="page-
header__top"><a class="page-header__logo" href="/" aria-label="На главную
HTML Academy"><img src="https://assets.htmlacademy.ru/img/logo.svg"
width="104" height="36" alt="HTML Academy"></a><nav class="main-nav"
aria-label="Основное меню" itemscope itemtype="http://schema.org/
SiteNavigationElement"><ul class="main-nav__list main-nav__list--main
main-nav__list--adaptive"><li class="main-nav__item"><a class="main-
nav__link" href="/courses"><span class="main-nav__icon"><svg
aria-hidden="true"><use xlink:href="/img/sprites/
general.svg#course"></use></svg></
span>Курсы</a></li><li
class="main-
HTTP/2.0 200 OK
Cache-Control: no-store, no-cache, must-revalidate
Content-Encoding: br
Content-Type: text/html; charset=UTF-8
Date: Mon, 06 May 2019 12:10:10 GMT
Last-Modified: Wed, 01 May 2019 12:10:10 GMT
Server: nginx
64
Откроем инструменты разработчика,
чтобы увидеть HTTP-запросы.
65
Для загрузки сайта браузер делает
много HTTP-запросов.
Последовательная и параллельная
загрузка ресурсов.
Пример объёмного сайта:
379 запросов, 8.5 мегабайт.
Прогресс раскопок
1. Где физически расположен сайт?
69
Как браузер собирает сайт?
– Браузер не закачивает «готовый сайт».
– Вспомним Икею.
70
Исходные детали для браузера
HTML-код
CSS-код
И картинки
71
Перед сборкой сайта
Итак, все части доставлены. В наличии:
– HTML-код, 1 штука.
– CSS-код, 1 штука.
– Картинки, 10 штук.
– Инструкции нет.
72
А где инструкция?
– А инструкция — это стандарты HTML и CSS.
– Они зашиты внутрь браузера.
– И эти стандарты мы и будем изучать!
73
Прогресс раскопок
1. Где физически расположен сайт?
74
Повторим?
1. Где физически расположен сайт?
На веб-сервере в дата-центре.
75
Как зарегистрировать домен?
Обратиться к регистратору
76
Как зарегистрировать домен?
1. Проверить, что он свободен с помощью WHOIS-сервиса.
77
Как зарегистрировать хостинг?
Обратиться к хостеру
78
Как зарегистрировать хостинг
1. Выбираем хостинг, регистрируемся, оплачиваем если необходимо.
79
Экосистема
80
Экосистема технологий
Клиент-сайд
Сервер-сайл
HTML, CSS, JavaScript, медиа
Фронтенд Бэкенд
Браузер Сервер
HTTP-ответ
HTTP-
HTML, CSS, Серверные языки
запрос
JavaScript PHP, Python, Ruby
TCP/IP
Уровень транспорта
81
Вывод по экосистеме
– Браузер и сервер обмениваются HTTP- или HTTPS-запросами.
– Браузер в ответах сервера получает HTML, CSS, JavaScript и медиа (картинки, видео
и так далее).
82
Вывод по экосистеме
Верстальщику нужно:
83
Команда
Менеджер
Дизайнер
Программист
Верстальщик
Фронтенд Бэкенд
84
Инструменты
85
Инструменты верстальщика
– Браузер.
– Инструменты разработчика в браузере.
– Графический редактор.
– Редактор кода.
– Система контроля версий.
86
Браузеры
– Google Chrome.
– Mozilla Firefox.
– Safari.
– Яндекс.Браузер.
– Microsoft Edge.
– Opera.
87
Браузерные движки
– Blink
– Gecko
– WebKit
– MSHTML и EdgeHTML
88
Инструменты разработчика
Встроенные инструменты разработчика есть во всех браузерах.
— Ctrl + Shift + I.
89
Chrome Developer Tools
90
Графические редакторы
Figma.
91
Редакторы кода
Любой текстовый редактор с подсветкой синтаксиса.
– Atom.
– Sublime Text.
– VS Code.
– WebStorm.
Обзор редакторов для верстальщика.
92
Git — система контроля версий
– Введение в системы контроля версий.
– Четыре скринкаста о работе с Git через консоль.
93
Клиенты систем контроля версий
– GitHub Desktop.
– GitKraken.
– SourceTree.
– Sublime Merge.
– Tower.
94
Рабочий процесс на курсе
95
96
Короткий список задач раздела
97
Выбор проекта и наставника
98
Выбор личного проекта
99
Создание репозитория в GitHub
100
Кексобот и мастер-репозиторий
Создаёт
мастер-репозиторий
101
Ссылка на мастер-репозиторий
102
Мастер-репозиторий в GitHub
103
Что такое форк?
Создаёт
мастер-репозиторий
Форкаем
мастер-репозиторий
104
Форкаем мастер-репозиторий
105
Форк в GitHub
106
Что такое клонирование?
Создаёт
мастер-репозиторий
Форкаем
мастер-репозиторий
Клонируем форк
107
Клонируем форк
108
Клонируем форк
109
Клонируем форк
110
Схема подготовки к работе
Создаёт
мастер-репозиторий
Форкаем
мастер-репозиторий
Клонируем форк
111
Первичная настройка завершена
Можно выполнять задания на работу с кодом
проекта.
112
Первое задание
113
Первое задание
114
Исходное состояние репозитория
Фиксируем изменения
Изменения зафиксированы
Проверяем историю
120
Фиксируем изменения
Изменения зафиксированы
Проверяем историю
124
Синхронизируем изменения
125
Форк в GitHub
126
Коммиты в форке в GitHub
127
Создаём пулреквест
Windows: Control + R
macOS: Command + R
Создаём пулреквест
129
Создаём пулреквест
130
Пулреквест в GitHub
131
Привязываем пулреквест к заданию
132
Пулреквест привязан
133
Публикуем задание
134
Задание опубликовано
135
Опубликованное задание
136
Отправляем задание на проверку наставнику
137
Задание можно отозвать с проверки
138
Пулреквест в GitHub
139
Пулреквест принят
140
Коммит
Коммит
Синхронизация
Создание пулреквеста
Комментарии
от наставника
Коммит
Синхронизация
Слияние
141 пулреквеста
Оценка наставника после каждого задания
142
Оценка наставника после каждого задания
143
Задания на дом
1. Определиться с наставником и проектом.
4. Посмотреть скринкасты.
6. Пройти шесть глав интерактивного курса «Основы HTML» (но лучше больше).
144