JavaScript — TechCave

JavaScript— прототипно-ориентированный сценарный язык программирования. Является реализацией языка ECMAScript (стандарт ECMA-262). JavaScript обычно используется как встраиваемый язык для программного доступа к объектам приложений.

JavaScript— прототипно-ориентированный сценарный язык программирования. Является реализацией языка ECMAScript (стандарт ECMA-262).

JavaScript обычно используется как встраиваемый язык для программного доступа к объектам приложений. Наиболее широкое применение находит в браузерах как язык сценариев для придания интерактивности веб-страницам.

Основные архитектурные черты: динамическая типизация, слабая типизация, автоматическое управление памятью, прототипное программирование, функции как объекты первого класса.

Стена группы

Загрузка...
Den
2 месяца назад
#

Почему у React элементов есть свойство $$typeof?



О механизме React по предотвращению возможности инъекции JSON для XSS, и об избегании типовых уязвимостей.



Источник
Загрузка...
2 месяца назад
#

Кратко о redux-saga каналах



Добрый день, дорогие друзья.



В данной статье хотел бы максимально просто и кратко описать механизм redux-saga каналов, на примерах приближенных к реальным кейсам, надеюсь у меня это вышло.



Итак, начнем.



Источник
Загрузка...
Den
2 месяца назад
#

Неприятные ошибки при написании юнит тестов



На днях я буду делать внутренний доклад, на котором расскажу нашим разработчикам про неприятные ошибки, которые могут возникнуть при написании юнит тестов. Самые неприятные с моей точки зрения ошибки — когда тесты проходят, но при этом делают это настолько некорректно, что лучше бы не проходили. И я решил поделиться примерами таких ошибок со всеми. Наверняка ещё что-нибудь подскажете из этой области. Примеры написаны для Node.JS и Mocha, но в целом эти ошибки справедливы и для любой другой экосистемы.

Чтобы было интереснее, часть из них оформлена в виде проблемного кода и спойлера, открыв который, вы увидите, в чём была проблема. Так что рекомендую сначала смотреть на код, находить в нём ошибку, а затем открывать спойлер. Решения проблем указано не будет — предлагаю самим подумать над ним. Просто потому, что я ленивый. Порядок списка не имеет глубокого смысла — просто это очерёдность, в которой я вспоминал про всякие реальные проблемы, которые доводили нас до кровавых слёз. Наверняка многие вещи покажется вам очевидными — но даже опытные разработчики могут случайно написать такой код.

Источник
Загрузка...
2 месяца назад
#

Использование SVG путей в canvas для движения объектов



Если для анимации объекта в canvas (и не только), нужно перемещать его по некоторому желаемому пути, возможно даже по нескольким, которые могут выбираться случайным образом или последовательно, то это можно сделать с помощью svg путей. Давайте, для начала, запустим по траектории простой но зеленый квадрат.

image

Для этого сделаем или позаимствуем svg, с одним или несколькими путями.

Создадим элемент с помощью функции
document.createElementNS. MDN сообщает нам, что метод имеет базовую поддержку во всех современных браузерах. Затем добавим созданному элементу путь.

Источник
Загрузка...
2 месяца назад
#

Синхронный тренд JS: опрос



Доброго дня!

Начиная с 8 LTS
async/await полностью поддерживается на платформе Node; начиная с Chrome 62 (октябрь 2017) в консоли можно использовать
await вне тела асинхронной функции, т.е. top-level. На сегодня на этапе Stage 2 находится соответствующий
proposal в tc39. В то же время существует огромное количество легаси-кода с коллбэками даже без промисов, со смесью того и другого, и всякие другие комбинации. Где-то даже остались следы генераторов. Т.е. в мире JavaScript сосуществуют как минимум 4 разные модели реализации (а)синхронности.

А что предпочитаете вы? Не откажите в любезности уделить минутку ответу. Спасибо!

Источник
Загрузка...
Den
2 месяца назад
#

Imba: JavaScript-совместимый язык для быстрой работы с DOM



Imba — это опенсорсный язык программирования, созданный компанией Scrimba специально для разработки веб-приложений. Он компилируется в JavaScript и способен работать внутри существующей JS-экосистемы. Речь идёт, например, о Node.js, об npm, о Webpack.

Основная сильная сторона Imba заключается в том, что этот язык позволят создавать гораздо более быстрые приложения, чем те, которые основаны на библиотеках, применяющих технологию Virtual DOM, наподобие React и Vue. Рост производительности приложений достигается за счёт того, как Imba работает с обновлениями DOM. Подробности об этом можно почитать
здесь.



Автор этого материала, сооснователь проекта Scrimba, говорит, что пользуется Imba уже несколько лет. По его словам, писать на этом языке — сплошное удовольствие, так как он, в сравнении с JavaScript, отличается более чистым синтаксисом, что улучшает читабельность кода.

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

Источник
Загрузка...
Den
2 месяца назад
#

Расширение для хрома: создание, публикация, опыт



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

Идеей стало создание таск-менеджера для разработчика (и не только), который был бы всегда под рукой. В нем должны были отобразиться актуальные тикеты
trello и
jira, реквесты в
gitlab и т.п. Это те вещи, которые я обычно искал, набирая ключевые слова в адресную строку браузера, типа «jira PM-20».



Расширение для хрома

Источник
Загрузка...
Den
2 месяца назад
#

Тактичный робот: умеет слушать и не перебивает



