Дмитрий Карловский @nin-jin
Full Stack Overflow
Information
- Rating
- 2,213-th
- Location
- Санкт-Петербург, Санкт-Петербург и область, Россия
- Date of birth
- Registered
- Activity
Specialization
Chief Technology Officer (CTO), Chief information officer (CIO)
Lead
From 8,000 €
OOP
Database
Designing application architecture
Только у функции при этом теряется имя, поэтому приходится писать как-то так:
Playground Link
Какова вероятность, что три рандома подряд выдадут вам 3 нуля? Для 64-битного числа это будет
1/2**63**3 = 1/7e56
. Если взять суперкомпьютер ближайшего будущего на 7 эксафлопс, то матожидание выпадения джекпота из[ 0 , 0 , 0 ]
будет1e38
секунд или1e30
лет.Но тут даже не настоящий рандом, а псевдорандом, где следующее значение является функцией от предыдущего, а это значит, что выдаёт он два одинаковых значения подряд примерно никогда.
Порой нужны не только и не столько валидаторы, сколько нормализаторы. Например, вы распарсили урл, на входе у вас просто строки. Соответственно вам надо их преобразовать в числа, флаги, объекты. Не уверен насколько особенности парсинга урла должны быть в самом классе.
Ничего не понял. Вам на вход приходит дескриптор, у которого есть get/set — просто дёргаете их для получения/установки значения.
Не понял в чём проблема объявить свои get/set обработчики, которые выполняются всегда на экземпляре?
Чудесный пример безалаберности разработчиков. Кому-то показалась хорошей идея затащить в библиотеку валидации все варианты номеров телефонов со всего мира — довольно бесполезная штука в свете существования NAT от мира телефонии — добавочных номеров.
Речь о том, что есть куча разных апи для доступа к разным состояниям, а не одно, чтобы править всеми?
Люди помешались с этими "стейт-менеджерами", гребя в одну кучу совершенно разные вещи.
Реактивность — она про синхронизацию множества состояний.
Flux-like про то, чтобы не иметь множества состояний, а хранить всё в одной глобальной переменной.
RX-like вообще не про состояния, оно про потоки событий с фиксированной конфигурацией. На базе RX-like можно реализовать реактивность, а можно не реализовать.
MobX-like как раз именно про реактивность с динамической конфигурацией потоков данных.
К "управлению" состоянием ни то ни другое не относится. Управление — это мутаторы в моделях. Редьюсеры в redux-linke- это частный случай одного большого мутатора для одной большой модели.
Для прочищения сознания предлагаю взглянуть на NgRx — это этакий redux, который использует rx для уведомления об изменениях.
Источником истины в реактивной среде может быть как глобальная переменная (MST,vuex), так и нет. Более того, часто источником истины выступает внешнее состояние (location, history, localStorage, sessionStorage, server, p2p-net, indexedDB, page layout, dom-state).
Внешнее от внутреннего отличается лишь тем, что первое мы контролируем не полностью и оно может поменяться независимо от того, что мы написали в коде.
Всякие GraphQL — это про просто протокол общения с сервером. Я выше перечислил кучу состояний, которые являются внешними, но совсем не являются серверными апи. То же состояние DOM в иммутаблы ну никак не абстрагируется.
А зачем? Они не мешают.
Зато замечательно проматывается.
Сначала ведутся на хайп, а потом изобретают велосипеды. Всё давно уже придумано, нужно лишь вылезти из информационного пузыря: https://habr.com/ru/post/346066/
А можете поделиться этой страницей со 1200 коменатиями? Мне нужно для иллюстрации на конфе, как делать не надо.
Довольные разработчики ещё больше расслабятся и уже через пол года на вашем девайсе хорошо если 10 вкладок останутся не выгруженными и вы сможете почитать их в самолёте.
Заглянул в свой смартфон:
И выбирая между поисками достойной более современной замены, чтобы очередной говносайт у меня не тормозил, и уходом к ребятам, которые более профессионально делают свою работу, я выберу скорее второе.
Там скорее букв нет. Каждый иероглиф — отдельное слово.
Нет, конечно, зачем генерировать бесполезные тесты?
Это покажет функциональный тест.