Презентация «WebMarkupMin – HTML-минификатор для платформы .NET» с MskDotNet ...Andrey Taritsyn
Сначала мы поговорим о том, зачем нужна HTML-минификация, о ее почти 20-летней истории и эволюции программных средств, автоматизирующих данный процесс. Затем о WebMarkupMin и его модулях. Рассмотрим примеры его использования в ASP.NET Core и ASP.NET 4.X. Измерим эффективность минификации с помощью WebMarkupMin. Перечислим известные программные продукты и веб-сайты, которые его используют. А также рассмотрим альтернативные решения для .NET и ASP.NET.
Видео-запись доклада доступна на YouTube - https://www.youtube.com/watch?v=jmPkUD_SDOk
Марат Хайрулин, менеджер по партнерским коммуникациям, Microsoft, представил новую модель лицензирования Windows Server 2016, преимущества OEM-лицензий, провел обзор лицензирования ОС семейства Windows и рассказал о рисках использования пиратских лицензий и преимущества использования подлинного ПО для бизнеса.
Анонс новых моделей серверов ДЕПО Шторм российского производстваDEPO Computers
Андрей Состин, руководитель направления серверной продукции DEPO Computers, рассказал о возможностях и преимуществах отечественных серверных систем DEPO и анонсировал новые модели двухпроцессорных серверов DEPO Storm российского производства на базе ОС Windows Server 2016.
Почему можно хотеть использовать кастомные шрифты. Какой нужен оптимальный синтаксис и какие нужны форматы шрифтов для подключения. Как легко подключать кастомные шрифты в терминологии БЭМ.
Introduction HackDemocracy Meetup 5: Citizen Platforms for Political Accounta...hackdemocracy
HackDemocracy Brussels' 5th Meetup on Citizen Platforms for Political Accountability & G1000 Citizens Summit. Presentations about Demoscha.Be and Memopol.
Видео: http://getdev.net/Event/client-side-web-performance
Рассказывает о том, на что тратится время при выполнение HTML-based Web-приложений, и о том, как увеличить производительность таких приложений на стороне клиента
Презентация «WebMarkupMin – HTML-минификатор для платформы .NET» с MskDotNet ...Andrey Taritsyn
Сначала мы поговорим о том, зачем нужна HTML-минификация, о ее почти 20-летней истории и эволюции программных средств, автоматизирующих данный процесс. Затем о WebMarkupMin и его модулях. Рассмотрим примеры его использования в ASP.NET Core и ASP.NET 4.X. Измерим эффективность минификации с помощью WebMarkupMin. Перечислим известные программные продукты и веб-сайты, которые его используют. А также рассмотрим альтернативные решения для .NET и ASP.NET.
Видео-запись доклада доступна на YouTube - https://www.youtube.com/watch?v=jmPkUD_SDOk
Марат Хайрулин, менеджер по партнерским коммуникациям, Microsoft, представил новую модель лицензирования Windows Server 2016, преимущества OEM-лицензий, провел обзор лицензирования ОС семейства Windows и рассказал о рисках использования пиратских лицензий и преимущества использования подлинного ПО для бизнеса.
Анонс новых моделей серверов ДЕПО Шторм российского производстваDEPO Computers
Андрей Состин, руководитель направления серверной продукции DEPO Computers, рассказал о возможностях и преимуществах отечественных серверных систем DEPO и анонсировал новые модели двухпроцессорных серверов DEPO Storm российского производства на базе ОС Windows Server 2016.
Почему можно хотеть использовать кастомные шрифты. Какой нужен оптимальный синтаксис и какие нужны форматы шрифтов для подключения. Как легко подключать кастомные шрифты в терминологии БЭМ.
Introduction HackDemocracy Meetup 5: Citizen Platforms for Political Accounta...hackdemocracy
HackDemocracy Brussels' 5th Meetup on Citizen Platforms for Political Accountability & G1000 Citizens Summit. Presentations about Demoscha.Be and Memopol.
Видео: http://getdev.net/Event/client-side-web-performance
Рассказывает о том, на что тратится время при выполнение HTML-based Web-приложений, и о том, как увеличить производительность таких приложений на стороне клиента
Introduction HackDemocracy Meetup 5: Citizen Platforms for Political Accounta...hackdemocracy
HackDemocracy Brussels' 5th Meetup on Citizen Platforms for Political Accountability & the G1000 Citizens Summit. Presentations by Demoscha.Be and Memopol.
Wikileaks: secure dropbox or leaking dropbox?hackdemocracy
Jean-Jacques Quisquater is a professor of cryptography who discusses ways for organizations like Wikileaks to help leakers remain anonymous using technology. He explains how a perfect anonymous electronic dropbox could allow leakers to securely submit information without being identified. Quisquater then outlines various technologies like encryption, anonymity networks, and steganography that could help protect a leaker's privacy and anonymity.
HackDemocracy 4: Open Data in Belgium Introductionhackdemocracy
This document summarizes a meetup event hosted by HackDemocracy in Brussels, Belgium about open data. It includes thanks to BetaGroup Coworking for hosting the event. The agenda includes 3 presentations about local open data initiatives in Brussels and a federal open data initiative in Belgium. The goal of HackDemocracy is to bring hackers and public officials together to collaborate on innovations to strengthen democracy using open data.
The document discusses Fair Observer, an online media platform that aims to provide contextualized analysis of important global issues through contributions from experts around the world. It summarizes Fair Observer's value proposition as capturing diverse perspectives across disciplines and countries to analyze trends. The document also provides details on Fair Observer's founders, editorial team, contributor network, growth metrics, business model focusing on various revenue streams, and key differentiators compared to other media.
Pirate Party, Wikileaks & the Anonymoushackdemocracy
The document summarizes a meeting of the HackDemocracy group on December 16, 2010. It discusses the ideals of the Pirate Party, such as openness, transparency, and sharing information. It notes that the Pirate Party wants to reform copyright and patent systems and respect privacy rights. It provides a brief history of the Belgian Pirate Party, including its founding in 2006, reboot in 2009 after EU elections, and recent political actions and participation in 2010 federal elections.
HackDemocracy Brussels 3: Using technology to improve School Choice Procedureshackdemocracy
The document discusses school choice procedures. It first addresses why regulating school choice is important for equity and to account for social preferences over school composition. It then examines whether procedures should be top-down or bottom-up in taking parents' preferences into account. Three criteria for evaluating procedures are discussed: efficiency, no justified envy, and strategic simplicity. Several school choice mechanisms are outlined, including the student-proposing deferred acceptance algorithm. Preliminary evidence from Dutch-speaking preschools in Brussels is also presented.
Online and Offline Activism with the Indignados/Occupy movementhackdemocracy
This document announces a meeting of HackDemocracy Brussels to discuss online and offline activism with the Indignados movement. It provides contact information for HackDemocracy Brussels and thanks the speakers and host locations. The document indicates that today's speakers will discuss the Indignados movement's use of technology for global coordination, share perspectives on e-democracy, and provide insights into tensions between legitimacy and efficiency when online and offline activism converge.
Introduction to HackDemocracy Brussels Meetup 3hackdemocracy
1) This document summarizes a HackDemocracy meetup in Brussels on February 23, 2011. It includes the location, contact email, and Twitter handle for HackDemocracy.
2) The meetup featured 3 presentations: the first was on analyzing traffic to a Belgian political website, the second was on online voting and verifiable voting systems, and the third was on how technology can improve school enrollment policy.
3) The meetup was thanking various groups and individuals for their support, and was also encouraging others to get involved by speaking at future meetups or otherwise assisting the organization.
The document summarizes media freedom and internet usage in Central Asian countries. It discusses how countries like Kazakhstan, Kyrgyzstan, Tajikistan, Turkmenistan, and Uzbekistan rank poorly in press freedom indexes due to factors like state control of media and censorship. It also notes that internet penetration remains relatively low in the region, concentrated in urban areas, and subject to censorship and monitoring. The document is about an organization called neweurasia that aims to promote independent media and voices from Central Asia online through blogging and publishing.
Political Memory - Memopol Toolkit (HackDemocracy Meetup 5)hackdemocracy
Political Memory (Memopol) is a toolbox designed to help citizens reach members of European Parliament (MEPs), and track their voting records. Presented at HackDemocracy Brussels' 5th Meetup.
Видеозапись встречи:
http://getdev.net/Event/angularjs
Стремительно набирающий популярность фреймворк, облегчающий создание клиентских приложений. SPA, MVC, MVVM и множество других облегчающих разработку акронимов.
В докладе предполагается общий обзор, показывающий отдельные части, из которых состоит фреймворк, то, как они живут вместе друг с другом и существуют в окружающем мире страниц, серверов и источников данных.
Видео со встречи - http://getdev.net/Event/roslyn
Roslyn Project - это компилятор, который предоставляет разработчику API для доступа к его внутренним данным. Теперь можно анализировать код, проводить его модификацию и создавать дополнительную функциональность для .NET-языков.
Windows 10 для пользователей и разработчиковGetDev.NET
Чего ждать от Windows 10, выходящей летом 2015 года? Рассказ про улучшения для разработчиков приложений для Магазина Windows и про исправления досадных недоразумений, к которым все давно привыкли.
Introduction HackDemocracy Meetup 5: Citizen Platforms for Political Accounta...hackdemocracy
HackDemocracy Brussels' 5th Meetup on Citizen Platforms for Political Accountability & the G1000 Citizens Summit. Presentations by Demoscha.Be and Memopol.
Wikileaks: secure dropbox or leaking dropbox?hackdemocracy
Jean-Jacques Quisquater is a professor of cryptography who discusses ways for organizations like Wikileaks to help leakers remain anonymous using technology. He explains how a perfect anonymous electronic dropbox could allow leakers to securely submit information without being identified. Quisquater then outlines various technologies like encryption, anonymity networks, and steganography that could help protect a leaker's privacy and anonymity.
HackDemocracy 4: Open Data in Belgium Introductionhackdemocracy
This document summarizes a meetup event hosted by HackDemocracy in Brussels, Belgium about open data. It includes thanks to BetaGroup Coworking for hosting the event. The agenda includes 3 presentations about local open data initiatives in Brussels and a federal open data initiative in Belgium. The goal of HackDemocracy is to bring hackers and public officials together to collaborate on innovations to strengthen democracy using open data.
The document discusses Fair Observer, an online media platform that aims to provide contextualized analysis of important global issues through contributions from experts around the world. It summarizes Fair Observer's value proposition as capturing diverse perspectives across disciplines and countries to analyze trends. The document also provides details on Fair Observer's founders, editorial team, contributor network, growth metrics, business model focusing on various revenue streams, and key differentiators compared to other media.
Pirate Party, Wikileaks & the Anonymoushackdemocracy
The document summarizes a meeting of the HackDemocracy group on December 16, 2010. It discusses the ideals of the Pirate Party, such as openness, transparency, and sharing information. It notes that the Pirate Party wants to reform copyright and patent systems and respect privacy rights. It provides a brief history of the Belgian Pirate Party, including its founding in 2006, reboot in 2009 after EU elections, and recent political actions and participation in 2010 federal elections.
HackDemocracy Brussels 3: Using technology to improve School Choice Procedureshackdemocracy
The document discusses school choice procedures. It first addresses why regulating school choice is important for equity and to account for social preferences over school composition. It then examines whether procedures should be top-down or bottom-up in taking parents' preferences into account. Three criteria for evaluating procedures are discussed: efficiency, no justified envy, and strategic simplicity. Several school choice mechanisms are outlined, including the student-proposing deferred acceptance algorithm. Preliminary evidence from Dutch-speaking preschools in Brussels is also presented.
Online and Offline Activism with the Indignados/Occupy movementhackdemocracy
This document announces a meeting of HackDemocracy Brussels to discuss online and offline activism with the Indignados movement. It provides contact information for HackDemocracy Brussels and thanks the speakers and host locations. The document indicates that today's speakers will discuss the Indignados movement's use of technology for global coordination, share perspectives on e-democracy, and provide insights into tensions between legitimacy and efficiency when online and offline activism converge.
Introduction to HackDemocracy Brussels Meetup 3hackdemocracy
1) This document summarizes a HackDemocracy meetup in Brussels on February 23, 2011. It includes the location, contact email, and Twitter handle for HackDemocracy.
2) The meetup featured 3 presentations: the first was on analyzing traffic to a Belgian political website, the second was on online voting and verifiable voting systems, and the third was on how technology can improve school enrollment policy.
3) The meetup was thanking various groups and individuals for their support, and was also encouraging others to get involved by speaking at future meetups or otherwise assisting the organization.
The document summarizes media freedom and internet usage in Central Asian countries. It discusses how countries like Kazakhstan, Kyrgyzstan, Tajikistan, Turkmenistan, and Uzbekistan rank poorly in press freedom indexes due to factors like state control of media and censorship. It also notes that internet penetration remains relatively low in the region, concentrated in urban areas, and subject to censorship and monitoring. The document is about an organization called neweurasia that aims to promote independent media and voices from Central Asia online through blogging and publishing.
Political Memory - Memopol Toolkit (HackDemocracy Meetup 5)hackdemocracy
Political Memory (Memopol) is a toolbox designed to help citizens reach members of European Parliament (MEPs), and track their voting records. Presented at HackDemocracy Brussels' 5th Meetup.
Видеозапись встречи:
http://getdev.net/Event/angularjs
Стремительно набирающий популярность фреймворк, облегчающий создание клиентских приложений. SPA, MVC, MVVM и множество других облегчающих разработку акронимов.
В докладе предполагается общий обзор, показывающий отдельные части, из которых состоит фреймворк, то, как они живут вместе друг с другом и существуют в окружающем мире страниц, серверов и источников данных.
Видео со встречи - http://getdev.net/Event/roslyn
Roslyn Project - это компилятор, который предоставляет разработчику API для доступа к его внутренним данным. Теперь можно анализировать код, проводить его модификацию и создавать дополнительную функциональность для .NET-языков.
Windows 10 для пользователей и разработчиковGetDev.NET
Чего ждать от Windows 10, выходящей летом 2015 года? Рассказ про улучшения для разработчиков приложений для Магазина Windows и про исправления досадных недоразумений, к которым все давно привыкли.
Секционный доклад
Экскурс в мир WEB разработки
Дмитрий Лаабе
Генеральный директор и основатель рекрутинговой компании IT-Доминанта
Технический директор и программист
портала Айти-Событие
Россия. Санкт-Петербург
http://it-sobytie.ru/events/3120
Denis Bosak (Magecom): Front-end in Magento, and more. Prospects, technologies, and tools.
Денис Босак (Magecom): Front-end в Magento и не только. Перспективы, технологии, инструменты.
SSL и сертификаты безопасности при работе с решениями Cisco Unified Communica...Cisco Russia
Презентация с вебинара, организованного в рамках сообщества Cisco Support Community.
Приглашаем Вас на другие мероприятия Cisco Support Community, а также к участию в жизни нашего сообщества технической поддержки Cisco:
http://cs.co/CSCRu
Как за $5 и несколько вечеров сделать интегрированную новостную платформуAndrew Gubskiy
В докладе рассказывается об опыте создания информационной платформы //devdigest. В частности, поднимаются такие вопросы:
– Где и как размещен сайт?
– Как реализована интеграция с Telegram и Facebook?
– Как происходит определение языка публикации?
Среди рассматриваемых сервисов и технологий будут: GitHub, Digital Ocean, Azure WebApp, LetsEncrypt, Continuous Delivery, Azure Cognitive Services, Telegram и Facebook.
Слайды доклада https://getdev.net/Event/go-language
Зачем придумали Go и что нам с этим делать
Доклад будет про историю возникновения, про основы синтаксиса, сферы применения и чуточку залезть под капот главной фишки языка - goroutines.
Leap Motion - игрушка с заделом на будущееGetDev.NET
Leap Motion - это контроллер ввода путем захвата движений с использованием одноименной технологии. На встрече мы рассмотрим аппаратную часть, готовые программные решения и некоторые смежные технологии.
Нескучная гирлянда на новогодние праздники и приятная подсветка в течение года. Программируем ардуино со смартфона по блютусу.
Материалы со встречи:
https://getdev.net/Event/arduino
Mind Mapping, или как заставить свой мозг работать лучшеGetDev.NET
Слайды со встречи https://getdev.net/Event/mind-mapping
На встрече пойдет речь о том, что же это за зверь такой - ментальная карта, почему эта техника визуализации так популярна, где и зачем ее использовать, и как с ее помощью познать Силу
По традиции приглашаем вас на встречу с кратким обзором новых функций обновленной версии среды разработки Visual Studio 2015. Мы также поговорим о кроссплатформенной разработке для мобильных платформ, изменениях в веб-стеке, новой версии языка C# и open source инициативах Microsoft
Материалы со встречи:
https://getdev.net/Event/docker
Docker: зачем нужен и почему выстрелил? Контейнеры против виртуальных машин - кто лучше? Docker на Windows: как и когда? А также демо: создание и deploy контейнера на ваших глазах
PhoneGap для мобильного разработчика - глубокое погружение без ОЗКGetDev.NET
Видео со встречи: http://getdev.net/Event/phonegap
Кратко поговорим о том как появился, как развивался, что внутри. Рассмотрим явные косяки и неприкрытые плюсы PhoneGap пути. Обратим внимание на скрытые проблемы, которые вы непременно найдёте при активной разработке. Рассмотрим позитивные моменты, которые никто не замечает, но они то есть. Потыкаем существующий инструментарий и варианты интеграции. И решим, где стоит применять PhoneGap и стоит ли вообще.
Слайды со встречи http://getdev.net/Event/webapi
Платформа ASP.NET Web API позволяет с легкостью создавать службы HTTP для широкого диапазона клиентов, включая браузеры и мобильные устройства. ASP.NET Web API идеально подходит для разработки приложений RESTful на платформе .NET Framework. Будут упомянуты понятия REST и отличие REST-пути от RPC (WCF)-пути, рассмотрен стандарт OData, сказаны слова OWIN и Katana
Видеозапись со встречи:
http://getdev.net/Event/vs2013
Всего год прошел с выпуска Visual Studio 2012, а разработчики уже могут пользоваться новой версией. Так ли много изменений? Зачем обновленная IDE спрашивает логин и пароль? Можно ли отлаживать свой код по дороге в офис прямо с планшета?
Видеозапись встречи:
http://getdev.net/Event/typescript
TypeScript - язык программирования от Microsoft, который является надмножеством JavaScript. Он поддерживает статическую типизацию, модули, определение классов и интерфейсов и транслируется в чистый JS. Спецификации языка открыты, а код компилятора распространяется под лицензией Apache.
Создание повторно используемых бизнес моделей с помощью технологии Domain Com...GetDev.NET
Материалы со встречи: http://getdev.net/Event/xaf-reuse
Задумывались ли вы когда-нибудь, что с переходом от SQL к DataSet, а затем и к ORM типа Entity Framework развитие технологий для доступа и управления данными приостановилось? Что еще нового можно придумать к уже привычному оперированию записями таблиц БД как объектами CRL и при этом поднять удобство разработчика на следующий уровень? На этот и другие вопросы попробует дать ответ доклад о технологии Domain Components (часть DevExpress eXpressApp Framework), которая облегчает создание повторно используемых бизнес моделей за счет легкого комбинирования путем использования интерфейсов вместо классов (это позволяет вам эмулировать "множественное наследование" в C# и VB.NET), а также свободы от особенностей конкретной ORM.
Видео со встречи:
http://getdev.net/Event/lego-mindstorms
Совместный доклад Сергея Шебанина и Дмитрия Филиппова. Конструктор для создания программируемого робота. Расширение возможностей программирования до физического контакта с предметами. Внутренности, комплектация, технические параметры сенсоров и приводов. Как программировать - графический вариант и обычный текстовый. Какие есть варианты креплений и подвижных соединений. Простейшие алгоритмы слежения за линией (с примером на NXC).
Особенности мобильной платформы Windows Phone 8GetDev.NET
Видеозапись и материалы доклада: http://getdev.net/Event/wp8
Можно ли писать приложения на C++? Правда ли, что у Windows 8 и Windows Phone 8 единое ядро? Будет ли аналог Siri в новых смартфонах? Вся правда о новой мобильной платформе от Microsoft только на GetDev.NET!
Материалы с доклада: http://getdev.net/Event/async-javascript
Рассказ о том, как работает асинхронность в JavaScript, кто стоит в очереди выполнения, почему в JavaScript никогда не будет процессорной гонки, как давать отсроченные обещания и что делать, если одна из ваших функций подхватила заразу асинхронности
Видео со встречи: http://getdev.net/Event/xaml
Доклад посвящен XAML — основанному на XML языку разметки для декларативного программирования приложений. Он является основой технологий WPF и Silverlight, a также используется в WinRT.
Видео и материалы со встречи:
http://getdev.net/Event/dynamic-language-runtime
В докладе рассмотрим скриптовые языки на платформе DLR, способы автоматизации рутинной работы с их помощью, а также интегрирование в конечное приложение.
Видео со встречи: http://getdev.net/Event/javascript-good-form
Рассказ о том, как в приличном обществе принято структурировать свой JavaScript, разбивать его на отдельные логические единицы, инкапсулировать его от внешней среды, подключать скрипты к своему веб-приложению, и организовывать процесс юнит-тестирования и как заменять им компилятор
Видеозапись доклада: http://getdev.net/Event/asp-net-mvc-4
Обзор возможностей новой версии платформы ASP.NET MVC 4. Web API, Bundling & Minification, разработка для мобильных устройств, Single-Page Web Applications, а также другие, не столь крупные, нововведения.
Видео с доклада: http://getdev.net/Event/asp-net-mvc-4
Доклад об ASP.NET MVC, откуда и зачем он появился, какие задачи решает, какой подход к разработке исповедует. Этот доклад больше пригодится тем, кто хочет углубить и структурировать свои знания об ASP.NET MVC
4. Семантическая разметка Было Стало 19.02.2011 Ingate Development / TulaDev.NET 4 Страница свёрстана с использованием элементов div и присвоенных каждому из них классов CSS. Исходный код не отражает идеи дизайнера, он сложен для восприятия. Страница свёрстана с использованием новых семантических элементов HTML5. Название каждого блока соответствует его цели на странице. Исходный код лёгок для восприятия.
5. Семантическая разметка Теги не должны определять отображение Главная цель тегов – смысловая нагрузка Разрешены перекрывающиеся теги Бинарные атрибуты не имеют значений 19.02.2011 Ingate Development / TulaDev.NET 5
6. Семантическая разметка Новые семантические теги: <header> <footer> <article> <section> <nav> <aside> <figure> <figcaption> <progress> и другие 19.02.2011 Ingate Development / TulaDev.NET 6
7. Семантическая разметка Уже существующие теги получили семантический оттенок Например: <i> - интонация <strong> - важность <b> - выделение без указания важности 19.02.2011 Ingate Development / TulaDev.NET 7
8. Web forms 2.o Новые типы полей ввода: range search color email url date time telи другие Спецификация НЕ описывает как они должны отображаться 19.02.2011 Ingate Development / TulaDev.NET 8
9. Microdata расширение текущего механизма микроформатов набор пар ключ-значение, добавленных в документ параллельно основному контенту нацелено на автоматизированные парсеры (напр., поисковые роботы) 19.02.2011 Ingate Development / TulaDev.NET 9
10. Microdata Пример: <section itemscopeitemtype="http://example.org/animals#cat"> <h1 itemprop="name http://example.com/fn">Hedral</h1> <p itemprop="desc"> Hedral is a male american domesticshorthair, with a fluffy <spanitemprop="http://example.com/color">black</span> fur with <spanitemprop="http://example.com/color">white</span> paws and belly. </p> <imgitemprop="img"src="hedral.jpeg" alt="" title="Hedral, age 18 months"/> </section> 19.02.2011 Ingate Development / TulaDev.NET 10
12. CSS3: Прозрачность Было Стало background-color: rgb(0,0,255); opacity: 0.5; Все потомки элемента наследуют свойство opacity background-color: rgba(0,0,255,0.5); Прозрачность получит только фон конкретного элемента 19.02.2011 Ingate Development / TulaDev.NET 12
13. CSS3: фоновые изображения 19.02.2011 Ingate Development / TulaDev.NET 13 Указание размера фоновой картинки .backgroundsize { background: url(logo.gif); background-size: 203px 45px; } Использование нескольких фоновых картинок .multiplebackgrounds { background: url(top.gif) top left no-repeat, url(bottom.gif) bottom left no-repeat, url(middle.gif) left repeat-y; }
14. CSS3: Границы и тени 19.02.2011 Ingate Development / TulaDev.NET 14 Закругленные углы .border_rounded { border: 2px solid #897048; border-radius: 5px; } Тени .border_shadow { box-shadow: 10px 10px 5px #888; } .text_shadow { text-shadow: 2px 2px2px #ddccb5; }
16. Web Open Font Format 19.02.2011 Ingate Development / TulaDev.NET 16 Сжатый OpenTypeили TrueType шрифт Нет возможности шифрования Пример: @font-face { font-family: 'MyFontFamily'; src: url('myfont-webfont.eot?') format('eot'), url('myfont-webfont.woff') format('woff'), url('myfont-webfont.ttf') format('truetype'), url('myfont-webfont.svg#name')format('svg'); }
17. 3D, графика и эффекты 19.02.2011 Ingate Development / TulaDev.NET 17
18. SVG 19.02.2011 Ingate Development / TulaDev.NET 18 Xml-подобный язык для визуального описания векторной графики Первый черновик спецификации создан аж в 1998 году Индексируется поисковыми машинами 2 варианта анимации: SMIL или CSSTransform
20. SVG 19.02.2011 Ingate Development / TulaDev.NET 20 DOM модель у SVG и HTML одинаковая Следовательно можно изменять отдельные блоки посредством JavaScript Медиа-выражения позволяют добавлять условные блоки
21. Canvas 19.02.2011 Ingate Development / TulaDev.NET 21 Набор API для создания и управления растровой графикой при помощи JavaScript HTML: <canvas id="canvas"> width="600" height="600"></canvas> JavaScript: varcanvas = document.getElementyId('canvas').getContext('2d'); canvas.rect( 25, 25, 550, 550 ); canvas.fillStyle= '#FAFAA2'; canvas.strokeStyle= '#000'; canvas.lineWidth= 50;
22. WebGL 19.02.2011 Ingate Development / TulaDev.NET 22 Развитие эксперимента Canvas 3D Графика аппаратно ускорена Первая черновая спецификация стандарта опубликована 10 декабря 2009 года
24. Audio и Video 19.02.2011 Ingate Development / TulaDev.NET 24 Не нужно никаких дополнительных кодеков, установленных программ или кода Набор воспроизводимых форматов ограничен Спецификация не предоставляет описания, как должны выглядеть элементы управления
25. Audio и Video 19.02.2011 Ingate Development / TulaDev.NET 25 Поддержка разных форматов аудио различными браузерами: * Информация приведена для браузеров Opera 11, Firefox 4 beta, IE9 beta, Chrome 9, Safari 5
26. Audio и Video 19.02.2011 Ingate Development / TulaDev.NET 26 Поддержка разных форматов видео различными браузерами: * Информация приведена для браузеров Opera 11, Firefox 4 beta, IE9 beta, Chrome 9, Safari 5
27. Автономная работа и локальные хранилища 19.02.2011 Ingate Development / TulaDev.NET 27
28. Offline & sTORAGE 19.02.2011 Ingate Development / TulaDev.NET 28 Offline Application Caching API Web Storage Indexed Database API File API Web SQL Database
30. Web Storage 19.02.2011 Ingate Development / TulaDev.NET 30 Можно хранить состояние для сайта в течение короткого или длительного промежутка времени Используются объекты sessionStorageи localStorage Предполагается использовать как замену Cookies
31. Indexed DB 19.02.2011 Ingate Development / TulaDev.NET 31 Возможность хранения пар ключ-значение Индексы, курсоры, транзакции… 2 API для работы с базой: синхронный и асинхронный
32. Indexed DB 19.02.2011 Ingate Development / TulaDev.NET 32 Пример: vardb = indexedDB.open('books', 'Book store', false); if (db.version !== '1.0') { varolddb = indexedDB.open('books', 'Book store'); olddb.createObjectStore('books', 'isbn'); olddb.createIndex('BookAuthor', 'books', 'author', false); olddb.setVersion("1.0"); } varindex = db.openIndex('BookAuthor'); var matching = index.get('fred'); if (matching) report(matching.isbn, matching.name, matching.author); else report(null);
33. File API 19.02.2011 Ingate Development / TulaDev.NET 33 Контроль процесса загрузки файла на сервер Можно работать с содержимым файла до отправки на сервер (объект FileReader) Возможность выбирать сразу несколько файлов
35. Web sockets 19.02.2011 Ingate Development / TulaDev.NET 35 протокол полнодуплексной двунаправленной связи поверх TCP соединения, предназначенный для обмена сообщениями между браузером и веб-сервером в режиме реального времени W3C занимается стандартизацией API Web Sockets, а IETF занимается утверждением протокола Web Socket
36. Web sockets 19.02.2011 Ingate Development / TulaDev.NET 36 Пример: <script> varwebSocket = new WebSocket('ws://localhost/echo'); webSocket.onopen= function(event) { alert('onopen'); webSocket.send("Hello Web Socket!"); }; webSocket.onmessage= function(event) { alert('onmessage, ' + event.data); webSocket.close(); }; webSocket.onclose= function(event) { alert('onclose'); }; </script>
37. Server-Sent Events 19.02.2011 Ingate Development / TulaDev.NET 37 Способ получения данных от сервера Нет никакой обработки ошибок Пример: <event-source src="http://example.com/ticker.php" id="stock"> <script type="text/javascript"> document.getElementById('stock') .addEventListener('stock change', function () { var data = event.data.split(''); updateStocks(data[0], data[1], data[2]); }, false); </script>
39. Geolocation API 19.02.2011 Ingate Development / TulaDev.NET 39 Позволяет определить местоположение пользователя Используется только с согласия пользователя Предоставляет 2 метода: можно узнать местоположение разово или подписаться на изменение местоположения
40. <device> 19.02.2011 Ingate Development / TulaDev.NET 40 Доступ к веб-камере, микрофону, плееру, сканеру… Есть возможность захвата данных (объект StreamRecorder) и последующей работы с ними (например отправки на сервер посредством File API) На данный момент ни одна стабильная версия браузеров не поддерживает работу с тегом <device>
42. Web Workers 19.02.2011 Ingate Development / TulaDev.NET 42 Перенос части клиентского кода в отдельный поток При создании объекта Worker указывается путь к исполняемому скрипту Исполняемый скрипт вызывает метод postMessage В этот момент у объекта Worker возникает событие onmessage Удобно использовать в сочетании с другими рассмотренными ранее API: IndexedDB, WebSockets…
43. XHR level 2 19.02.2011 Ingate Development / TulaDev.NET 43 Добавлено событие изменения прогресса Поддерживается работа с бинарными данными Появилась поддержка кросс-доменных запросов
44. Navigation Timing 19.02.2011 Ingate Development / TulaDev.NET 44 На данный момент довольно сложно определить, почему страница загружается в браузере долго Профайлеры помогают не всегда Navigation Timing – решение для измерения скорости загрузки страницы API предоставляет 2 объекта performance.timing и performance.navigation