Какая же красота в
Задача:
Есть форма (создание большой сущности, полей в 40), которую надо разбить по компонентам.
Как это задача решается в VueJS?
1.
2.
Как это решается в ReactJS? -
1. Описываете всю форму в рутовом компоненте:
2. Оборачиваете всю форму (включая подключаемые компоненты) в
3. Используете все те же методы из контекста формы:
Кра-со-та!
ReactJS по сравнению с VueJS.Задача:
Есть форма (создание большой сущности, полей в 40), которую надо разбить по компонентам.
Как это задача решается в VueJS?
1.
vuelidate - которая заставляет тебя описывать валидацию отдельным объектом, а если это разные компоненты, то придется разбиваться валидацию на разные объекты и через события и методы собирать это все в один объект, морочится с $anyError и $anyDirty и так далее.2.
veelidate - которая также заставляет описать объект схемы, а не использования Composition API просто заставляет использовать свои компоненты (для 3 версии VueJS), для 2 версии там все надо обернуть в ValidationProviderКак это решается в ReactJS? -
react-hook-form и userFormContext.1. Описываете всю форму в рутовом компоненте:
const methods = useForm<CreateTaskDTO>({})2. Оборачиваете всю форму (включая подключаемые компоненты) в
<FormProvider {...methods}>3. Используете все те же методы из контекста формы:
const {register, formState: {errors}} = useFormContext();Кра-со-та!
👍6❤2💩1
Продолжаем нашу рубрику Production Service, начали работать с БД, принес кучу старого кода, будем рефакторить.
https://youtu.be/gskSzKKeU2w
https://youtu.be/gskSzKKeU2w
YouTube
Пишем полноценный production проект на Golang. Часть 2
Продолжаем. Начинаем работать с БД, закинул старый код, понял что пора рефакторить. Веселуха!
Приятного просмотра!
Ссылка на GitHub: https://github.com/theartofdevel/production-service
Часть 1: https://youtu.be/hb-9Lz-nuyM
Часть 2: https://youtu.be/gskSzKKeU2w…
Приятного просмотра!
Ссылка на GitHub: https://github.com/theartofdevel/production-service
Часть 1: https://youtu.be/hb-9Lz-nuyM
Часть 2: https://youtu.be/gskSzKKeU2w…
👍9🔥3
Ну что, первый пулл был смержен
https://github.com/theartofdevel/production-service/pull/1
К третьей части рубрики Production Service сделаю еще больше задач.
https://github.com/theartofdevel/production-service/pull/1
К третьей части рубрики Production Service сделаю еще больше задач.
В продолжении вчерашней беседы касательно мультиязычности или двуязычности.
Как мы уже выяснили есть несколько категорий приложений.
World-wide application - то есть приложение с рынком по всему миру, например по продаже NFT токенов для фотографий голых кошек. Как вы думаете, поддержку скольких языков выгодно сделать на этапе MVP для такого приложения? Ключевое слово выгодно. Я считаю, что 1 и это английский. Быстро создаем MVP с 1 языком и проверяем гиппотезу. А если хотим проверить гипотезу на рынке китая, MVP все еще будет с 1 языком - китайским и проверяем гипотезу. Предположим провал (в 97% случаях) и мы счиатем что провал из-за особенностей рынка, переводим приложение китайский --> русский и выходим на русский рынок и проверяем гипотезу. Гипотеза удалась, мы вышли на рынок получаем прибыль. Далее нам надо выйти на новый рынок, Индонезия, что надо сделать с архитектурой приложения? Ничего. У нас были поля name, description, а теперь полей больше, name_indonesia, name_russia, description_russia, description_indonesia.
Таких стран и рынков будет вряд ли больше 1-2-3, а значит и полей будет не огромное количество и если что, их всегда можно спрятать в JSONB.
Если же мы говорим про приложения, для которых язык является ключевой фишкой, например отзывы по мировым отелям (привет tripadvisor), делать на уровне MVP поддержку миллиарда таблиц с языками я бы также не стал, так как MVP это почти всегда монолит. Я бы также сделал 1-2 языка, а уже после упешной гипотезы и аналитики стал бы делать разные микросервисы с отзывами на разных языках - то есть разнес бы языки по разным БД, а не по таблицам.
Итого: делать сразу мультиязычный я не вижу никакого смысла. Так как либо твое приложение будет иметь 1-2 языка, либо все языки мира, но это уже точно не в рамках одной БД, а такую архитекутуру создавать сразу, на этапе MVP или прототипа, или PoC'a я не вижу смысла, ни экономического, ни архитектурного.
Как мы уже выяснили есть несколько категорий приложений.
World-wide application - то есть приложение с рынком по всему миру, например по продаже NFT токенов для фотографий голых кошек. Как вы думаете, поддержку скольких языков выгодно сделать на этапе MVP для такого приложения? Ключевое слово выгодно. Я считаю, что 1 и это английский. Быстро создаем MVP с 1 языком и проверяем гиппотезу. А если хотим проверить гипотезу на рынке китая, MVP все еще будет с 1 языком - китайским и проверяем гипотезу. Предположим провал (в 97% случаях) и мы счиатем что провал из-за особенностей рынка, переводим приложение китайский --> русский и выходим на русский рынок и проверяем гипотезу. Гипотеза удалась, мы вышли на рынок получаем прибыль. Далее нам надо выйти на новый рынок, Индонезия, что надо сделать с архитектурой приложения? Ничего. У нас были поля name, description, а теперь полей больше, name_indonesia, name_russia, description_russia, description_indonesia.
Таких стран и рынков будет вряд ли больше 1-2-3, а значит и полей будет не огромное количество и если что, их всегда можно спрятать в JSONB.
Если же мы говорим про приложения, для которых язык является ключевой фишкой, например отзывы по мировым отелям (привет tripadvisor), делать на уровне MVP поддержку миллиарда таблиц с языками я бы также не стал, так как MVP это почти всегда монолит. Я бы также сделал 1-2 языка, а уже после упешной гипотезы и аналитики стал бы делать разные микросервисы с отзывами на разных языках - то есть разнес бы языки по разным БД, а не по таблицам.
Итого: делать сразу мультиязычный я не вижу никакого смысла. Так как либо твое приложение будет иметь 1-2 языка, либо все языки мира, но это уже точно не в рамках одной БД, а такую архитекутуру создавать сразу, на этапе MVP или прототипа, или PoC'a я не вижу смысла, ни экономического, ни архитектурного.
🔥8👍3🤯1
https://zomro.com
Перестаёт принимать QIWI к оплате за хостинг с 18 мая - мне письмо пришло.
Все еще остаётся возможность оплатить через UnionPay и крипту.
Я через UP пробовал - мне на телефон код не приходил. Пробовал 10 раз.
Перестаёт принимать QIWI к оплате за хостинг с 18 мая - мне письмо пришло.
Все еще остаётся возможность оплатить через UnionPay и крипту.
Я через UP пробовал - мне на телефон код не приходил. Пробовал 10 раз.
👍2
Третья часть разработки production платформы e-commerce на Golang.
Теперь все задачи для подписчиков оформлены в виде Issue на GitHub. Вся информация в ролике и в описании. Приятного просмотра!
https://youtu.be/JYvWu-7vKY8
Теперь все задачи для подписчиков оформлены в виде Issue на GitHub. Вся информация в ролике и в описании. Приятного просмотра!
https://youtu.be/JYvWu-7vKY8
🔥12
Посмотрите какую красоту навоял @aintsashqa в Pull Request для фильтрации и сортировки. Код подробно еще не смотрел, постараюсь на выходных и обсудить.
https://github.com/theartofdevel/production-service/pull/12
Welcome обсуждать, проведите Code Review и напишите комментарий!
P.S. придираться к пуговицам не надо.
https://github.com/theartofdevel/production-service/pull/12
Welcome обсуждать, проведите Code Review и напишите комментарий!
P.S. придираться к пуговицам не надо.
GitHub
added filtering and sorting structures by aintsashqa · Pull Request #12 · theartofdevel/production-service
Фильтрация
Для создания фильтра используется функция NewFilter
Для добавления дополнительных фильтраций к текущей используется функция Filter.WithFilters
Все дополнительные фильтры будут соединятьс...
Для создания фильтра используется функция NewFilter
Для добавления дополнительных фильтраций к текущей используется функция Filter.WithFilters
Все дополнительные фильтры будут соединятьс...
👍9🔥1
Илья Казначеев, автор библиотеки https://github.com/ilyakaznacheev/cleanenv которую я так люблю, написал пост. Мне понравилось. Велкаммен.
GitHub
GitHub - ilyakaznacheev/cleanenv: ✨Clean and minimalistic environment configuration reader for Golang
✨Clean and minimalistic environment configuration reader for Golang - ilyakaznacheev/cleanenv
Forwarded from Kaznacheev Feed
Периодически встречаю вопросы, где и как держать логгер в Go приложении. Вопрос действительно неоднозначный, и идеального решения, кажется, нет.
За время работы на разных проектах я видел разные варианты, и даже придумал свои. О чем и написал статью.
За время работы на разных проектах я видел разные варианты, и даже придумал свои. О чем и написал статью.
🔥5
Давайте разберемся с CORS и больше не будем страдать.
ДРУЖБА GOLANG И REACTJS! НАСТРАИВАЕМ CORS
https://youtu.be/VY8thJoSw9E
ДРУЖБА GOLANG И REACTJS! НАСТРАИВАЕМ CORS
https://youtu.be/VY8thJoSw9E
👍12
Кто хочет проверить свои силы в ремонте бытовой техники, далеко ходить не надо. Регистрируемся здесь (https://remont-aud.net/tests/) и проходим тест после регистрации.
А вы говорите, капча, капча.
Нашел и сдал тест: @Сергей
А вы говорите, капча, капча.
Нашел и сдал тест: @Сергей
Вышел убиииийца VScode. Но ссылка на скачивание отдает 500. Кто скачает - пришлите в канал дистр пожалуйста)
https://zed.dev/releases
https://zed.dev/releases
Ну все. вскрывайте свои компьютеры, выдергивайте SATA кабели. DeadSec уже включили свои дешифраторы по всему миру.
https://safe.cnews.ru/news/top/2022-07-19_najden_sposob_hishcheniya_dannyh
P.S. DeadSec это хакерская организация из игры Watch Dogs.
https://safe.cnews.ru/news/top/2022-07-19_najden_sposob_hishcheniya_dannyh
P.S. DeadSec это хакерская организация из игры Watch Dogs.
CNews.ru
Найден способ хищения данных с миллиардов ПК во всем мире, даже не подключенных к интернету - CNews
Описан новый экзотичный способ похищения данных с изолированных персональных компьютеров – с использованием...
Коротко про:
gRPC + buf.build + Golang
Кодогенерация!
Без предисловий и вступлений, сразу к практики.
Для теории будет отдельное видео: “Что такое gRPC за 200 секунд”
Приятного просмотра!
https://youtu.be/Yf7ZZdrQ7Bc
gRPC + buf.build + Golang
Кодогенерация!
Без предисловий и вступлений, сразу к практики.
Для теории будет отдельное видео: “Что такое gRPC за 200 секунд”
Приятного просмотра!
https://youtu.be/Yf7ZZdrQ7Bc
👍18
Сделал middleware JWT для gRPC и сделал фильтрацию и сортировку для списочных методов, ну типа получить список пользователей. И короче, это заняло часа 2, но это было гораздо проще, чем все тоже самое для HTTP ручек.
Я не говорю что gRPC какая то серебряная пуля, но в очередной раз я понимаю что я евангелист и меня прям прет от чего-то нового и что упрощает рутину.
Теперь будем думать о развитии и развивать gRPC!
Я не говорю что gRPC какая то серебряная пуля, но в очередной раз я понимаю что я евангелист и меня прям прет от чего-то нового и что упрощает рутину.
Теперь будем думать о развитии и развивать gRPC!
👍10🔥1
у кого еще есть сомнения по поводу будущего AI и чему надо обучать своих детей?)