Как я завел дружбу с асинхронностью в JavaScript

Автор: admin от 21-10-2014, 22:14, посмотрело: 567

Как я завел дружбу с асинхронностью в JavaScriptjavascript встречает разработчиков асинхронностью можно сказать чуть ли не с порога. Начинается все с DOM-событий, ajax, таймерами и библиотечными методами, связанными с анимацией (например jQuery-методы fadeIn/fadeOut, slideUp/slideDown). В целом, это все не очень сложно и разобраться с асинхронностью на этом этапе не представляет проблем. Однако, как только мы переходим к написанию более или менее сложных приложений, в которых комбинируется все вышеуказанное, асинхронный поток может сильно затруднить понимание происходящего в коде. Цепочки асинхронных действий, например, анимация > ajax-запрос > инициализация -> анимация, создают достаточно сложную архитектуру, которая не подчиняется строгому направлению «снизу верх». В этой статье я намерен рассказать про свой опыт преодоления трудностей связанных с асинхронным JS.

Категория: Программирование

 

Выразительный JavaScript: Функции высшего порядка

Автор: admin от 21-10-2014, 21:22, посмотрело: 465

Содержание



  • Введение

  • Величины, типы и операторы

  • Структура программ

  • Функции

  • Структуры данных: объекты и массивы

  • Функции высшего порядка

  • Тайная жизнь объектов

  • Проект: электронная жизнь

  • Обработка ошибок

  • Регулярные выражения

  • Модули

  • Проект: язык программирования

  • javascript и браузер

  • Document Object Model

  • Обработка событий

  • Проект: игра-платформер

  • Рисуем на Canvas

  • HTTP

  • Формы и поля ввода

  • Проект: Paint

  • Node.js

  • Проект: веб-сайт по обмену умениями

  • Песочница для кода



Цу-ли и Цу-су похвалялись размерами своих новых программ. «Двести тысяч строк»,- сказал Цу-ли,- «не считая комментариев!» Цу-су ответил: «Пф-ф, моя – почти миллион строк». Мастер Юнь-Ма сказал: «Моя лучшая программа занимает пятьсот строк». Услышав это, Цу-ли и Цу-су испытали просветление.

Мастер Юнь-Ма, Книга программирования

Есть два способа построения программ: сделать их настолько простыми, что там очевидно не будет ошибок, или же настолько сложными, что там не будет очевидных ошибок.

Энтони Хоар, 1980 лекция на вручении премии Тьюринга


Большая программа – затратная программа, и не только из-за времени её написания. Большой размер обычно означает сложность, а сложность сбивает с толку программистов. Сбитые с толку программисты делают ошибки в программах. Большая программа означает, что багам есть где спрятаться и их получается труднее отыскать.

Категория: Программирование

 

Рушим капчу SilkRoad

Автор: admin от 21-10-2014, 21:00, посмотрело: 730

Рушим капчу SilkRoad

Silk Road, знаменитый черный рынок, был закрыт около года назад. До недавнего времени я думал, что он мертв. Это бы облегчило написание статьи, но не все так хорошо. Я только что прочитал о его возвращении в сеть.

Сейчас я хочу углубиться в код, который был написан мною несколько лет назад, чтобы разобрать механизм чтения капчи «старой» версии сайта.

Категория: Информационная безопасность

 

I/O Schedule 2014: плохой пример для обучения

Автор: admin от 21-10-2014, 20:54, посмотрело: 349

Мы уже привыкли, что приложение для Google I/O дефакто стандарт архитектуры приложения, написания кода и дизайна.

Вот и в этот раз, я решил посмотреть, что же нового появилось в приложении. С дизайном все понятно, точнее понятно, что людям нужно снова учится делать его «правильно». Но меня больше интересовал код — что же нового там есть?

Но ничего нового я не увидел, но осознал, что приложение абсолютно не годится как наглядное пособие для обучения начинающих разработчиков.

После быстрого осмотра кода получился вот такой список замечаний.

Категория: Веб-разработка / Game Development / Google / Android

 

Портал для поиска единомышленников при создании проектов

Автор: admin от 21-10-2014, 20:32, посмотрело: 482

Некоторое время назад мы заметили, что пока еще нет ни одной базы студенческих проектов и студентов, желающих поучаствовать в таких проектах.

Тогда мы её сделали. Называется talentkit.net. Зарегистрироваться можно тут.

Портал для поиска единомышленников при создании проектов

Что в ней будет* можно?

