Top Banner
Страст Image by Christoffer Johansson : https://flic.kr/p/7UCbZJ
29

Adaptive design with Fe Framework (Bulgarian version)

Jul 18, 2015

Download

Internet

Peter Naydenov
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Adaptive design with Fe Framework (Bulgarian version)

Страст

Image by Christoffer Johansson : https://flic.kr/p/7UCbZJ

Page 2: Adaptive design with Fe Framework (Bulgarian version)

Възможности

Page 3: Adaptive design with Fe Framework (Bulgarian version)

Краен резултат!

Page 4: Adaptive design with Fe Framework (Bulgarian version)

За да може после да е лесно...

Петър Найденов – софтуер архитект в еКомера

Page 5: Adaptive design with Fe Framework (Bulgarian version)

Нова платформа?

Защо?

Page 6: Adaptive design with Fe Framework (Bulgarian version)

Брад Фрост

Video: https://vimeo.com/55076713

Slides: http://www.slideshare.net/bradfrostweb/beyond-media-queries-anatomy-of-an-adaptive-web-design

Page 7: Adaptive design with Fe Framework (Bulgarian version)

Респонсив е само върха на айсберга

Page 8: Adaptive design with Fe Framework (Bulgarian version)

Само 10% от jQuery модулите са RESPONSIVE

www.unheap.com

Page 9: Adaptive design with Fe Framework (Bulgarian version)

Media Query за JavaScript?

Page 10: Adaptive design with Fe Framework (Bulgarian version)

Подредба на кодDOM vs. Обекти

Page 11: Adaptive design with Fe Framework (Bulgarian version)

Изисквания към код

• Гъвкавост за модифициранеИзбягване на функционален callback. Да се избегнат ситуации с ‘callback hell’. Управление, базирано изцяло на сигнали.

• ХомогенностЕднотипна структура и управление на обекти. Обща концепция за имена на методи.

• ЧетимостАбзаци от логика. Ясно визуално разделение на логически блокове. Визуални патерни.

• ПреизползваемостАбстрактен програмен код. Ясно разделение на програмна логика, селектори и обектно поведение.

• МодулностНезависимост на модулите. Да могат да бъдат включвани или изключвани без това да спираработата на останалата част на приложението.

Page 12: Adaptive design with Fe Framework (Bulgarian version)

Управление на риск

Page 13: Adaptive design with Fe Framework (Bulgarian version)

Още...

• МногослойностНе е задължително използването на всички елементи на платформата. Заменяемост.

• Лесна теория и бърз старт;Начален старт в рамките на един ден.

• Бърза интеграция на jQuery модули;Богата библиотека от поддържани визуални елементи.

• Вградени добри практики за производителност ( performance );Автоматизиране на performance практиките.

Page 14: Adaptive design with Fe Framework (Bulgarian version)

Предизвикателството e

прието!

Image : https://flic.kr/p/cKi7Zd

Page 15: Adaptive design with Fe Framework (Bulgarian version)

Общ архитектурен модел

Всеки файл от средата за разработка може да контролира повече от един аспект на крайния продукт.

Page 16: Adaptive design with Fe Framework (Bulgarian version)

Общ архитектурен модел

• Node.js + Grunt

• Детектор за устройства

• Конфигурация

• Зареждане на ресурси

• CSS

• JavaScript

Page 17: Adaptive design with Fe Framework (Bulgarian version)

Конфигурация

Page 18: Adaptive design with Fe Framework (Bulgarian version)

CSS процес

Node.js

+

Grunt

mini

green

maxi

Configuration

CSS-Dev CSS

mobile

smart

tablet

desktop

tablet HQ

Теми

Page 19: Adaptive design with Fe Framework (Bulgarian version)

Архитектура на JS приложения

Backbone

модел

JS

обект

събитиен

пакет

class инстанция поведение

JS

обект

събитиен

пакет

jQuery модул JS Адаптери

Backbone

модел

адаптор

Page 20: Adaptive design with Fe Framework (Bulgarian version)

Архитектура на JS приложения

Page 21: Adaptive design with Fe Framework (Bulgarian version)

Архитектура на JS приложениявходящ

сигнал

изходящ

сигнал

Събитиен пакет за обекта megaMenu

startdesktop

megaMenu:ON

stoptablet

megaMenu:OFF

stopmobile

megaMenu:OFF

Page 22: Adaptive design with Fe Framework (Bulgarian version)

Архитектура на JS приложения

Page 23: Adaptive design with Fe Framework (Bulgarian version)

Архитектура на JS приложения

Page 24: Adaptive design with Fe Framework (Bulgarian version)

Експерименти и резултати

• HTML 5 APIs

• Flexbox модел

• Маркъп техника за съдържание

• CSS транзишъни и анимации

• Разпознаване на устройства

• Polyfills и CDN

• Скорост на jQuery и Backbone събития

Page 25: Adaptive design with Fe Framework (Bulgarian version)

Експерименти и резултати

URL: http://jsperf.com/events-vs-events2/38

Page 26: Adaptive design with Fe Framework (Bulgarian version)

Време за демо

Screenshot from game “CRASH TIME 5”. URL: http://megagames.com/demos/crash-time-5-undercover-demo

Page 27: Adaptive design with Fe Framework (Bulgarian version)

Ползи

• Скорост на изпълнение

• Адаптив + респонсив

• Работещи перформанс практики

• Обновяване на библиотеки, без промяна на код

• Сорс код сигурност

Page 28: Adaptive design with Fe Framework (Bulgarian version)

Въпроси?

?

Page 29: Adaptive design with Fe Framework (Bulgarian version)

google.com/+PeterNaydenov

Петър НайденовФронт-енд архитект в еКомера

@PeterNaydenov

[email protected]

bg.linkedin.com/in/peternaydenov/