В этой статье мы подробно разберем процесс сборки фронтенд проекта, который прижился в моей повседневной работе и очень облегчил рутину.
Статья не претендует на истину в последней инстанции, так как сегодня существует большое количество различных сборщиков и подходов к сборке, и каждый выбирает по вкусу. Я лишь поделюсь своими мыслями по этой теме и покажу свой workflow.
Рубрика «javascript» - 373
Приятная сборка frontend проекта
2015-02-14 в 19:23, admin, рубрики: css, gulp, html, javascript, JS, node.js, sass, Веб-разработка, оптимизация трудозатрат, метки: frontendBreeze Server — разграничиваем доступ к объектам при помощи атрибутов
2015-02-14 в 19:03, admin, рубрики: .net, ASP, ASP.NET, asp.net webapi, breeze server, breezejs, C#, entity framework, javascript, tutorial, безопасность веб-приложений, Веб-разработка, метки: asp.net
В прошлой статье Breeze.js + Entity Framework + Angular.js = удобная работа с сущностями базы данных прямо из браузера мы рассмотрели создание простейшего приложения, где делали выборки и сохраняли данные в базе прямо из javascript в браузере. Конечно же первыми у читателей возникли вопросы о безопасности. Поэтому сегодня мы рассмотрим, как можно организовать разграничение доступа. Для этого мы немного доработаем наше приложение из прошлой статьи так, чтобы можно было при помощи атрибутов раздать определённые права доступа на добавление, удаление, изменение и просмотр данных определённым пользователям или ролям.
Читать полностью »
6 февраля вышла новая мажорная версия Node.js v0.12. Это был длительный и трудный процесс, не без потерь для NodeJS, в результате которого от основной ветки отделился io.js, но, тем не менее, список нововведений довольно внушительный. Давайте поглядим.
Streams 3
Как обещают разработчики, реализация потоков теперь работает так, как это и ожидается. Причем самое главное, что старые API, введенные в v0.10, не поменялись.
Добавлен механизм cork/uncork для приложений, которые несколько раз синхронно пишут в поток. .cork() включает буферизацию для всех записей в поток, .uncork() же сбрасывает весь буфер.
Читать полностью »
Сад JavaScript: Объекты
2015-02-12 в 20:04, admin, рубрики: garden, javascript, объекты, ПрограммированиеВведение
Сад JavaScript – коллекция документации по самым странным особенностям языка JavaScript. Тут собраны советы по тому, как избежать распространённых ошибок и малозаметных багов, а также проблем с быстродействием и неправильного стиля программирования.
Это не учебник по языку. Предполагается, что вы уже предварительно знаете язык. Для обучения языку рекомендую воспользоваться этим великолепным переводом чудесной книги "Выразительный JavaScript".
Читать полностью »
SummaryJS: самое интересное из мира JavaScript за последнюю неделю
2015-02-12 в 11:36, admin, рубрики: ecmascript 2015, iojs, javascript, node.js, react.js, ReactJS, summaryjs, Веб-разработка, разработкаДве недели назад я начал вести свой подкаст на тему JavaScript. И каждую неделю у меня накапливается большой список интересных статей, видео и новостей, которыми интересно было бы поделиться с сообществом. В связи с этим я решил попробовать выложить вот такой набор интересных материалов.
На Хабре есть как минимум 2 еженедельных обзора мира фронтенда. Они классные, но пишут про весь фронтенд. А я пытаюсь больше уделять внимание JavaScript.
Если понравится — пишите, буду продолжать. Если нет — тоже пишите.
Читать полностью »
Vibration API: кому и зачем это нужно?
2015-02-11 в 21:17, admin, рубрики: api, html, IT-стандарты, javascript, Vibration API, w3c, Веб-разработка, вибрация, спецификации, метки: Vibration API10 февраля Консорциум Всемирной паутины объявил о том, что стандарт, описывающий API для управления вибрацией, получил статус рекомендованного. Сама по себе возможность заставить браузер повибрировать устройством была доступна уже некоторое время, но только сейчас она была наконец-то оформлена рекомендованной спецификацией, так что пришла пора подумать, как и где это можно использовать на повседневной основе. Впрочем, уже в самом начале авторы стандарта предупреждают, что API разработан специально для тех случаев, когда требуется простая тактильная обратная связь, и он не предназначен для использования в качестве общего механизма уведомления пользователя. Для уведомлений рекомендуется использовать Notifications API.
Желающие приобщиться к официальной спецификации со всеми её нюансами могут это сделать на сайте W3C, а здесь мы лишь бегло посмотрим на то, как всё это можно использовать, а также осветим некоторые моменты, не раскрытые в документации.
Читать полностью »
Дайджест хороших образовательных программ для IT-специалистов и сочувствующих: в Москве и онлайне
2015-02-11 в 12:32, admin, рубрики: #tceh_edu, android, bash, c++, data science, java, javascript, moscow coding school, python, ruby, Блог компании #tceh, образование в ит, образование онлайн, Программирование, Разработка под android, самообразование, технопарк mail.ru, ШАД
Позавчера мы ради интереса прошлись по компаниям, сидящим по-соседству — даже в самых стабильных задумываются о сокращении штатных расписаний и урезают бюджеты на обучение сотрудников.
Так что прокачивание своих навыков, будь ты уже знаком с кодом или только думаешь об этом, — теперь, похоже, личное дело каждого. Чтобы было проще сориентироваться, мы собрали курсы и полезные события для начинающих и продолжающих IT-специалистов и их окружения. Дневные и вечерние, оффлайновые и онлайновые.
Не забывай — количество мест на самых привлекательных курсах обычно ограничено и заканчивается стремительно! А некоторые так и просто стартуют совсем скоро — запрыгивай в уходящий поезд!
Читать полностью »
Очень быстрые классы на JavaScript с красивым синтаксисом
2015-02-11 в 9:33, admin, рубрики: class, class system, define, extend, implement, inheritance, javascript, Веб-разработка, классыПри написании серьезных проектов перед JavaScript программистами встает выбор: пожертвовать качеством кода и писать классы руками, или же пожертвовать скоростью и использовать систему классов. А если использовать систему, то какую выбрать?
В статье рассмотрена система автора, которая не уступает по скорости классам, написанным «от руки» (другими словами — одна из самых быстрых в мире). Но при этом классы имеют приятную структуру в стиле Си.
Системы классов
Есть шутка, что каждый программист должен написать свою систему классов. Кто не знаком с проблемой — смотрите этот комментарий, там их собрано минимум 50 штук.
Каждый из этих велосипедов отличается своим набором возможностей, своим стилем программирования и своим падением скорости. Так, например, создание класса MooTools примерно в 90 раз медленнее, чем создание класса, написанного от руки. Зачем тогда нужны все эти системы?
Читать полностью »
Еще один способ сжатия CSS файлов
2015-02-10 в 11:56, admin, рубрики: css, javascript, Клиентская оптимизация, оптимизация
На изображении выше многие увидят известную картину. Так выглядит большинство CSS файлов на продакшене. Мы все стараемся, чтобы наши веб-страницы загружались быстро; для достижения этой цели используем различные инструменты и техники оптимизации загрузки и рендеринга страниц. Об одном, но редко используемом методе, я бы хотел поговорить и рассказать, как мне удалось сократить размер CSS файла почты mail.ru на 180Кб.
Читать полностью »
От React до Riot 2.0
2015-02-10 в 9:26, admin, рубрики: javascript, ReactJS, RiotJS, фреймворки, метки: ReactJS, RiotJS
Эта популярная запись в блоге была отправной точкой в наших исследованиях минимализма. Мы начали с того, что Muut не должен использовать популярные фреймворки: Backbone, Angular или Ember.
Наша мотивация:
1) малый размер клиентского приложения. Неприемлемо, когда фреймворк гораздо больше самого приложения;
2) небольшой фреймворк, работа которого полностью понятна и прозрачна. Все популярные фреймворки поставляются со очень большим количеством методов API, свойств и других плюшек. Полное понимание было особенно важно, так как у нас было встраиваемое на сторонние сайты приложение.
Мы задались вопросом, а нужен ли фреймворк вообще? Пока API отделен от UI, проблем нет никаких. С помощью системы событий можно построить автономные компоненты, а «нативный» pushState позволяет подружить приложение с кнопкой «Back» браузера.
С этимы мыслями мы начали работу над Riot 1.0.
Читать полностью »