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

Главная страница сайта — это вишенка на торте. Я буду точно знать, из чего она состоит и как работает после того, как будут спроектированы все остальные разделы.

Проектирую я снизу-вверх. Возьмём, например, интернет-магазин. Сначала карточка товара, затем список товаров в каталоге, затем список разделов каталога. Потом корзина и прочие важные разделы. И в самом конце — главная страница.

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

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

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

Когда ко мне приходит новый клиент и говорит «Давайте прикинем главную страницу» (кстати, такого давненько не было), я отвечаю: «Давайте взглянем на статистику». Это если пришли за редизайном существующего проекта. И почти всегда мы видим, что на главную заходит не больше 10-15% посетителей. Остальные начинают знакомство с каких-либо других разделов. Например, с карточек товаров или статей, хорошо проиндексированных поисковыми системами.

«Зачем начинать с главной, если на неё смотрят 15% ваших клиентов?» — спрашиваю я. «Давайте лучше нарисуем карточку товара. На ней всё те же навигация и дизайн-решение, а ещё мы будем уверены в том, что её не придётся перерисовывать, когда будет спроектирован весь сайт. А значит сэкономим время и ресурсы».

«Ого!» — говорят клиенты, — «Круто! Конечно, давайте так и сделаем. Странно, что вы первый, кто предложил нам такой подход».

Напоследок хочу сказать, что подход не в том, чтобы не начинать проектирование с главной страницы. Он в том, чтобы выполнять работу в той последовательности, которая будет максимально эффективна и эргономична в каждом конкретном случае. Чтобы дизайнер или проектировщик, когда предлагает начать с той или иной страницы, делал это в рамках более серьёзного обоснования, чем «потому что все так делают».

Комментарии (12)


  1. csharpreader
    17.10.2023 01:43
    +9

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

    У нас в редакции был один человек, который на пустом вордовском листе сначала писал рубрику, заголовок, потом отступал немного и в месте будущего конца писал подпись-фамилию. А потом, почесав подбородок и покурив, задумчиво вколачивал всю статью в середину пустого поля.

    Дико? Да. Но это был ЛУЧШИЙ журналист в редакции федерального уровня. И он был настоящий мастер по сравнению с любым другим.

    Да и я в своё время мог, спрятавшись в туалете, где музыка и шум (но это было самое тихое место какого-нибудь мероприятия), мог стиснуть зубы и, зажав от шума уши руками, надиктовать по телефону в редакцию (для скорости, чтобы «Срочно в номер!») полный текст статьи на первую полосу. Сходу. Без заминок. Начав с заголовка.

    Но это был действительно редкий, высший класс. А остальные «начинали с карточки товара». Впрочем, они и писали всегда лишь на третью и четвертую полосы.


    1. Ekamelev Автор
      17.10.2023 01:43
      +1

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

      Ну или вот пример статьи, которую я не смог бы написать за один присест: https://habr.com/ru/articles/753156/

      В общем, везде свои нюансы и исключения.


    1. Germanjon
      17.10.2023 01:43
      +5

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


      1. KongEnGe
        17.10.2023 01:43

        Да ведь это метод резиновой уточки: пока объяснишь ей, в чем твой затык, уже и делать ничего не нужно оказывается.


    1. Bobzds
      17.10.2023 01:43

      Мне нужны фото паука до обеда, слышал Паркер?


  1. FinchW
    17.10.2023 01:43

    Спасибо за взгляд на прототипирование под другим углом.

    Стереотипно, конечно, главную отрисовывать, почему-то


  1. VladimirFarshatov
    17.10.2023 01:43
    +2

    За свой ИТ опыт знаю только один случай, когда проект (не мой, но присутствовал с начала) начинался с проектирования кейсов применения, под них была разработка структур данных, определены структуры хранения в БД, выбрано БД по требованиям проекта из трех вариантов, Определены интерфейсы управления в UML диаграммах, требования к безопасности и система прав доступа, и только потом разработка дизайна страниц.

    Проектирование всей системы шло около 1.5 лет, из них только структуры хранения (4НФ для БД) заняли больше полугода. Но, знаю что автор за них защитил кандидатскую диссертацию.

    Собственно реализация базовой части ТЗ заняла около полугода.


  1. LolaBola
    17.10.2023 01:43
    +1

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


    1. sovaz1997
      17.10.2023 01:43
      +1

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


      1. LolaBola
        17.10.2023 01:43

        Все эти вопросы можно решить на этапе варфреймов. А так ты по сути не делаешь главную сразу только потому что не знаешь что туда разместить)) а когда типа нарисуешь внутренние - то знаешь)) Если же продумать функционал заранее, на этапе варфреймов, то остаётся сделать стиль и форму, сделать это с главной страницы намного проще, чем подход собирания главной как конструктор. На мой взгляд для достижения наилучшего качества рисовать нужно не блочно а от начала и до конца, сверху вниз, то есть вверху шапка, затем середина, снизу футер, всё это должно подчиняться тем правилам, которые придумал дизайнер, находится по сетке и тд, если нарисовать это сразу - всё получится, а если нарисовать это отдельно друг от друга в разное время - то результат будет скорее всего намного хуже, он не будет выглядеть единым, цельным продуктом.


  1. Vorchun
    17.10.2023 01:43
    +1

    Я тоже не начинал с главной и своих менеджеров к этому приучал. Посыла ровно два:
    1. Начинать надо со сложного. Главная - не самая сложная страница. Есть каталог, есть лендинги (да-да, тут тоже надо подумать и они приносят деньги).

    2. Пользователи с поиска в большинстве случаев заходят на внутренние. Это основная точка контакта. Если не будем успевать, то главную можно упросить и сократить время разработки. А блоки взять из уже разработанных на внутренних страницах.

    В целом, считаю подход к снаряду рабочий.


  1. JordanCpp
    17.10.2023 01:43

    Хе Хе. У вас есть заказчик и ему не важно как устроено всё внутри, но по визуалу сайта будет оценивать всю работу. Не важно какие паттерны или системы кеширования. Заказчик заходит на сайт с одной кнопкой и видит, что ничего не сделано. Ему всё равно на бэк, ему нужно закруглить кнопочку и вот сюда добавить таблицу.