#6 CS50 на русском 2016 — HTTP и что такое Интернет?

Приветствую Вас, дорогие друзья!
Неделя 6 курса Гарвардского университета по основам программирования CS50 2016 года на русском языке. На Неделе 6 мы оставим позади язык C и рассмотрим веб-программирование, а точнее — протоколы передачи данных и язык HTML. Вы узнаете что такое Интернет. Мы также вспомним, структруры данных, которые  мы изучили на Неделе 5.

00:00:00 — Обзор Недели 5
00:05:18 — Веб-программирование
00:06:30 — Воины Сети
00:07:25 — Домашняя сеть
00:09:50 — DHCP и IP
00:12:56 — IP адреса
00:14:38 — DNS
00:16:29 — Роутеры
00:18:25 — nslookup
00:20:47 — Отслеживание маршрута
00:27:05 — Подводные кабели
00:29:10 — Пакеты
00:30:24 — TCP
00:34:01 — Порты
00:37:20 — Брандмауэр — Firewall
00:40:37 — VPN
00:43:46 — Воины сети (что такое Интернет?)
00:56:56 — HTTP
00:58:38 — GET
01:00:35 — Коды статусов
01:01:51 — Telnet
01:04:36 — Curl
01:08:17 — Запросы
01:11:49 — HTML
01:18:21 — hello.html
01:20:42 — image.html
01:22:48 — link.html
01:26:07 — paragraphs.html
01:27:37 — headings.html
01:28:22 — list.html
01:29:12 — table.html
01:30:21 — css0.html
01:32:36 — css1.html
01:34:45 — css2.html
01:37:57 — POST
01:39:39 — search.html

Словарь Недели 6

На этой Неделе словарь терминов представлен в основном аббревиатурами, которые используются для пояснения того, что такое Интернет и, как в браузерах создаются веб-страницы. Словарь содержит следующие термины и определения:

  1. HTML (HyperText Markup Language) — язык гипертекстовой разметки
  2. CSS (Cascading Style Sheets) — каскадные таблицы стилей
  3. Firewall — брандмауэр, межсетевой экран
  4. Router — роутер, маршрутизатор
  5. VPN (Virtual Private Network) — виртуальная частная сеть
  6. HTTP (HyperText Transfer Protocol) — протокол передачи гипертекста
  7. LAN (Local Area Network) — локальная вычислительная сеть
  8. IP address — адрес Интернет-протокола

Что такое Интернет и как он устроен изнутри

Адреса используются людьми довольно давно и являются очень удобным инструментом при поиске того или иного строения. Сложно представить себе карту района или города, в которой было бы отмечено большое дерево или гора, или указана любая другая точка отсчета. И было бы указано количество шагов в каждом из направлений, которые необходимо преодолеть, чтобы добраться в нужное место. Это больше напоминает карту сокровищ из мультфильма, фильма или сказки.

Адреса

Поэтому люди пришли к соглашению использовать адреса. Точно так же существуют адреса и у компьютеров, которые называются IP адресами. IP адреса присваиваются компьютерам при подключении к сети, другими словами это уникальный адрес вашего компьютера в сети. Сеть может быть локальной, которая покрывает относительно небольшую группу компьютеров и других устройств, например, принтеров. IP адрес версии 4, так называемый IPv4 представляет собой 32-битное число, записанное в виде четырех десятичных чисел от 0 до 255, разделенных точкой. Например, 198.23.199.12.

Это похоже на то, как мы в реальном мире отправляем письма в конвертах с указанием адреса КОМУ и адреса ОТ кого. В мире Интернета отправка информации между компьютерами осуществляется по такой же самой аналогии, только вместо слов Нью-Йорк, Уолл-Стритт 45 указывается IP адрес компьютера отправителя и компьютера получателя. Но это еще не все. При отправке информации между IP адресами компьютеров находятся роутеры или маршрутизаторы. Это устройства, предназначенные для того, чтобы направлять информацию друг другу до тех пор, пока она не достигнет точки назначения. Маршрутизатор смотрит на IP адрес получателя, указанный на «конверте» и отправляет информацию соответствующему роутеру. Так происходит до тех пор, пока конечный адресат не получит свой пакет информации.

Порты

Возникает логичный вопрос: «Откуда компьютер знает, какой тип данных содержится в том или ином пакете информации?» Все очень просто. Каждый тип информации передается по соответствующему порту. Давайте посмотрим на самые популярные номера портов:

  1. 21 FTP — для передачи файлов в незашифрованном виде
  2. 22 SSH — для передачи файлов в зашифрованном виде
  3. 25 SMTP — протокол для передачи почтовых сообщений в незашифрованном виде
  4. 53 DNS — система доменных имен
  5. 80 HTTP — протокол передачи гипертекста
  6. 443 HTTPS — протокол передачи гипертекста с использованием SSL-шифрования

С полным перечнем портов Вы можете ознакомиться в Википедии.

Но стоит отметить, что было бы неудобно посещать Facebook, Google или любой другой сайт, если бы нужно было помнить его адрес в виде 32-битного кода. Поэтому люди пришли к соглашению использовать систему доменных имен DNS. Система предназначена для того, чтобы преобразовывать числовой адрес в текстовый, а текстовый — в числовой. Именно благодаря DNS мы вводим в браузере адреса всех сайтов в виде букв.

Язык разметки HTML и каскадные таблицы стилей CSS

Что же происходит после того, как Вы перешли по какому-то адресу в Интернете? Браузер покажет Вам нужную веб-страницу. Язык, на котором написана веб-страница называется HTML. Помните структуры данных с Недели 5, которые выглядят в виде деревьев. Такое же самое дерево элементов выстраивается и при помощи языка разметки HTML, а CSS служит для стилизации элементов дерева элементов. Давайте посмотрим на простейших HTML код, отображающий в окне браузера фразу «Привет, мир», которую мы впервые увидели на Неделе 0.

<!DOCTYPE html>
<html>
<head>
<title>Привет, мир!</title>
</head>

<body>
<h1>Привет, мир!</h1>

    <h2>Что такое Интернет?</h2>
</body>
</html>

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

Чтобы подробнее узнать о том, что такое Интернет, включайте видео и Вы увидите целый трейлер о том, как работает Интернет.

Спасибо всем, кто прочел эту статью до этого места, в качестве бонуса введите словосочетание «zerg rush» в поисковике Google и сыграйте в замечательную игру от Google 🙂

Приятного просмотра, дорогие друзья!

Поделиться:

Оцените запись:
Notice: Undefined variable: thumbnail in /home/level80/level-80.com/www/wp-content/plugins/wp-postratings/wp-postratings.php on line 1176
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (3 оценок, среднее: 4,67 из 5)
Загрузка...

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*Комментарий - обязательное поле для ввода
* Имя - обязательное поле для ввода
* Email - обязательное поле для ввода