JavaScript — TechCave

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

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

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

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

Стена группы

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

YouTube упал? Или проблема одного процента





Второй день наблюдаются проблемы с просмотром видео на YouTube.

Новостные агрегаторы уже окрестили это «масштабным сбоем» —
Масштабный сбой YouTube.

Некоторые высказывают предположения, что это всевидящий «Роскомнадзор» чего-то там заблокировал, и не смотреть нам больше любимых котиков:)

Стало интересно (к тому же проблема наблюдалась еще вчера). Решил немного покопаться.

Все оказалось до банальности просто — проблема в
проценте. Да, именно один процент не позволяет нам смотреть любимые видосики.

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

Применение паттерна observer в Redux и Mobx





Паттерн «observer» известен наверное с момента появления самого ооп. Упрощенно можно представить что есть объект который хранит список слушателей и имеет метод «добавить», «удалить» и «оповестить», а внешний код либо подписывается либо оповещает подписчиков



class Observable {
  listeners = new Set();
  subscribe(listener){
    this.listeners.add(listener)
  }
  unsubscribe(listener){
    this.listeners.delete(listener)
  }
  notify(){
    for(const listener of this.listeners){
       listener();
    }
  }
}


В redux-е этот паттерн применяется без всяких изменений  — пакет «react-redux» предоставляет функцию connect которая оборачивает компонент и при вызове componentDidMount вызовет subscribe() метод у Observable, при вызове componentWillUnmount()  вызовет  unsubscribе() а dispatch() просто вызовет метод trigger() который в цикле вызовет всех слушателей где каждый в свою очередь вызовет mapStateToProps() и потом в зависимости от того изменилось ли значение  —  вызовет setState() на самом компоненте. Все очень просто, но платой за простоту является необходимость явно указывать от каких частей стора зависит компонент внутри mapStateToProps().



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

Мышление в стиле Ramda: первые шаги



Недавно я познакомился с замечательной серией статей "Thinking in Ramda", которые проясняют на простых и ясных примерах способы написания кода в функциональном стиле с использованием библиотеки Ramda. Эти статьи показались мне настолько прекрасными, что я не смог удержаться от того, чтобы не перевести их на русский язык. Надеюсь, что в этом будет польза для многих людей smile Давайте начнём перевод с первой вступительной статьи.

1. Первые шаги

2. Сочетаем функции

3. Частичное применение (каррирование)

4. Декларативное программирование

5. Бесточечная нотация

6. Неизменяемость и объекты

7. Неизменяемость и массивы

8. Линзы

9. Заключение

Данный пост — это начало серии статей «Мышление в стиле Ramda» о функциональном программировании.

Я буду использовать библиотеку
Ramda в этих статьях, хотя многие из обсуждаемых идей применимы также к множеству других библиотек, таких как Underscore и Lodash, а также к другим языкам программирования.

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

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

Как избежать проблем с производительностью при создании React-приложений





О производительности react

React не зря считается очень производительным фреймворком. Он позволяет создавать быстрые динамические страницы с большим количеством элементов.



Но бывают ситуации, когда элементов на странице становится очень много и встроенной производительности react не хватает. Тогда приходится применять различные приемы для оптимизации.



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

Буферы, потоки и двоичные данные в Node.js



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

image

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

10 IT-героев по версии Кодабры: Веб-разработка



В этом году в преддверии весны, Кодабра совместно со школой «Летово» проводит конкурс, посвященный программированию, робототехнике и VR — «
IT-герои». По этому замечательному поводу мы решили рассказать Хабру, кто же для нас самих является героем, на кого мы ориентируемся при обучении детей профессиям нового века, а перед кем снимаем шляпу за их вклад в популяризацию и развитие технологий.

Эта статья будет посвящена выдающимся людям, повлиявшим на становление Web 2.0 и его победное шествие по планете. Прежде всего веб-программистам и технологическим евангелистам, работой которых мы вдохновлялись. Обращаем ваше внимание, что этот рейтинг является полностью субъективным, а расположение тех или иных имен в списке выбрано скорее из художественных соображений, чем из их вклада относительно друг друга.

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

Изучаем и реализуем алгоритм работы правильного observer паттерна для react компонентов





