Pull to refresh
17
Karma
0
Rating
Виталий @vitvad

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

Defined or Undefined? Нюансы создания массивов в JavaScript

проблема этого кода
let arr = new Array(5).map(function() { return new Array(5); });

не в методе создания массива, а в методе `map`
первый же абзац говорит что `map` не вызывает callback если значение в массиве не было инициализированно. Но про этом если присвоить элементу массива `undefined` это считается проинициализированным.

var ar = new Array(5);ar[2] = void 0; ar.map((v,i) => console.log(v,i)) // undefined 2

в итоге немного изменив код получим желаемый результат


new Array(5).fill(void 0).map(() => new Array(5));

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

просто реакт заявляет об обратной совместимости и «мы не такие как ангулар», но при этом переход с 15+ на 16 для основной массы готовых библиотек и компонентов занял пол года, это при том что там впринципе не было ничего сверхестественного только Props вынесли и еще по мелочи (я говорю с точки зрения совместимости старого кода, а не про новый Fiber), а тут изменение API которому 100 лет в обед и на которое, я уверен, завязано достаточно много логики в старом коде, и мне кажется, обновляться они будут еще дольше + не будет возможности обновить библиотеку компонентов на последнюю версию, сохранив старую версию реакта.

Объединение componentWillMount и componentWillReceiveProps под одним getDerivedStateFromProps имеет смысл, что бы убрать дублирование кода.

Если говорить без привязки к фреймворкам наличие у компонента
хуков
— init

— willGetParams
— shouldChange?
— willMount/willUpdate
****** render
— didUpdate

— willUnmount
добавляют гибкости. Даже в ангуларе они появились.

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

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

одному мне кажется очень странным удаление хуков componentWillMount & componentWillUpdate ?

В 20 раз дешевле, в 2,5 раза точнее и вдвое удобнее

К сожалению, заказчик остановил проект… Поэтому в свет не вышел даже прототип.

у меня тоже не складывается все единую картинку. Как можно говорить о цене и точности конечного продукта у которого не было даже прототипа.
ожидание и реальность
image

Code review по-человечески (часть 2)

в продолжение к статье возник вопрос:
— дядя Боб смержил код к которому есть достаточно притензий, мы все такие на белом коне, ворвались и выровняли ситуацию с назревающим конфликтом. Но как выровнять ситуацию с кодом? В рамках каких задач заставить этого человека отрефакторить только что смерженый код?
— писать //TODO в коде? Нет ничего более постоянного чем временное — тудушки будут только множиться в коде и контекст задачи уже потеряется к моменту рефакторинга
— оставить как есть? Тогда зачем код ревью вобще проводить

мне кажется в подобной ситуации есть только один вариант решения:
«у меня очень много коментариев, давай устроим парное программирование и улучшим этот код вместе»

Про Reflect API доступным языком

вот и настал век программирования на смайликах...

Почему хорошие люди покидают крупные IT-компании?

поясню сразу почему мне кажется это логичным:
— люди которые вырастили эту компанию скорее всего имеют долю таланта и упорства иначе врядли на одной идее они бы превратили стартап в большую компанию
— так как они в компании довольно давно, они повзрослели, обзавелись семьями и вопрос денег для них не стоит остро (они получили довольно много после того как эта компания выросла и прошла IPO) и на первый план встали интерес к тому чем ты занимаешься и насколько удобно тебе там работать
— резкое изменение в повседневной жизни могло бы стать толчком для еще более кардинальных изменений (к примеру проект мне нравился, но я работаю на нем уже N лет, и я бы сменил работу, но нет последнего толчка для этого)

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

Почему хорошие люди покидают крупные IT-компании?

почему вы так считаете? я вполне согласен с тем что написано

Обзор Moto Z2 Play: долгожданное обновление

в G5 модули через одно место сделали… что-бы вставить модуль телефон прийдется выключить. И отсоединять их очень тяжело. Мото сделал модули намного адекватнее, прилепил и поехал. при этом не нарушая гермитичность корпуса.

Интеграция React и DataTables — не так тяжело, как рекламируют

немного не в тему:
недавно наткнулся на достаточно интересную альтернативу react-bootstrap вплане компонентов из коробки
ant.design
лично мне понравилось что есть вполне достойный coverage и множество компонентов из коробки. Та же таблица достаточно «конфигурабельна»

3 cпособа нарушить Single Responsibility Principle

Решение описанных проблем — отказаться от использования нотификаций в пользу более удобных механизмов.

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

Простой туториал React Router v4

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

только что наткнулся на статью Progressive Web Apps with React.js от Addy Osmani, довольно занимательная, но там в комментариях есть интерестный модуль react-async-component который собственно должен решать все поднятые вопросы (сам еще не пробовал, если кто-то имел дело интерестно знать впечатления)

Простой туториал React Router v4

В третьем react-route были хуки типа `onEnter` которые можно было использовать к примеру, если есть авторизация или подгрузка бандла с кодом для соответсвующей страницы. У меня лично попытка мигрировать на 4ю версию вызвала много-много нехороших слов в ee адресс.
Сейчас к сожалению не вспомню на что еще натыкался…

Кроме того документация хоть и выглядит красиво, ИМХО не дает ответы на возникающие вопросы, и ведет на страничку где ребята предлагают вам свои же платные курсы…

Обзор изменений в новом мажорном релизе Node 8

флаг --no-save. Но автоматическое сохранение все же удобнее

Подлавливаем пользователя на вводе в консоли в Google Chrome

а в document.title для IE «по быстрому» отладчик не прикручивали? :)

Радиоприемник из … картошки

А чтобы ответить по такому радио один из проводов нужно взять в зубы ...
у нас радио-точка была 110В, там было бы достаточно громко слышно :)

Как мы оптимизировали Twitter Lite

 window.requestAnimationFrame(() => {
        window.requestAnimationFrame(() => this.setState({ shouldRender: true }));
      });


я вот только не понял, зачем оборачивают в RAF 2 раза?

10 приложений для защиты устройств на Android

<offtop>
Интересно, а кто-то пользуется Signal Private Messenger?
я когда вижу у приложения которое по идее должно использовать только интернет, контакты и storage пачку непонятных запросов:
— set wallpaper
— record audio
— camera access

у меня сразу возникает чувство паранои
</offtop>

9. NoRoot Firewall

есть два аналога NetGuard и AFWall у которых хоть есть сорцы открытые на гите
первый работает так же через VPN второй через IPtables

Непредсказуемые последствия оптимизации производительности Chrome

почему-то мне казалось что XMLHttpRequest не доступен в WebWorker, спасибо что развеяли мое заблуждение.

Information

Rating
Does not participate
Location
Украина
Registered
Activity