'

Кратко о jQuery

Понравилась презентация – покажи это...





Слайд 0

Кратко о jQuery


Слайд 1

История jQuery 2006 14 января       первый анонс о создании библиотеки 26 августа      jQuery 1.0 2007 14 января      jQuery 1.1 10 сентября    jQuery 1.2 17 сентября   jQuery UI 1.0 2009 14 января     jQuery 1.3 2010 14 января     jQuery 1.4                     


Слайд 2

Популярность jQuery (Google Trends) jquery javascript 1.00  prototype javascript 0.78  dojo javascript 0.22  mootools javascript 0.16  yui javascript 0.12   


Слайд 3

Кто пользуется jQuery Wikipedia.org Microsoft.com IBM.com Amazon.com StackOverflow.com Bing.com Bit.ly Wordpress.com Mtv.com Whitehouse.gov ... Nokia и Microsoft оказывают материальную поддержку проекту и включают в свои продукты. Доля jQuery на сайтах  по данным BuiltWidth.com Каждый 5-й сайт использует jQuery


Слайд 4

jQuery на каждом третьем сайте с JavaScript  по данным BuiltWidth.com


Слайд 5

Как работают селекторы Sizzle - открытый движок селекторов (4Кб min+gzip) http://sizzlejs.com/ разбор селекторов справа налево (как в браузерах) div.menu a оптимизации для самых популярных селекторов #id div в jQuery - начиная с 1.3.2 элементы возвращаются в порядке следования их в DOM-дереве


Слайд 6

Browser sniffing... определение браузера ($.browser) - устаревающий подход парсинг navigator.userAgent либо navigator.appName if ( /mozilla/.test( ua ) && !/compatible/.test( ua ) ) { ret = { browser: "mozilla", version: /rv:([\w.]+)/ }; }  [-] неуниверсальный и трудноподерживаемый набор regexp'ов [-] легко подделать заголовок userAgent [-] код необходимо переписывать при выходе новых версий браузеров


Слайд 7

... vs Feature Detection определение фич браузера ($.support) - правильный подход (v1.3+) hrefNormalized:  a.getAttribute("href") === "/a", opacity: /^0.55$/.test( a.style.opacity ), [+] простой и легкочитаемый код [+] код готов к выходу новых браузеров, поддерживающих тестируемую фичу


Слайд 8

Браузеры Safari 3.2, Safari 4 Firefox 2, Firefox 3, Firefox 3.5 IE 6, IE 7, IE 8 Opera 10.10 Chrome Необходимо ограничить число 100% поддерживаемых браузеров самыми популярными Причина: сложность в тестировании


Слайд 9

Тестирование jQuery QUnit (тестовый фреймворк для jQuery) Selenium IDE (функциональное тестирование) Swarm Grid (распределенное тестирование)


Слайд 10

Развитие фреймворка Выход  jQuery 1.4 в январе 2010 поддержка .live() для событий  submit, change, mouseenter, mouseleave, focus и blur улучшена производительность операций над DOM: append, prepend, find, empty, remove, addClass, removeClass, hasClass, attr, css увеличена производительность базовых и самых популярных селекторов, множество оптимизаций Ускорение до 3-х раз


Слайд 11

Развитие фреймворка (2) поддержка ECMAScript 5 (декабрь 2009) убраны устаревшие конструкции, добавлена поддержка JSON.parse починено 207 багов (в прошлой версии 97) число тест-кейсов удвоилось (3060 против 1504) Google Closure Compiler vs YUI Compressor (13% выигрыш) проект переехал на git (упрощение приёма патчей)


Слайд 12

Внутренние оптимизации     


Слайд 13

Оптимизация работы с DOM     


Слайд 14

Результаты сравнения  js-фреймворков


Слайд 15

Шпаргалка Онлайн-версия документации на одной странице http://futurecolors.ru/jquery/


Слайд 16

Шпаргалка Оффлайн-версия (pdf, png) более 5000 скачиваний за первые сутки


Слайд 17

Будущее  jQuery модульность фреймворка       - core.js       - attributes.js       - css.js       - manipulations.js       - traversing.js асинхронная подгрузка модулей  ($.require) фабрика плагинов-виджетов ($.plugin) jQuery на мобильных устройствах (iPhone, Palm Pre, Android, Fennec) репозиторий официальных плагинов и полная переделка существющего сайта плагинов


Слайд 18

Конец


×

HTML:





Ссылка: