Как не стоит создавать сайты. Никогда.

15.10.2014

Марина Лебедева

Предыстория.

Заказчик и предыдущий исполнитель проекта будут умышленно скрыты. Во избежание неприятных ситуаций. Это не гневная статья, а просто размышления о том, что нужно не допускать халтуры в своей работе. Сразу говорю, что от заказчика проекта у меня только положительные эмоции. Работать с ним мне очень понравилось! Побольше бы таких людей.

К нам обратился человек с просьбой доработать функционал его сайта. Сайт реализован на Wordpress. Хочу сказать, что данная CMS изначально была разработана как блоговая, но с появлением новых плагинов, виджетов и фич, стала площадкой для разработки различных сайтов: от визиток до полноценных интернет-магазинов.

До данного заказа мы не создавали и не дорабатывали сайты на этой CMS, но из-за этой причины отказываться от работы не собирались.

Эта статья не о нашем тщеславии и не о том, какие мы классные и как превосходно мы умеем создавать удобные и качественные сайты. Мы не идеальны, но мы не допускаем халтуры в работе. Это наш имидж, это наша репутация и статус. Это статья о том, как НЕ надо работать. Кем бы Вы небыли. Особенно верстальщиками.

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

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

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

Есть некоторые вещи, на которые смотришь и думаешь: «Я мог(ла) бы сделать лучше», а есть «Что здесь творится?! Я лучше ничего не буду трогать, ибо это все развалится к чертям собачьим». Мир несовершенный, но это уникальный случай. Его мы просто не могли обойти стороной — он этого заслуживает. Итак, приступим.

Если Вы немного понимаете в CSS, верстке, то это задачка для вас:

Что тут происходит? Можете понять? Или хотя-бы угадать? Сдаетесь?

Вот ответ: человек скрывает элемент таким «экстравагантным» способом, по-видимому display: none; религия запрещает.

Теперь вы понимаете, что будет дальше? Это только начало…

Инлайновые стили. С появлением «инспекторов кода» в браузерах, стало практически ненужным и неиспользуемым средством, которое просто загаживает разметку. Да и идея разделения HTML и CSS взялась не просто так. Так что html в html (или в template.php/template.tpl.php), а CSS в CSS. Это правильно и очень красиво! Такого здесь не слышали.

Ладно стили, но что происходит с тегами? Например, где открывающий hgroup? Непонятно. Остальное оставлю без комментариев.

Мне кажется, по всей проанализированной разметке, что такие теги как p, span, div появились зря. Тега font хватило бы, так как он везде и всюду.

Идеальная картина:

Идём дальше и снова font:

Грустно? Мне тоже…

Это шедеврально, на выходе получается hr.

Вы никогда не задумывались зачем такое обилие html-тегов? Ммм, а о том, как мы обделяем теги, которые не используем при верстке?

А вот то, чего мы уж точно не ожидали!

Вот это поворот! Бедный br. Так его точно не использовали.

Чуть ниже довольно-таки интересный кусок кода. Знаете, что делает?

В $_SERVER[‘REQUEST_URI’] проверятся, является данная страница главной(front_page). А как же добрые стандартные php функции? Например, эта:

<?php if (is_front_page()){ ?>


Теперь мы плавно переходим к js. Его тоже зацепило: сначала, мы удаляем класс sehe2 и sehe1, потом мы вешаем классы sehe1 и sehe2.

Ну и напоследок, мы оставили Вам самое интересное:


Как Вы думаете, что это? Нет, это Paint или размытие в Photoshop. Подсказка: приглядитесь к картинке ниже.


Теперь узнаете? Очень оригинальное решение для создания тени у блока.

Мы не старались искать косяки в коде и никого не хотели обидеть, идеального кода нет. Просто такое здесь в каждой строке. Не делайте так. Нужно любить то, чем занимаешься и то, что делаешь. К коду и разработке сайта, конечно, это сложно отнести, но его нужно уважать. Тот парень, который это всё писал сэкономил 10 минут, а с ростом проекта эти 10 минут превратились во многие часы страшных правок разметки сайта или его стилей. Сразу делайте так, чтобы не приходилось при самом малейшем изменении функционала вашего сайта кардинально переписывать очень многие вещи.

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


Если вы хотите писать качественные проекты, которые можно легко масштабировать, внедрять новый функционал, то рекомендую прочесть хотя бы одну книгу по рефакторингу, например, «Рефакторинг» Мартина Фаулера, а так же присмотреться к методологиям разработки, например, к BEM от ребят из Яндекс.

Devdigital. Мы создаём сайты. С мыслью о будущем.

  • Общее

Комментарии

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

Вы вернулись, чтобы дочитать статью? Кликните на меня, я найду то место, где вы остановились.