Category Archives: Programming
Маршрутизация в AngularJS 1.4
Сделали бэк-порт из второй версии: http://blog.thoughtram.io/angularjs/2015/02/19/futuristic-routing-in-angular.html. Интересно, надо будет попробовать.
AngularJS Styleguide
Тонна полезностей (best practices) по архитектуре AngularJS-приложения: https://github.com/johnpapa/angularjs-styleguide
Здесь можно следить за новыми технологиями
http://www.thoughtworks.com/radar/languages-and-frameworks
Как решать проблемы с e2e-тестами Protractor под PhantomJS
Возникла проблема. Раньше e2e-тесты нормально отрабатывали в PhantomJS. И в какой-то момент один из тестов перестал проходить в PhantomJS в 100% случаев. При этом при запуске на той же машине, к примеру, в Chrome, отрабатывают корректно. Даже если давать фантому ссылку на уже работающий сервер, который работает без ошибок, то один тест валится — и …
Кастомизация скролла — мегаплагин
Скинули ссылку на доклад о плагине для эмуляции скролла. Обещают не хуже нативного. http://techno.2gis.ru/lectures/5
Мониторинг загрузки страницы с Navigation Timing API
Содержит следующие события: navigationStart unloadEventStart unloadEventEnd redirectStart redirectEnd fetchStart domainLookupStart domainLookupEnd connectStart connectEnd secureConnectionStart requestStart responseStart responseEnd domLoading domInteractive domContentLoadedEventStart domContentLoadedEventEnd domComplete loadEventStart loadEventEnd Поддерживается ie9+ и нормальными браузерами. Подробнее — https://developer.mozilla.org/en-US/docs/Web/API/PerformanceTiming и https://developer.mozilla.org/en-US/docs/Navigation_timing. Пример использования от Яндекса — Как мы измеряем скорость загрузки Яндекс.Почты
Моя версия Quadtree на javascript
Мне нужно было загружать кучу точек на плоскость и потом быстро узнавать, на какой из этих точек кликнули мышкой. Точек может быть действительно много — до десяти тысяч — поэтому делать для каждой точки свой DOM-элемент слишком накладно. Поэтому нужно было эффективно отслеживать клики мышкой на плоскости и вычислять на лету подходящую точку. Долго возился …
Внедрение e2e- и unit-тестов в сборку AngularJS-приложения: Protractor, Karma и gulp
Допустим, у нас уже есть сборка проекта на gulp. И нужно добавить в процедуру сборки релиза e2e-тесты на protractor.
Поиск утечек памяти через Google Chrome
На примере Яндекс-почты: http://habrahabr.ru/company/yandex/blog/195198/ Самое интересное:
Voronoi algorithm
Использование алгоритма Вороного в javascript. Смотреть с 10 минут. http://youtu.be/90NsjKvz9Ns?t=10m15s Ссылки: http://cgm.cs.mcgill.ca/~mcleish/644/Projects/DerekJohns/Sweep.htm http://philogb.github.io/blog/assets/voronoijs/voronoi.html (http://philogb.github.io/blog/2010/02/12/voronoi-tessellation/) https://code.google.com/p/javascript-voronoi/ https://github.com/mikolalysenko/voronoi-diagram https://ru.wikipedia.org/wiki/%D0%9F%D0%B0%D1%80%D0%B0%D0%B1%D0%BE%D0%BB%D0%B0 (ликбез по параболе) http://habrahabr.ru/post/110790/ http://www.cs.princeton.edu/~edwardz/voronoi/voronoi.html http://www.devforrest.com/examples/voronoi/ http://www.ams.org/samplings/feature-column/fcarc-voronoi https://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%B4%D0%B0%D1%87%D0%B0_%D0%BF%D0%BE%D0%B8%D1%81%D0%BA%D0%B0_%D0%B1%D0%BB%D0%B8%D0%B6%D0%B0%D0%B9%D1%88%D0%B5%D0%B3%D0%BE_%D1%81%D0%BE%D1%81%D0%B5%D0%B4%D0%B0 http://strongriley.github.io/d3/ex/voronoi.html http://www.raymondhill.net/voronoi/rhill-voronoi-demo3.php