Распознавание речи (далее – ASR, Automatic Speech Recognition) используется при создании ботов и/или IVR, а также для автоматизированных опросов. Voximplant использует ASR, предоставляемый «корпорацией добра» – гугловское распознавание работает быстро и с высокой точностью, но… Как всегда, есть один нюанс. Человек может делать паузы даже в коротких предложениях, при этом нам нужна гарантия, что ASR не воспримет паузу как окончание ответа. Если ASR думает, что человек закончил говорить, то после «ответа» сценарий может включить синтез голоса со следующим вопросом – в это же самое время человек продолжит говорить и получит плохой пользовательский опыт: бот/IVR перебивает человека. Сегодня мы расскажем, как с этим бороться, чтобы ваши пользователи не огорчались от общения с железными помощниками.



Источник
Загрузка...
Den
2 месяца назад
#

Малоизвестные возможности JavaScript



JavaScript часто называют самым простым языком для новичков, в программировании на котором сложнее всего достичь мастерства. Автор материала, перевод которого мы публикуем, говорит, что не может не согласиться с этим утверждением. Всё дело в том, что JS — это по-настоящему старый и по-настоящему гибкий язык. Он полон таинственных синтаксических конструкций и устаревших возможностей, всё ещё им поддерживаемых.

image

Сегодня мы поговорим о малоизвестных возможностях JavaScript и о вариантах их практического применения.

Источник
Загрузка...
Den
2 месяца назад
#

Angular 6+ полное руководство по внедрению зависимостей.  providedIn vs providers:[]



image

В Angular 6 появился новый улучшенный синтаксис для внедрения зависимостей сервисов в приложение (
provideIn). Несмотря на то, что уже вышел Angular 7, эта тема до сих пор остается актуальной.
Существует много путаницы в комментариях GitHub, Slack и Stack Overflow, так что давайте подробно разберем эту тему.


В данной статье мы рассмотрим:

  1. Внедрение зависимостей (dependency injection);

  2. Старый способ внедрения зависимостей в Angular (providers: []);

  3. Новый способ внедрения зависимостей в Angular (providedIn: 'root' | SomeModule);

  4. Сценарии использования provideIn;

  5. Рекомендации по использованию нового синтаксиса в приложениях;

  6. Подведем итоги.



Источник
Загрузка...
Загрузка...
2 месяца назад
#

В погоне за веб стандартами



Мы
уже рассказывали с какими проблемами мы сталкиваемся занимаясь фронтенд разработкой в 2018 году. Давайте посмотрим как далеко мы уходим от стандартов когда пишем наш код



и как мы можем решить эту проблему.

Источник
Загрузка...
2 месяца назад
#

На-click-ать известность, или как взбудоражить робота и … остальных





Давным-давно,
у фасада далекого-далекого магазина
состоялся подслушанный разговор:

NB: - А как привести много посетителей на свой новый сайт?

<b>GURU</b>: - Ну можно ссылок «раскидать» на разных форумах и в соц. сетях. <b>Поисковая оптимизация</b> поможет и <b>контент</b>. Можно <b>тизерные сети </b> привлечь, а можно много раз посетить сайт через разные <b>прокси</b> ...
NB: - И чем же помогут такие посещения, ведь это иллюзия живых людей?

<b>GURU</b>: - Счетчик статистики от <strong>google</strong> или от <b>yandex</b> объяснит поисковикам, что сайт становится популярным. Да еще и <b>реферер</b> можно связать с посещаемыми сайтами по запросам. Подрастет позиция в поисковиках, а значит и подрастет поисковый трафик.
NB: - А где же взять такое количество прокси?

<b>GURU</b>: - Где?… Ну в <strong>интернете</strong> поищи...

NB перестал спрашивать, видимо, опасаясь раздражать явно более опытного собеседника.

GURU закатил глаза, как бы подчеркивая исчерпанность темы про прокси и замолчал…

Источник
Загрузка...
Den
2 месяца назад
#

Прямой эфир: инфраструктура фронтенда



Всем привет! Меня зовут Роман Дворнов, я технический руководитель команды архитектуры фронтенда в Авито. Мы занимаемся созданием и развитием технической платформы фронтенда, чтобы другие команды могли быстрее создавать интерфейсы и продукты. Мы с коллегами запланировали серию онлайнов, в которых будем обсуждать актуальные вопросы разработки клиентской части.



11 декабря на нашем ютуб-канале пройдёт первый прямой эфир. Обсудим инфраструктуру фронтенда. В дискуссии будут участвовать эксперты из Яндекса, Тинькофф Банка, Mail.ru и Авито. Под катом — примерные вопросы, которые планируем обсуждать (дополняйте список), и ссылка на предстоящую трансляцию. Добавляйте пост в закладки: после встречи обновим его и выложим видео.





Источник
Загрузка...
2 месяца назад
#

Практический TypeScript. React + Redux



Не понимаю, как вы вообще живёте без строгой типизации. Чем занимаетесь. Дебажите целыми днями?
В настоящее время разработка любого современного фронтэнд-приложения сложнее уровня hello world, над которым работает команда (состав которой периодически меняется), выдвигает высокие требования к качеству кодовой базы. Чтобы поддерживать уровень качества кода на должном уровне, мы во фронтэнд-команде #gostgroup идём в ногу со временем и не боимся применять современные технологии, которые показывают свою практическую пользу в проектах компаний самого разного масштаба.



Источник
Загрузка...
5 6 8 9

Авторизация

Пользователи

Андрей Подольский
Kumskov
Juan
Tutu
naikdij88
NewEXE
Георгiй Москвитинъ
Andpyxa Tutunnik
Andrey_fox

GeekBrains

КАРКАМ

Нетология