HTML-pedia
Веб-строительство

Сообщество
Веб-потребителей





DOCTYPE - причина половины проблем нашего мира

Введение

DOCTYPE - маркер, указывающий на синтаксический вариант HTML.

Связанные с HTML или "похожие" по назначению языки: XML, xHTML.

Т.о. можно утверждать, что попытка более тонкого определения синтаксиса, порождает сразу несколько языков.

Усложнение браузеров

Браузер, как инструмент проводящий синтаксическую разборку (парсинг) документа, должен содержать (в виде алгоритма) каждую возможную языковую версию. Следовательно, это приводит к увеличению объема кода и/или усложнению. Оба этих фактора порождают прямое увеличение эксплуатационных затрат и вероятность возникновения ошибок в продуктах, что, очевидно, тоже не снижает затрат, как прямых, так и косвенных.

Теоретически, для сокращения объёма парсера и возможности работы с "новыми" языками, можно использовать DTD. Однако, на практике, это приведёт к ещё большему усложнению браузеров. Плюс, отсутствие доверия к технической надежности документа, находящегося во власти W3C. При отсутствии внятных и объективных мотивов к созданию новых языков форматирования, кажется невероятным адекватное отношение консорциума к вопросам надежности собственных документов.

Учите DTD!

Для формального освоения языка, например с целью написать браузер, необходимо изучить DTD.

Бесполезно учить DTD!

Консорциум W3C решил использовать XML вместо DTD! Следовательно, "новые" стандарты будут представлены в XML.

Цифровой геноцид

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

В начале 90-х годов 20-го века, был мем о том, что производители компьютеров, весьма обязаны Уильяму Генри Гейтсу III, за неустанную заботу о повышении их доходов. Аналогичную ситуацию, можно проследить и среди браузеров, которые постоянно усложняются и становятся всё более "безопасными", а пользователи вынуждены их переустанавливать, тратя десятки часов (каждый) на инсталляцию и освоение. Дополнительно, существенная часть пользователей, не понимая действительной ценности нового ПО, тратит и существенные материальные средства на новое оборудование.

Соблюдайте права ваших посетителей

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

Но, аналогично, ваш ресурс окажется более приятен посетителю, если его браузер не выдаст сообщение о какой-нибудь критической ошибке приложения. Конечно, нет возможности у создателя веб-ресурса контролировать надежность ПО посетителей сайта, но, как ни странно, можно "раза в два" сократить вероятность проявления ошибок на стороне клиента.

Решение проблемы

Отказ от DOCTYPE!

Все актуальные и не специального приложения браузеры, поддерживают HTML 3.2. В тех браузерных проектах, которые ведутся достаточно давно, код производящий обработку "старого" формата достаточно надёжен. Большинство специализированных браузеров, при создании которых был отказ от HTML в пользу xHTML, будут нормально работать с XML документами.

В итоге, для решения проблемы совместимости и минимизации возникновения ошибок, можно рекомендовать использовать XML-синтаксис для HTML-формата содержащего теги из пересечения HTML 3.2∩4.01

Подобный подход, сэкономит не только ресурсы посетителей, но и силы автора страницы, т.к. избавляет от необходимости бесконечных проверок вида и функционирования своего ресурса в различных браузерах и их версиях.

Чтите DOCTYPE

Отказ от маркирования DOCTYPE-ом, вовсе не означает рекомендацию пренебрегать стандартами, пусть даже и чрезмерно навязываемыми. И, безусловно, каждый веб-мастер, должен проверять свои документы на соответствие стандартам. Кстати, данный документ, при локальной подготовке, прошёл "валидацию" и как xHTML, и как HTML.

@copyleft StudDraw

Хостинг от uCoz