Size: a a a

2020 December 28

DB

Dima Bildin in Frontend UA
Ну выглядит, как я то же самое могу записать и в pojo. Поэтому похоже это вопрос синтаксиса во многих ситуациях.
источник

NL

Nikita Lyubchich in Frontend UA
Тут вопрос того, как ты хочешь чтобы пользовались твоим API, и как сделать так, чтоб пользователь не делал кучу лишних движений чтобы get things done
источник

DB

Dima Bildin in Frontend UA
getSomeEntity().filter(a.b.lte(10)) => getSomeEntity({filter: {a: {b: {$lte: 10}}}), по _сути_ ничего не меняется.
Но я предвзят просто потому что меня это бесило в сдк, которое было просто 1:1 переведена из джавы. В целом ничего против билдеров, если в какой-то момент он кажется уместней, я не имею)
источник

NL

Nikita Lyubchich in Frontend UA
> по _сути_ ничего не меняется
меняется, потому что тебе в getSomeEntity надо будет как-то писать логику мержа существующего фильтра a.b IS NOT NULL и a.b > 10 внутри getSomeEntity, вместо того, чтобы ты, как автор используемой либы, решал это на уровне API ‘new Entity()’ с помощью композиции
источник

EO

Eugene Obrezkov in Frontend UA
я когда kittik делал, я до последнего кололся об то, чтобы предоставить возможность в объектах делать свои слайды, но при этом, я хотел, чтобы они не допускали ошибок при написании этих объектов

когда у тебя огромная презентация, то этот POJO это простыня из объекта, которую ты ну никак не сможешь проверить в compile time, чтобы это ещё и пользователю было удобно
источник

EO

Eugene Obrezkov in Frontend UA
выход - использование типизированных билдеров
источник

EO

Eugene Obrezkov in Frontend UA
проблема была в том, что если ты будешь просто объекты передавать, то на больших объектах это в принципе становится тяжело поддерживать

особенно, когда ты начинаешь ссылаться на другие элементы внутри этого конфига
источник

EO

Eugene Obrezkov in Frontend UA
источник

DB

Dima Bildin in Frontend UA
А в чём проблема-то описать то что ты передаёшь в create?
источник

EO

Eugene Obrezkov in Frontend UA
Dima Bildin
А в чём проблема-то описать то что ты передаёшь в create?
а ты попробуй от так сесть и описать))
источник

EO

Eugene Obrezkov in Frontend UA
и когда будешь получать ошибку, "Shape is not found", попробуй продебажь, где ты там в объекте сделал ошибку в слове
источник

EO

Eugene Obrezkov in Frontend UA
или когда будешь добавлять новый слайд, в котором хочешь переиспользовать что-то из того что есть уже в конфиге, ссылаясь по имени, и при этом не скроллить вверх и не искать, как же оно там называлось
источник

DB

Dima Bildin in Frontend UA
Описывать такие интерфейсы мне кажется – один из моих видов прокрастинации))
источник

EO

Eugene Obrezkov in Frontend UA
с использованием типизированных билдеров это не только проверка валидности конфига на этапе компиляции, а ещё и автодополнение полей конфига в зависимости от того, какой конфиг ты передал до этого
источник

EO

Eugene Obrezkov in Frontend UA
многие думают что билдеры это set(key, value) { this[key] = value }
источник

EO

Eugene Obrezkov in Frontend UA
могу только так сделать 🤦 🙃
источник

EO

Eugene Obrezkov in Frontend UA
ну и сама реализация такого билдера, к слову, не сильно и страшная, а профиты огромные
источник

EO

Eugene Obrezkov in Frontend UA
источник

EO

Eugene Obrezkov in Frontend UA
там дальше в Type Challenges такой мрак страшный идёт, что даже не знаешь за что браться. Я почти закончил средний уровень сложности и там прям... жара
источник

EO

Eugene Obrezkov in Frontend UA
у меня вопрос к ребятам, которые парятся по поводу автоматического бутстрапа рабочего окружения после переустановки макоси

чем вы это делаете, как? я смотрю по гуглам, ищу какие-то готовые решения, которые можно было бы использовать, но всё сводится к тому, что у всех свои скрипты
источник