Новая базовая тема оформления

Материал из Центр поддержки системы бронировании
Перейти к навигации Перейти к поиску

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

Общая скорость работы в сравнении с предыдущей базовой темой возросла в 1.5-3 раза.

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

За счет технической оптимизации и переработки юзабилити, оптимизирована возможность кастомизации базовой темы клиентом, а также кастомизации и быстрых доработок веб-специалистами Mute Lab, которая не влечет за собой необновляемоcть кастомизированных частей.

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

В рамках работ над новой темой мы внимательно прислушиваемся ко всех пожеланиям и рекомендациям для упрощения работы с Немо веб-мастерами клиентов.


Юзабилити и улучшение дизайна

  • Все страницы, формы, кнопки, попапы приведены к общему дизайну;
  • Улучшены главные части продающих страниц:

форма и результаты бронирования имеют общие тайтлы, степ-бары, унифицирован внешний вид и расположение кнопок;

  • Унифицированы небронирующие страницы, а также боксы (в особенности, на странице информации о заказе);
  • Проработаны юзабилити формы заполнения данных;
  • Проработаны юзабилити с запоминанием кук, процес начат на форме поиска авиа, в ближайшем времени будет продолжен на все формы;
  • Ко всем полям добавляются плейсхолдеры;
  • Улучшена валидация, добавили новые правила для многих кейсов;
  • Подготовлена платформа для имплементации более удобных автокомплитов и календарей;
  • Улучшена локализация;
  • Начата оптимизация иконок под Retina;
  • Как один из важнейших оптимизационных процессов, в ближайшее время будет закончен переход от реквест стабов к попапам;
  • Уменьшено количество ошибок,все ошибки отображаются понятно и корректно, оптимизирована скорость обработки 404, улучшено качество отдачи 404;
  • Пересмотрен функционал в личном кабинете, проведен первый этап оптимизации работы с фильтрами и очередями;
  • Начата переработка модулей моих пассажиров, профиля пользователя, заявок на модификацию, сообщений. В будущем дизайн этих модулей будет упрощен, но уже сейчас они соответствуют технологическим требованиям.
  • Подготовка платформы для поддержки мобильных и тач-устройств.

Техническая часть

  • Ускорена работа страниц.
  • Уменьшено количество разметки.
  • Введена методология абстракции, модели данных от визуальной составляющей и манипуляции с данными (модель Model-View-Controller максимально примененная к верстке).
  • Разделение: модель / разметка / визуальная CSS / манипуляции Javascript.
  • Необходимые данные доступны везде в модели данных.
  • Уход от использования инлайнового CSS и в максимально возможной степени, инлайнового Javascript.
  • Оптимизирован и склеен CSS, теперь он строится на препроцессорах.
  • Абстрагированы визуальные классы от классов для манипуляций.
  • Оптимизирован нагрузочный трафик при Ajax, все переведено на Json.
  • Оптимизированны скрипты, все скрипты переписанны на последних версиях современных javascript-фреймворков. В дальнейшем, с обновлениям этих фреймворков.
  • Специфические вещи вынесены как отдельные плагины, что позволяет не конфликтовать с подключаемыми клиентом плагинами.
  • Код максимально приведен в соответсвие со спецификациями.
  • Полностью новая библиотека валидации с семантической разметкой правил, которая позволит создавать любые правила и таким образом направлять действия пользователей в любых кейсах.
  • Внедрен фреймворк работы с куками, который позволяет максимально запоминать данные — как одно из приоритетных направлений развития.
  • Новые постфильтры, скорость которых возросла в 2-3 раза, более того, они достаточно легко кастомизируются.
  • Полностью переработана страница авиавыдачи, все три типа группировки результатов на выдаче работают с постфильтрами и максимально быстро.
  • На страницу авиавыдачи вывели новые данные.
  • Ввод ограничения на чтение тарифных правил, кроме случаев, если пользователь запрашивает непосредственно их.
  • Переработан ЛК, как клиентский так и агентсткий, внедрен новый фреймворк работы с таблицей заказов, начали пересматривать системы филтьтров и очередей — в будущем предстоит разширение этого функционала.
  • Удален весь deprecated функционал.
  • Переработана мини-форма: на данный момент она работает со всеми типами маршрутов и дополнительными параметрами без ограничений, т.е. повторяет возможности основной авиационной формы.
  • Ускорена и унифицирована матрица дат.
  • Оптимизированы для кастомизации попапы путеводителя, со временем будет совершен полный уход от использования iframe.
  • Переход к поддержке только современных браузеров, что позволило ускорить работу страниц и уменьшить их вес.

Подключение компонент системы и работа с индивидуальными темами оформления

Новая базовая тема позволяет подключать и кастомизировать компоненты просто и быстро.

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

Поддержка браузеров

В разработке новой базовой темы оформления был использован подход graceful degradation (http://webdesign.about.com/od/webdesignglossary/g/graceful-degradation.htm), а именно — поддержание работоспособности а не абсолютной визуальной идентичности во всех версиях всех браузеров. Для новой темы также применим подход «две последних стабильных версии популярных браузеров». В частности, новая базовая тема полноценна в таких версиях браузеров:

Google Chrome

Две последние стабильные версии.

На 04/2013 — 25 и 26.

Mozilla Firefox

Две последние стабильные версии.

На 04/2013 — 19 и 20.

Opera

Две последние стабильные версии.

На 04/2013 — 12.10 и 12.00.

Поддержа специфических для Opera проблем — deprecated процесс, в связи с ближайшим переходом браузера на движок Blink, 

после чего уменьшиться цикл обновлений.

Safari (OS X)

Две последние стабильные версии.

На 04/2013 — 5 и 6.

Поддержка Safari под Windows не оказывается — 6 версия не выпускалась под Windows, 5 официально устарела и не доступна для скачивания.

Internet Explorer

Две последние стабильные версии.

На 04/2013 — 9 и 10.

Также учтены все требования для поддержки версии 11 после ее выхода.
Internet Explorer 8 поддерживается только в функциональной части, визуальные преимущества не поддерживаются 
(например, градиенты, закругление уголков), по причине того, что рендер таких вещей сильно замедляет работу. 
Разрабатывать же отдельную версию для корректного отображения в версии браузера, доля которой с каждым днем падает, 
не является целесообразным. Мы планируем отказаться от поддержки версии IE 8 в течение года.
Поддержка Internet Explorer 7 и ниже не гарантируется. В ближайшем будущем предусмотрена работа по восстановлению
работоспособности функционала в версии IE7. 

Другие

Мы поддерживаем браузеры на базе Chromium, но только до момента перехода Chrome и Opera на движок Blink. С этого момента, Chromium будет признан устаревшим. Редкие браузеры на WebKit не поддерживаются, в связи с ближайшим уходом основных мейнтейнеров движка на свои разработки.

Также, поддерживаются две последние стабильные версии Safari под iOS (iOS6 и iOS5).