В статье рассказывается:
- Что такое язык разметки
- История развития языка разметки
- Класс языка разметки презентации
- Класс языка разметки процедуры
- Класс языка описательной разметки
- Основные языки разметки
-
Пройди тест и узнай, какая сфера тебе подходит:
айти, дизайн или маркетинг.Бесплатно от Geekbrains
Языки разметки мы с вами используем каждый день, даже не замечая этого. Печатая текст в текстовом редакторе, записывая код web-страницы, используем их функционал. Маркированные и нумерованные списки, жирный, курсивный шрифт, заголовки H1, H2, теги – все это элементы языков разметки.
Сегодня активно используется пять основных языков разметки, которые в свою очередь делятся на классы: процедурные, описательные, для презентации. Каждый из них разработан для определенного функционала. Подробнее о том, что такое язык разметки, вы узнаете из нашего материала.
Что такое язык разметки
Языком разметки в сфере IT называют некий набор символов и их последовательностей, внедряемых в текст с целью передачи информации о структуре этого документа и его конечном виде. В итоге текстовый документ выглядит как текст со всеми знаками препинания, дополненный кодом с информацией о структуре данного текста. Определяются такие элементы, как списки, выделения, заголовки и т.д. Среди более сложных функций следует отметить возможность вставки в документ гиперссылок и других документов.
С точки зрения Тьюринга языки разметки страниц полноценными языками программирования не являются.
Сама разметка компьютерного текста бывает визуальной и логической. В последнем случае определяется лишь роль конкретного текстового блока в общей структуре документа. Визуальная разметка, как понятно из названия, задает внешний вид текстового фрагмента. Вообще, задача языков компьютерной разметки состоит в формировании заданного визуального отображения за счет логического описания вне зависимости от содержания текста.
входят в ТОП-30 с доходом
от 210 000 ₽/мес
Скачивайте и используйте уже сегодня:
Топ-30 самых востребованных и высокооплачиваемых профессий 2023
Поможет разобраться в актуальной ситуации на рынке труда
Подборка 50+ бесплатных нейросетей для упрощения работы и увеличения заработка
Только проверенные нейросети с доступом из России и свободным использованием
ТОП-100 площадок для поиска работы от GeekBrains
Список проверенных ресурсов реальных вакансий с доходом от 210 000 ₽
Благодаря такому подходу упрощается автоматическая обработка текстового документа, а значит, текст будет корректно отображаться на различных устройствах. Причем отображение это будет разным на экранах компьютера, смартфона, планшета, а также в распечатанном на бумаге виде в зависимости от свойств данных, установленных на устройствах вывода.
Тем не менее, пользователи зачастую нарушают принятое правило верстки. К примеру, при создании документа в текстовом редакторе заголовок выделяется жирным, но в свойствах он не указывается как заголовок.
Пользователи домашних компьютеров могут форматировать с помощью встроенных инструментов MS Word, OpenOffice, troff. Но наибольшее распространение языки разметки получили в интернет-верстке. Это, в первую очередь, HTML, XML, XHTML, VML, XBRL, WML, SVG и PGML.
Языки веб-разметки принято разделять на три класса. Но в действительности тот же HTML включает в себя и процедурные инструменты (например, тег для задания полужирного шрифта), и инструменты описания (атрибут HREF как пример). Также данный язык имеет в своем синтаксисе элемент PRE. Этот параметр задает внешний вид текста в соответствии со своим написанием.
История развития языка разметки
Традиция разметки текста идет с давних времен. Рукописи маркировались на полях специальными инструкциями для печати. Маркерами задавали различные параметры шрифта (название, стиль, размер). Также на полях исправлялись встреченные ошибки. С течением времени сформировался некий стандартный набор правил (брендов). Уже потом такая концепция белы перенесена в сферу компьютерной печати.
Впервые идею общепринятого языка разметки предложил Уильям Танниклифф в 1967 году. Тогда автор называл свою концепцию общим кодированием. Наиболее заметным новшеством Танниклиффа можно назвать разделение структуры текста и его конечного вида.
Позднее создатель концепции стал руководителем проекта по разработке стандарта для издательств, названного GenCode. Нечто подобное предлагал издатель Стэнли Фиш в конце 1960-х годов. А сотрудник Университета Карнеги-Меллона Брайан Рид в 1980-м году посвятил теоретическим и практическим аспектам разработанного им описательного языка Scribe целую диссертацию. Детище создателя используется до сих пор.
Считается, что сама идея появлялась независимо в головах нескольких инженеров на протяжении 1970-х годов. Оформляться в жизнеспособную форму она начала в следующее десятилетие.
Первым языком текстовой разметки с четким разделением структуры текста был упомянутый выше Scribe. Революционным этот инструмент стал сразу по нескольким причинам. Во-первых, в нем декларируется разделение стиля текста от его разметки. Во-вторых, здесь впервые был реализован грамматический контроль над применением элементов описания. В дальнейшем эти нововведения легли в основу других языков.
Скачать файлСтандарт TeX, используемый в издательской области и поныне, разработал Дональд Кнут. Он же осуществлял поддержку в развитии этого инструмента. Особое внимание в TeX уделяется структуре текста и описанию шрифтов для верстки специализированных математических изданий.
Ради этого автор языка долгое время изучал все аспекты книгопечатания. Но в силу своей узкой специализации и повышенных требований к пользователям TeX используется лишь в академической среде, став фактически неким стандартом разметки.
Читайте также!
Подобные инициативы в то время появлялись не только в области книгоиздания. Например, для верстки в системах семейства UNIX специально разрабатывались языки troff и nroff. Но из-за ограниченной функциональности этих средств работа осуществлялась методом проб и ошибок. В итоге данные языки так и не стали массовыми в среде профессионалов. Пользовались ими лишь изредка и бессистемно. А с появлением полноценных текстовых процессоров troff и nroff окончательно были забыты.
Класс языка разметки презентации
Задача разметки презентации состоит в преобразовании текста в удобный для чтения вид. При этом автоматическая обработка информации не обеспечивается в достаточном объеме.
на обучение «Веб-разработчик» до 24 ноября
Такая верстка текстового документа легко выполняется (особенно в случае небольших документов), однако в дальнейшем она сложнее поддается изменениям и поддержке в актуальном виде. Для реализации крупных проектов этот тип обработки текста применяется редко. В основном используются иные средства более структурированной разметки.
Структура текста зачастую определяется по определенным маркерам в самом тексте. Одним из таковых может служить, например, множественный разрыв строк. Он покажет, что дальше идет заголовок. И некоторые программные средства автоматически выявляют такие признаки, хотя данное решение вряд ли можно назвать совершенным. Формат документа RTF как раз представляет собой пример презентационной разметки.
Класс языка разметки процедуры
Данный класс также призван демонстрировать вид текста. При этом процедурная разметка полностью видна при редактировании текстового фрагмента. Интерпретация кода должна осуществляться программой для просмотра текста в порядке появления этого кода. То есть, для форматирования заголовка необходимо добавить непосредственно перед этим заголовком требуемые директивы, сообщающие параметры центрирования, размера и типа шрифта. Далее обязательно должны следовать теги, выключающие эти параметры и возвращающие текст в исходный вид. Профессиональные программы, как правило, включают в себя макросы и стеки, облегчающие данную работу.
Класс языка описательной разметки
Описательную разметку также называют семантической. С ее помощью описываются текстовые фрагменты, но при этом не указывается, в каком порядке и в каком виде этот текст будет отображаться. Для этого используются специальные языки разметки сайтов и документов — SGML и XML.
Здесь можно добавлять к тексту любые метаданные при помощи соответствующих тегов. Так, существует стандарт Atom, в котором имеется метод, позволяющий временно размещать метку «обновлено». Данная метка сообщает время последнего изменения текстового фрагмента. Причем в стандарте явно не указаны правила и обязательность представления. Разные специализированные программы могут использовать такие метки несколькими способами, даже если те не декларированы указанным стандартом.
Проще говоря, когда в текст вставляется гиперссылка, предполагается, что пользователь будет нажимать на нее. Но эта же гиперссылка может быть использована и поисковыми машинами для своих целей, в том числе для поиска других подобных веб-страниц.
Благодаря тому, что средства описательной разметки отделяют информацию о форматировании текста от самого текста, задача существенно упрощается. К примеру, имеется фрагмент, написанный курсивом с использованием пары тегов <i> и </i>. Подобным образом можно акцентировать внимание или обозначать значение слов на другом языке.
Такая двусмысленность, свойственная процедурному и презентационному способу, вынуждает тратить время на ручной просмотр текстового блока. Строгая описательная дифференциация каждого случая разными ярлыками позволила бы избежать такой рутинной работы.
Современные средства описательной разметки представляют текстовые документы в виде дерева и дают возможность добавлять перекрестные ссылки. Таким образом, вся иерархия рассматривается как база данных, а не как совокупность тяжелых бинарных объектов.
При этом обеспечивается поддержка структуры самим хранилищем. В отличие от полноценных реляционных БД здесь отсутствует какая-либо строгая система. Поэтому древовидные описательные системы принято называть также полуструктурированными базами данных.
Основные языки разметки
На сегодняшний день существует множество языков разметки. Перечислим лишь основные, наиболее используемые.
HTML
Язык гипертекстовой разметки HTML является самым распространенным. Аббревиатура расшифровывается как Hypertext Markup Language (язык разметки гипертекста). HTML признан стандартом для оформления любых интернет-документов, в частности веб-страниц. Код этого языка распознается и обрабатывается браузерами, предоставляя его в удобном читаемом виде. Пользователь в итоге может просматривать и распечатывать страницы, а также с помощью этих страниц загружать данные на серверы.
Язык разметки страницы HTML позволяет выделять фрагменты текста полужирным, курсивным или подчеркнутым шрифтом, включать в текст спецсимволы, отсутствующие в стандартном наборе, изменять цвета текстовых символов, управлять поведением текста (выравнивание, создание отступов), вставлять таблицы и гиперссылки. Синтаксисом предусмотрены специальные теги внутри угловых скобок, обозначающие начало и конец обрабатываемого блока.
XML
Данная аббревиатура расшифровывается как eXtensible Markup Language (расширяемый язык разметки). Назван язык так в связи с отсутствием привязки к какому-либо формату. Вместо этого пользователи могут создавать собственные теги и с их помощью выполнять глубокую обработку текста. Обычно этот язык используют, чтобы описывать грамматику других языков и контролировать правильность составления документа.
По внешнему виду XML сильно напоминает HTML. Принципиально отличается он более строгими правилами использования тегов. Здесь, например, есть зависимость от регистра.
Язык разметки XML дает возможность обмениваться данными между любыми системами, даже несовместимыми. Благодаря этому значительно облегчается работа с разным ПО.
Wiki
Формат wiki предназначен для разметки веб-страниц, доступных для редактирования обычными пользователями. Даже новички в HTML-верстке могут легко создавать и изменять тексты. Безусловно, использование языка разметки типа wiki требует соблюдения неких правил, хотя и максимально простых. Доступен просмотр сделанных изменений на wiki-странице, при необходимости есть возможность вернуться к предыдущей версии документа.
Это в свою очередь значительно упрощает поиск и исправление ошибок. Администраторы страниц могут ограничивать пользователей в правах на редактирование созданных текстов, разрешая изменять текст только некоторым из них. Все wiki-документы связываются между собой посредством контекстных гиперссылок.
BBCode
Данный язык разметки предназначен в первую очередь для создания и форматирования сообщений на форумах, досках объявлений и в блогах. Здесь, как и в HTML, используются теги, но выделяются они квадратными, а не угловыми скобками. Стандартные средства разметки слишком сложны для их использования на перечисленных выше площадках.
Пользователи сталкивались с многочисленными ошибками в верстке сообщений. В связи с этим и возник BBCode. Отличительная особенность языка заключается в том, что для его восприятия браузером необходимо устанавливать отдельную программу, преобразующую код в понятный браузеру формат HTML.
Textile
Среди всех языков разметки данных этот формат считается одним из самых простых в использовании. Вместе с этим, при своей схожести с BBCode Textile более функционален. В основном он предназначен для автоматического преобразования текстовых блоков в код разметки таким образом, чтобы сохранялась структура абзацев. С использованием элементов Textile, в частности, работает CMS Textpattern.
На всем пути становления средств для разметки разработчики стремились найти баланс между желаниями и возможностями. Мощные инструменты SGML с одной стороны дают широкие возможности для структурной верстки текстовых документов, с другой — значительно затрудняют создание интернет-приложений. Язык HTML, напротив, максимально удобен для работы в интернете, однако его функционала и простоты уже недостаточно для современных нужд.
Читайте также!
Поиск разумного компромисса между богатством структурного описания и обширных возможностей для создания прикладных приложений начался с разработкой XML. Что представляет собой язык разметки данного типа с точки зрения той самой золотой середины? Учитывая стабильное развитие XML, этот формат вполне может стать искомым компромиссом.