Новая базовая тема оформления
Новая базовая тема оформления написана с учетом методологии разработки, что делает её более стабильной в эксплуатации.
Общая скорость работы в сравнении с предыдущей базовой темой возросла в 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;
- Переход к поддержке только современных браузеров, что позволило ускорить работу страниц и уменьшить их вес.
Подключение компонент системы и работа с индивидуальными темами оформления
Новая базовая тема позволяет подключать и кастомизировать компоненты просто и быстро.
В новую базовую тему входит отельная компонента.
На данный момент работы по ней еще ведутся, но все вышесказанное относится к ней, кроме некоторых неимплементированных вещей - валидации, постфильтров, запоминания в куках. В ближайшее время это будет реализовано.
Создание клиентских индивидуальных тем оформления на базе новой темы упрощено и ускорено. Новая тема позволяет создавать индивидуальные темы оформления, в которых меняются только некоторые страницы, без уменьшения функциональности остальных. В ней также предполагается широкое использование модуля ЦМС, которое также не будет влиять на функциональность системы. Учитывая маштабирование визуального и модели данных, система практически полностью абстрагирована от внешних изменений. В ней используются подходы к маштабированию, потому, например, при увеличении данных, количества пунктов меню и т.д, функциональность не снижается.
Поддержка браузеров
В разработке новой базовой темы оформления был использован подход 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.