Итак продолжаем развивать observer-паттерн. В предыдущей статье от старого и очень простого паттерна «observer» маленькими шагами мы пришли к mobx и написали его мини-версию. В этой статье мы напишем полноценную версию mobx которая реализует алгоритм обновления зависимостей в правильном порядке для избежания ненужных вычислений. Надо сказать что попытки описать этот алгоритм на хабре предпринимались и раньше в статьях товарища vintage про атомы тут, тут, и тут но там не описан в полной мере последний «правильный» порядок обновления о чем и будет речь в этой статье.



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

Платёжная система в 50 строк кода, реально?



В последнее время технологические решения на блокчейне всё больше проникают в нашу повседневную жизнь. Технология новая, поэтому не все понимают, как и где её применять. Я попробовал создать платежную систему на базе смарт-контракта Ethereum и результат меня удивил. Смарт-контракт выполняющий функции полноценной платёжной системы получился всего в 50 строк кода. Всех заинтересовавшихся как он работает прошу под кат.

image

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

Машинное обучение контент менеджера





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

Разумеется, вы можете подойти к коллеге, и сказать, что он/она по невнимательности забыл поставить картинку, но ведь это же не наш метод.

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

Удивительный Angular




Awesome Angular




От переводчиков

Всем привет, с вами Максим Иванов и Дмитрий Сергиенков, и сегодня мы поговорим о новостях в мире Angular. Мы подготовили для вас наиболее интересные материалы и отобрали список вопросов, который вам должен понравиться. Отметим только, что если вы будете ждать от этой статьи ответа на вопрос «Чем Angular лучше других технологий?», то придется вас огорчить, у нас не будет ответа на него. Почему? Как правило, все мнения вида «Технология X лучше технологии Y» почти всегда не более, чем отражение точки зрения высказывающегося. Однако для тех, кто только начинает изучать этот фреймворк, мы постараемся объяснить, что дает вам эта технология и какую пользу она приносит. Также не проходите мимо и ответьте на опрос, самые популярные ответы будут отправлены Игорю Минару (ведущий разработчик команды Angular). Ну что же, приступим.



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

Дайджест свежих материалов из мира фронтенда за последнюю неделю №301 (5 — 11 февраля 2018)



Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.



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

Сделаем это по-быстрому: голосовой бот на Dialogflow и Voximplant



Голосовые боты были и остаются полезной фичей для общения с клиентами. Потому что если что-то возможно автоматизировать, то надо срочно это делать. Подтверждение заказов и информация о них, запись обратной связи от клиентов, распознавание голоса и действия согласно тому, что распозналось и т.д. Кстати, о последнем – сделать бота с распознаванием в 2018 году стало еще проще: Voximplant отлично умеет распознавать и транскрибировать речь, а инструмент Dialogflow от “корпорации добра” хорошо анализирует текст. Ниже я покажу, как можно быстро собрать демо-бота, который расскажет о погоде в названном городе.



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

Новшества React 16.3(.0-alpha)



React 16.3-alpha опубликован в
npm, его уже можно загружать и использовать. Сегодня мы поговорим о самых крупных и интересных нововведениях этого релиза. В частности, речь пойдёт об API Context, о новых методах жизненного цикла, о статическом методе
getDerivedStateFromProps, о компонентах
StrictMode и
AsyncMode, а также об обновлённых инструментах разработчика React.

image

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

JavaScript ES6: оператор расширения



JavaScript постоянно развивается, в нём появляются различные новшества и улучшения. Одно из таких новшеств, появившееся в ES6 — оператор расширения. Он выглядит как троеточие (
...). Этот оператор позволяет разделять итерируемые объекты там, где ожидается либо полное отсутствие, либо наличие одного или нескольких аргументов. Сухие определения обычно бывает непросто понять без практических примеров. Поэтому рассмотрим несколько вариантов использования оператора расширения, которые помогут вникнуть в его сущность.

image

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

JavaScript ES6 — синтаксис оператора spread (…)



Синтаксис оператора spread

  1. Синтаксис оператора spread это просто три точки: …

  2. Оператор spread позволяет расширять выражения в тех местах, где предусмотрено использование нескольких аргументов.



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

Источник
Загрузка...
16 17 19 20

Авторизация

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

lunchcalllina1978
Sever
stopresniebots1983
tekino
templide
Seangle
Галя Рубцова
Ольга Телюкова
Zhenya