Статьи
Что такое «качественный код»?
Согласно теории информации, «Код — правило (алгоритм) сопоставления каждому конкретному сообщению строго определённой комбинации символов (знаков) (или сигналов)»
В более широком понимании, кодом обычно называют какой-либо текст, написанный не на человеческом языке. К этому понятию относятся двоичный код (последовательность нулей и единиц), машинный код (набор инструкций для процессора), а так же всяческие программы, написанные на одном из языков программирования (причем не только для персональных компьютеров). В интернет-программировании, код имеет место быть в верстке и скриптах.
Верстка, применительно к веб-ресурсам, имеет два значения. С одной стороны - это процесс перевода текста и картинок из дизайн-макета в вид, понятный браузеру, с другой – результат этого процесса, готовый файл. Вот текст этого файла и называется кодом.
Никому не интересно, чтобы сайт отображался простой картинкой. Для нормальной работы сайту нужны ссылки, текст, рекламные элементы. Для того, чтобы все эти элементы нормально отображались на веб-странице, используют «язык гипертекстовой разметки», HTML (HyperText Markup Language).
Качественный код в верстке
Верстать можно по-разному. Можно с помощью специальных программ, wysiwyg-редакторов. Это, конечно, быстро и не требует специальных знаний, просто вставляй нужные элементы в нужное место, и на выходе получишь готовый файл с версткой. Исполнителю хорошо – заказчику не очень. Правда понимание минусов такого способа приходит позже – когда увеличивается сложность (а соответственно и стоимость) сопровождения сайта, которая нивелирует всю экономию, полученную от работы с таким горе-верстальщиком. Дело в том, что код, создаваемый этими редакторами, не оптимален, содержит много лишнего мусора, затрудняя сопровождение.
Можно верстать в старом стиле – так называемой «табличной» версткой. Раньше все сайты делались именно так. Всю поверхность рабочего поля сайта занимала таблица, в ячейках которой размещались другие таблицы, содержащие требуемые модули. Глубина таких вложений могла составлять от трех до восьми уровней. Код страницы был большой, трудночитаемый. Контент и информация о его отображении (размер текста, цвет, положение визуальных элементов) были перемешаны в одном файле, но других способов расположить в нужном порядке элементы на странице не было. С тех пор возможности HTML возросли, появилась возможность размещать описание отображения контента (представление) в отдельном файле (CSS-файл), позволяя существенно сократить количество кода, улучшить его читаемость и индексируемость поисковыми системами, снизить расходы на сопровождение и продвижение сайта, а таблицы применять только там, где они действительно нужны. Я создаю именно такую, «div»-ную верстку.
Можно при написании кода не следовать правилам «хорошего тона» - не документировать код, не использовать комментарии, именовать названия классов «как попало» и т.д. Таким обычно страдают начинающие разработчики, руководствуясь принципом «и так сойдет». И этот принцип, к сожалению, срабатывает с неопытными заказчиками. Программисту, который будет «натягивать» такую безобразную верстку на CMS, придётся заплатить за работу с таким материалом процентов на 10-30 больше, а в особо запущенных случаях, нужно будет вообще переделывать верстку.
Можно при верстке не обращать внимания на спецификацию языка HTML, не следовать рекомендациям консорциума W3C, который разрабатывает для Интернета единые принципы и стандарты для того, что бы сайт одинаково отображался в различных браузерах, можно «подогнать» верстку под один браузер, которым пользуется разработчик. Это тоже сократит время разработки, сократит стоимость верстки, но приведет к тому, что в некоторых браузерах сайт будет отображаться как было задумано, в других будут небольшие отличия, а в третьих (в основном в Internet Explorer старых версий) блоки могут совершенно уехать в сторону, а то и вообще не будут видны. На стоимость поддержки это повлияет мало, специалисты пользуются «продвинутыми» браузерами, а вот часть посетителей такое «кривое» отображение и неработоспособный функционал может отпугнуть!
Все эти «плохие» способы верстки значительно удешевляют стоимость разработки и облегчают её, но могут привести к повышенным тратам в будущем и даже к возникновению необходимости полной переделки верстки и всех последующих этапов создания сайта. Так работают либо новички, которые пока еще не знают всех подводных камней, либо недобросовестные разработчики, которые предпочитают количество, а не качество, не заинтересованы в результате и поддержании репутации.
Во избежание подобных конфузов, хороший разработчик всегда:
- - пишет код «руками», не используя wysiwyg-редакторы. Максимум – редактор кода с подсветкой синтаксиса.
- - использует «дивную» верстку, применяя таблицы только для вывода табличных данных.
- - выносит описание дизайна и скрипты в отдельные файлы.
- - в написании кода использует документирование, комментирование, семантически правильное именование переменных и классов, общепринятое форматирование элементов кода.
- - проводит проверку на «валидность» - соответствие рекомендациям W3C, «кроссбраузерность» - идентичное отображение сайта в различных браузерах (обычный список: IE6 и старше, FF3++, Opera 9++).