Новая базовая тема оформления: различия между версиями

Материал из Центр поддержки системы бронировании
Перейти к навигации Перейти к поиску
м (Поддержка браузеров)
м (Поддержка браузеров)
Строка 77: Строка 77:
 
== Поддержка браузеров ==
 
== Поддержка браузеров ==
  
Основная концепция — мы поддерживаем две последние стабильные версии быстрообноляемых браузеров.
+
Основная концепция — мы поддерживаем две последние стабильные версии быстрообновляемых браузеров.
  
 
'''В частности:'''
 
'''В частности:'''

Версия 12:32, 30 апреля 2013

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

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

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

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

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

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


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

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

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

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

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

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

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

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

В новую базовую тему входит отельная компонента.

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

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

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

Основная концепция — мы поддерживаем две последние стабильные версии быстрообновляемых браузеров.

В частности:

Google Chrome

Две последние мажорные версии stable build.

Opera

Две последние мажорные версии stable build.

Не поддерживается в версиях ниже 12.

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

Mozilla Firefox

Две последние мажорные версии stable build — Версии 27, 26

Safari

Две последние мажорные версии stable build — Версии 6 и 5

Версия Safari 5 поддерживается только в режиме сохранения функциональности.

Причины:

— Под IOS Safari обновляется автоматически; 
— Safari 5 под Windows признан компанией Apple устаревшим, скачать и установить его официально невозможно.

Internet Explorer

Две последние мажорные версии stable build — Версии 10 и 9

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

Поддержка Internet Explorer 7 и ниже не гарантируется. В ближайшем будущем предусмотрена работа по восстановлению работоспособности в версии 7.

Другие

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

Мобильные браузеры

Safari IOS для IPhone, Safari IOS для IPad, версии 6, 5.

После выхода Safari IOS 7 поддержка версии 5 прекратится.

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