1.1 История на HTML

В днешно време почти всички хора използват интернет. Четете статии, използвайте браузър, следвайте връзки. И само малцина от тях се питат кога и от кого е измислен Интернет?

Все още зависи How наричате Интернет. Най-често лаикът има предвид едно, а техникът друго. Компютърната мрежа, свързваща най-големите центрове за данни в света, е създадена през 70-те години. Но достъпният за обикновен човек интернет (браузър, връзки, всяHowви страници) е изобретен от един човек в началото на 90-те години . И беше така...

В началото на 90-те години британецът Тим ​​Бърнърс-Лий изобретява Интернет. Въпреки че, въпреки това, това, което той е изобретил, е по-правилно да се нарича Мрежата: World Wide Webтой е www, той също е Световната мрежа. Да, един човек изобрети световната мрежа.

От 1986-1991 г. работи в Изследователския център на CERN (в Женева, Швейцария) върху нов стандарт за научна documentация. Виждате ли, обичайно е учените да публикуват научни трудове под формата на статии, а в края на статиите да посочват списъка на използваната литература. С други думи, научното знание е списък от статии с връзки една към друга.

Между другото, съвременната Wikipedia много прorча на начина, по който нейният създател е видял World Wide Web : научни статии с връзки една към друга, списък с източници и използвана литература. И ако Тим имаше късмет, тогава мрежата все още щеше да е такава. Но по пътя към по-светлото бъдеще светът някъде сбърка :)

Мрежата се основава на три технологии:

  • HTML-page, който съдържа текст, снимки и връзки към другиHTML-pages.
  • • Браузър, който показва HTML-pageпо най-удобния за хората начин.
  • • Протокол http– стандарт за уеб сървъри за комуникация с браузъри и помежду си.

Тим Бърнърс-Лий не толкова е измислил тези неща, колкото ги е стандартизирал. HTML- е създаден на базата на стандарта SGML. Таговете също са заимствани оттам. Но първият в света уеб браузър, наречен WorldWideWebТим, написа самият той и през 1990 г.

1.2 HTML не е език за програмиране

HTMLне е език за програмиране и никога не е бил. Никога не казвай това. Дори ако ще пишете автобиография, никога не посочвайте HTMLв раздела за езици за програмиране, само в раздела Инструменти (технологии). Би било груба грешка да напишете в автобиографията си, че знаете език за програмиране HTML. Защо?

И работата е там, че HTMLтова е език за маркиране на documentи. Ако го опростим много, то HTML-documentтова е текст (document) с вмъкнати в него картинки, таблици, връзки и т.н.

Да приемем, че искате да напишете статия, която ще:

  • Заглавие на статията (заглавие).
  • Самата статия, състояща се от един параграф.
  • Снимка.
  • Няколко важни твърдения, които искате да поставите с удебелен шрифт.
  • В средата на статията дайте връзка към полезна информация.

Ето How ще изглежда този document в браузъра:


домашна котка

От гледна точка на научната таксономия домашната котка е бозайник от семейство котки от разред хищни. Често домашната котка се счита за подвид на горската котка, но от гледна точка на съвременната биологична таксономия (2017 г.) домашната котка е отделен биологичен вид .


Доста добре, нали? И стандартът HTMLви позволява да направите този document четим Howто за хора, така и за компютри. Ето How изглежда в HTML-standard:

<h1> Домашна котка </h1>

От гледна точка на научната таксономия домашната котка е <a href=”/”> бозайник </a> от семейство Котки от разред Хищни. Често домашната котка се счита за подвид на горската котка, но от гледна точка на съвременната биологична таксономия (2017 г.) домашната котка <b> е отделен биологичен вид </b> .

<img src=”cat.jpg”>

Към текста на статията бяха добавени специални етикети (маркирани в червено ), които се разбират Howто от човек, така и от компютър (браузър). Браузърът може да покаже статията красиво за читателя, а авторът на статията може лесно да я редактира.

1.3 Появата на HTTP протокола

Съкращението HTMLозначава Hyper Text Markup LanguageHypertext Document Markup Language. Хипертекстът е document, състоящ се от страници, които се свързват една с друга. Какво е http?

HTTPозначава Hyper Text Transfer ProtocolHypertext Transfer Protocol (стандарт). httpor httpsможете да видите в addressната лента на браузъра, ако се опитате да копирате връзката към отворената page.

Типична връзка към page изглежда така:

http://google.com/logo.jpg

В самото начало на връзката е името на протокола, последвано от двоеточие и две наклонени черти. Тим Бърнс-Лий веднъж каза в едно от интервютата си, че ако знаеше, че протоколът httpще бъде толкова популярен, щеше да измисли нещо по-кратко. (все пак почти всички връзки в света започват с думата http://or https://)

Да се ​​върнем на браузърите. Когато браузър поиска html-page, той изпраща текстов файл (заявка) до сървъра и получава друг текстов файл (отговор) в замяна. Този режим на работа се нарича клиент-сървър.

Първо има редове с ключова информация, след това със сервизна информация. Първият ред на текстовата заявка се дава от шаблона:

MethodURI  HTTP/Version

Личната page на потребителя на CodeGym е дадена от връзката

https://codegym.cc/me

http-requestбраузър за него изглежда така:

GET /me  HTTP/1.0
Host: codegym.cc

Като отговор сървърът най-вероятно ще изпрати

HTTP/1.0 200 OK
<html>page text...

Първият ред в текста на отговора е versionта на http протокола и състоянието на отговора (200, OK) . След това идва празен ред и след това просто в текстова форма идва този html-page, който браузърът поиска. Всичко е много просто :)