|
Какой рейтинг вас больше интересует?
|
Главная /
Каталог блоговCтраница блогера Хабрахабр: Web-разработка / Блог / Захабренные/Записи в блоге |
|
Хабрахабр: Web-разработка / Блог / Захабренные
Голосов: 1 Адрес блога: http://habrahabr.ru/blog/webdev/ Добавлен: 2008-06-12 19:52:21 блограйдером ZaiSL |
|
Дайджест интересных новостей и материалов из мира айти за последнюю неделю №8 (26 мая — 1 июня 2012)
2012-06-01 21:08:08 (читать в оригинале)Предлагаем вашему вниманию очередную подборку с ссылками на новости, интересные материалы и полезные ресурсы.

Читать дальше →
Тэги: group, zfort, блог, веб-дизайн, веб-разработка, информация, компания, новость, подборка, полезный, ресурс, скрипт, сми, ссылка
Постоянная ссылка
[Перевод] WebGl-2d.js: Реализация Canvas 2D API на WebGL
2012-06-01 14:46:06 (читать в оригинале)WebGL-2d — весьма интересная javascript библиотека, реализующая стандартные методы для работы с 2d контекстом Canvas на WebGL контексте.
Ни для кого не секрет, что сегодня Canvas не может похвастаться хорошей производительностью и отрисовка сложных сцен в реальном времени может стать проблемой. С WebGL ситуация с производительностью существенно лучше, но этот стандарт поддерживают не все популярные браузеры, в частности Microsoft даже не планирует внедрять его поддержку в IE (сторонние разработчики по этой причине уже начали делать плагин).
Подключив WebGL-2d и добавив всего пару строчек, мы можем существенно ускорить отрисовку графики, реализованную с средствами Canvas 2d API в браузерах, поддерживающих WebGL и обеспечить fallback к обычному 2d контексту.
Читать дальше →
Работа с локальным хранилищем, как с объектом — Продолжение
2012-05-31 22:36:08 (читать в оригинале)Этим постом я бы хотел исправиться и предложить адекватный способ работы с хранилищем, как с объектом. Код из поста «Работа с локальным хранилищем, как с объектом? Легко!» использовать крайне не рекомендую, там всё плохо (минусы изложены внизу). Цель данного — объяснить всем тем, кто добавил статью по ссылке в избранное или поставил плюсик, никогда не использовать этот код.
Сейчас же я хочу продемонстрировать простейшую идею, предложенную Scalar в комментарии.
При загрузке страницы (даже до события готовности DOM дерева) обращаемся к хранилищу (в данном случае, это localStorage и sessionStorage), получить JSON, десериализовать его и положить в какую-нибудь переменную.
localObject = JSON.parse( localStorage.getItem( '_myStorage' ) ); // "{'a':1, 'b':2}" → {a:1, b:2}
Затем, каждые N миллисекунд производить обратный процесс:
localStorage.setItem( '_myStorage', JSON.stringify( localObject ) );
При событии onbeforeunload делать то же самое.
Реализация идеи проста (уровень сложности задачи низок и доступен даже новичку). Но, не все (и я в том числе) до этого додумались.
Код конструктора ObjectStorage
var ObjectStorage = function ObjectStorage( name, duration ) {
var self,
name = name || '_objectStorage',
defaultDuration = 5000;
// дабы не плодить кучу экземпляров, использующих один и тот же ключ хранилища,
// просто возвращаем единственный с заданным именем,
// меняя только duration (если имеется)
if ( ObjectStorage.instances[ name ] ) {
self = ObjectStorage.instances[ name ];
self.duration = duration || self.duration;
} else {
self = this;
self._name = name;
self.duration = duration || defaultDuration;
self._init();
ObjectStorage.instances[ name ] = self;
}
return self;
};
ObjectStorage.instances = {};
ObjectStorage.prototype = {
// type == local || session
_save: function ( type ) {
var stringified = JSON.stringify( this[ type ] ),
storage = window[ type + 'Storage' ];
if ( storage.getItem( this._name ) !== stringified ) {
storage.setItem( this._name, stringified );
}
},
_get: function ( type ) {
this[ type ] = JSON.parse( window[ type + 'Storage' ].getItem( this._name ) ) || {};
},
_init: function () {
var self = this;
self._get( 'local' );
self._get( 'session' );
( function callee() {
self.timeoutId = setTimeout( function () {
self._save( 'local' );
callee();
}, self._duration );
})();
window.addEventListener( 'beforeunload', function () {
self._save( 'local' );
self._save( 'session' );
});
},
// на случай, если нужно удалить таймаут (clearTimeout( storage.timeoutId ))
timeoutId: null,
local: {},
session: {}
};
Использование:
var storage = new ObjectStorage;
storage.local = {a:4, b: {c:5}};
storage.session = {a:7, b: {c:8}};
b = storage.local.b;
b.c = {d:6};
Читать дальше →
Тэги: javascript, localstorage, objectstorage, sessionstorage, storage, веб-разработка, локальный, хранилище
Постоянная ссылка
Twitter возвращается к рендерингу страниц на сервере
2012-05-31 15:20:53 (читать в оригинале)Twitter объявил об очередной смене архитектуры: рендеринг страниц теперь будет осуществляться на стороне сервера, а не на стороне клиента.
После прошлой модернизации в сентябре 2010 года весь рендеринг UI и логику переложили на JavaScript на клиентской стороне. Браузеры напрямую обращались к Twitter REST API, как и мобильные клиенты. Хотя такой подход помог реализовать ряд преимуществ, но разработчики потеряли возможности оптимизации, которые доступны при серверно-ориентированном подходе. В результате, пользователи начали жаловаться на субъективное «подтормаживание» страниц twitter.com.
На этой неделе новую архитектуру выкатили для статичных ссылок (пермалинков). Как показали тесты, скорость загрузки страницы в браузер пользователя выросла в среднем в пять раз, а также значительно сократился разрыв между различными браузерами, которые по-разному справляются с JavaScript.
Читать дальше →
Тэги: commonjs, javascript, twitter, веб-разработка, клиентский, оптимизация, рендеринг, страница
Постоянная ссылка
HTML5-карты для мобильных платформ
2012-05-31 14:31:24 (читать в оригинале)На днях команда HTML5-карт Nokia предоставила API карт под смартфоны и планшетники.
С места — в карьер!
Попробовать можно по ссылке: bit.ly/html5mapНа данный момент поддерживаются Webkit-браузеры.
Достоинства и возможности
- Компоненты
Карты, пробки, поиск, геолокация, информация об интересных местах, навигация, пешеходные маршруты, избранное. - Вес
80 KB Javascript + 10 KB CSS - Производительность
Быстрая загрузка и плавные эффекты. - Готовность
Можно легко поменять цвета, обернуть в PhoneGap или QtWebkit и получить готовое приложение. - WYSIWYG-помощник
Помогает настроить конфигурацию под себя.
Подробнее обо всех возможностях
Тэги: html5, javascript, nokia, веб, веб-разработка, карта, мобильный, приложение, устройство
Постоянная ссылка
Категория «Предметы»
Взлеты Топ 5
|
| ||
|
+211 |
226 |
antonesku |
|
+191 |
281 |
Zoxx.ru - Блог Металлиста |
|
+187 |
200 |
Follow_through |
|
+172 |
216 |
Тихо дышит катЁнка... |
|
+170 |
192 |
Wisemen |
Падения Топ 5
|
| ||
|
-1 |
3 |
CAPTAIN |
|
-5 |
5 |
navesele |
|
-19 |
4 |
Painter-boy |
|
-24 |
44 |
Science Of Drink |
|
-25 |
11 |
Karina_Barbie |
Популярные за сутки
Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.
взяты из открытых общедоступных источников и являются собственностью их авторов.