Если есть желание в чем-нибудь поучаствовать и развить навыки – можно найти хороший проект. Проект может быть любым — технологический стартап, музыкальная группа, спортивная команда, странные люди снимающие фильм в темноте и т.п.

Если есть идея проекта – можно, соответственно, найти единомышленников, специалистов в нужных областях, людей с опытом и без, и прочих друзей по интересам.

Если вы ВУЗ – узнать, чем на самом занимаются студенты и помочь/не мешать.

Категория: Программирование / Сделай Сам

 

SPB Frontend: Октябрьская встреча

Автор: admin от 21-10-2014, 20:00, посмотрело: 471

Уже в этот четверг, 23 октября, сообщество SPB Frontend совместно с «Зоной действия» проведут очередную встречу.

SPB Frontend: Октябрьская встреча

Ожидается доклад + QA-сессия от разработчиков из питерского Google и аж два доклада про dependency injection в современных фреймворках и вне их.

Как попасть?

Категория: Компании / Google

 

Как Энакин Скайоуокер стал Дартом Вейдером. Вирус для Android в картинке .PNG

Автор: admin от 21-10-2014, 18:45, посмотрело: 472

Новая техника позволяет злоумышленникам скрывать вредоносные программы в приложениях для Android, пряча их в безобидных с виду изображениях, которые делают вредоносное ПО невидимым для антивирусных продуктов и интегрированного в Google Play сканера вирусов.

Как Энакин Скайоуокер стал Дартом Вейдером. Вирус для Android в картинке .PNG

Об этом на конференции по компьютерной безопасности Black Hat Europe, которая проходит в Амстердаме, сообщили специалисты Fortinet Аксель Апвриль и Энджи Альбертини.

Категория: Информационная безопасность / Android

 

Создание расширения для Chrome за пару часов

Автор: admin от 21-10-2014, 18:27, посмотрело: 842

В последнее время разработка расширений для Хрома так упростилась, что я решился наконец поставить галочку против одной из самых долгоживущих в моем ежедневнике задач: доставать из картинок на страницах GEO-таги, прицеплять картинкам title с местом, где фотография была сделана, и давать возможность в один клик глянуть на карту. Кроме того, на страницах с большим количеством фотографий имеет смысл показывать карту со всеми маркерами и предоставлять возможность перейти непосредственно к фотографии по клику на маркер.

Вот как это выглядит на моем сайте, куда я складываю кратенькие фотоотчеты о поездках (для друзей и родственников):

Создание расширения для Chrome за пару часов

В современном мире на создание такого расширения у меня ушло около трех часов. Расширение доступно в Webstore, исходники традиционно лежат на гитхабе…

Категория: Компании / Google

 

Как создать интересный игровой сеттинг? Уровень четвертый: звукошумовые эффекты

Автор: admin от 21-10-2014, 17:15, посмотрело: 577

Как создать интересный игровой сеттинг? Уровень четвертый: звукошумовые эффекты

Еще до того, как исследователи канадского университета Ватерлоо провели исследование и выяснили, как звукошумовые компоненты геймплея влияют на игроков, производители аркадных машин понимали: чем интереснее звучит игровой автомат, тем больше посетителей он привлекает. Во времена жесткого дефицита оперативной памяти, когда игры помещались на дискетах, а звуки сжимались самыми невероятными методами, разработчики любой ценой старались создать минимальные аудиоэффекты. Даже если при этом им приходилось жертвовать качеством графики.



Сегодня звукошумовые компоненты – одни из главных составляющих любой видеоигры. Без них невозможно сделать игровую вселенную достоверной, а значит увлечь игрока и погрузить его в состояние потока. В этой статье мы разберемся, как звуки могут влиять на сеттинг, геймплей и психику игрока.

Категория: Веб-разработка / Game Development

 

Этот пудель кусается: использование дыр в протоколе SSL 3.0

Автор: admin от 21-10-2014, 17:10, посмотрело: 1 043

Этот пудель кусается: использование дыр в протоколе SSL 3.0


Интересующиеся веб-безопасностью хабражители уже в курсе очередной уязвимости в SSL, именуемой POODLE. Мы подробно рассмотрим, что же собой представляет эта уязвимость и каким именно образом позволяет злоумышленнику добраться до, казалось бы, защищенных данных пользователя, а также расскажем, как с этим зверем справилась команда Mail.Ru Group.

Категория: Информационная безопасность

 
Назад Вперед