• Во время альфа и бета версий Angular2 router-deprecated вполне справлялся со своими задачами. С появлением RC1 вышел и переработанный router 2.0, затем в вериси RC2 снова выходит новая версия роутера — 3.0. Полная его переработка была связана с тем, что возникли серьезные проблемы, такие как глубокая линковка в lazy-loaded секциях. Итак, рассмотрим основные изменения.

    Comments   Read More
  • WebAssembly (сокр. wasm) – это эффективный низкоуровневый язык программирования. Главное его предназначение заключается в повышении производительности JavaScript.

    WebAssembly построен на подмножестве JavaScript – asm.js. Он также хранится в текстовом формате. Может возникнуть вопрос: как код может быть эффективнее если он также проходит интерпретатор, а затем компилируется? Для этого используется пролог директива, благодаря которой компилятор сразу переводит код на язык ассемблера, пропуская этап интерпретации.

    Comments   Read More
  • Marionette Driver относится к инструментам для автоматизированного тестирования в Firefox.

    Marionette представляет собой драйвер для удаленного управления ПО построенными на основе Gecko платформе.

    Gecko — название движка отрисовки веб-страниц, разработанного в рамках проекта Mozilla. Изначально он назывался NGLayout.

    Функциональность Gecko включает в себя чтение такого веб-содержимого, как HTML, CSS, XUL, JavaScript, и его отрисовку на экране пользователя или печать. В приложениях, основанных на XUL, Gecko также используется для отрисовки пользовательского интерфейса.

    Gecko используется во многих приложениях, в том числе нескольких веб-браузерах — таких как Firefox, SeaMonkey, Camino и т. д.

    Marionette представляет практически тот же API, что и Selenium.WebDriver. Что делает переход на новый вид драйвера совершенно «безболезненным».

    Comments   Read More
  • Явное описание задач в коде делает их достаточно неповоротливыми и неудобными в поддержке. Также было бы явным излишеством описывать однотипные задачи.

    Было бы удобнее хранить их минимальное описание с параметрами в отдельном файле с JSON или XML разметкой, который бы автоматически подгружался при старте планировщика и далее уже обновлял список при условии, если он был изменен. У известного планировщика Quartz, такая фича идет уже из коробки, но к сожалению, в Hangfire ее нет.

    Comments   Read More
  • Для 99% сложных технических проблем, с которыми разработчики сталкиваются сегодня, было найдено решение в начале 1970 годa: модель акторов.

    Предпосылка актор-модели заключается в том, что каждый компонент в этой системе есть «актор», и между акторами происходит общение, путем передачи сообщений между собой. Акторы имеют уникальные адреса внутри актор-системы, даже находясь на нескольких физических компьютерах, можно направить конкретное сообщение конкретному актору.

    Comments   Read More