Что нам дают services во Vue?
При разработке сайта или приложения мы используем store. В его модуле мы пишем Actions. Он может содержать в себе запросы на получение динамических данных или на управление через полноценный CRUD. Бывает так, что эти данные нужно получить в другом модуле. Дергать их из хранилища не совсем правильно, поэтому запросы выносятся в отдельные API сервисы и переиспользуются.
С чего начать?
– В корне проекта создаем папку с сервисами (services).
– Внутри создаем сервис Users. Назовем файл apiUsers.js
– Вынесем в него логику запросов к API, например наш apiUsers.js будет содержать методы для получения списка пользователей, создания нового пользователя и его обновления.
Каждый такой файл будет содержать набор методов, связанных с соответствующей сущностью сервиса. Например: getUser, createUser, updateUser, removeUser.
Что нам это даст?
Мы можем эти сервисы использовать в разных компонентах приложения через import. Это позволяет избежать дублирования кода и иметь к нему доступ из любого компонента или хранилища. Сами компоненты и модули стора не несут в себе логику запросов. Они просто используют методы сервисов.
В итоге мы их разделяем. Компоненты отображают данные и взаимодействуют с действиями пользователя. Сервисы нацелены только на получение и отправку запросов по API.
Как часто вы выносите API в сервисы? Обязательно ли это вообще?
При разработке сайта или приложения мы используем store. В его модуле мы пишем Actions. Он может содержать в себе запросы на получение динамических данных или на управление через полноценный CRUD. Бывает так, что эти данные нужно получить в другом модуле. Дергать их из хранилища не совсем правильно, поэтому запросы выносятся в отдельные API сервисы и переиспользуются.
С чего начать?
– В корне проекта создаем папку с сервисами (services).
– Внутри создаем сервис Users. Назовем файл apiUsers.js
– Вынесем в него логику запросов к API, например наш apiUsers.js будет содержать методы для получения списка пользователей, создания нового пользователя и его обновления.
Каждый такой файл будет содержать набор методов, связанных с соответствующей сущностью сервиса. Например: getUser, createUser, updateUser, removeUser.
Что нам это даст?
Мы можем эти сервисы использовать в разных компонентах приложения через import. Это позволяет избежать дублирования кода и иметь к нему доступ из любого компонента или хранилища. Сами компоненты и модули стора не несут в себе логику запросов. Они просто используют методы сервисов.
В итоге мы их разделяем. Компоненты отображают данные и взаимодействуют с действиями пользователя. Сервисы нацелены только на получение и отправку запросов по API.
Как часто вы выносите API в сервисы? Обязательно ли это вообще?
👍13❤5
Пасхалочка в Яндексе
Фиаско думаю, очередной баг в крупном сервисе и давай накладывать клеймо - но нифига.
Покрутил запросы, пагинация при адекватных не кодерских запросах работает отлично, кажется триггером срабатывания такого сценария стало слово "JS", будь он в контексте Vue, React или Angular.
Может и баян, но я так давно не делился с вами постами - что честно сказать соскучился!
На следующей неделе расскажу, почему так часто пропадаю и поделюсь планами на этот год.
Пасхалку можно глянуть тут
Фиаско думаю, очередной баг в крупном сервисе и давай накладывать клеймо - но нифига.
Покрутил запросы, пагинация при адекватных не кодерских запросах работает отлично, кажется триггером срабатывания такого сценария стало слово "JS", будь он в контексте Vue, React или Angular.
Может и баян, но я так давно не делился с вами постами - что честно сказать соскучился!
На следующей неделе расскажу, почему так часто пропадаю и поделюсь планами на этот год.
Пасхалку можно глянуть тут
👏14❤2👍1
Расширяем нашу команду.
Аттеншн, ищем проджект-менеджера aka гуру коммуникаций и планирования сроков, бюджетов и ресурсов.
Собрали все в один ноушен, чтобы вы могли прочитать про наши поиски подробнее.
Если у нас случился мэтч, или друзья/коллеги ищут работу - обязательно напишите Лизе @Eliza_Usp
Have a good evening!😉
Аттеншн, ищем проджект-менеджера aka гуру коммуникаций и планирования сроков, бюджетов и ресурсов.
Собрали все в один ноушен, чтобы вы могли прочитать про наши поиски подробнее.
Если у нас случился мэтч, или друзья/коллеги ищут работу - обязательно напишите Лизе @Eliza_Usp
Have a good evening!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👏3
Ачуметь! Strapi v5 вышла в альфе 9 часов назад
Наверняка вы слышали о страпи из моего доклада или может использовали в своих проектах и его с возможностью собирать админку с API чисто на коленке за пару часов знакомы не по наслышке.
Дак вот, ребята обещали в первом квартале 2024 показать миру v5 и оно свершилось
Помните ту жуткую структуру с вложенностью?
Я уже пробно раскатился локально и глянул - там все стало красивее и приятнее!
Мало того, что апи чище, еще и с коробки нарезает картинки сразу под несколько устройств (может было в latest 4 версии)
Пригодится позже в Nuxt.js, и его модуль явно получит апдейт
Это просто мед, очень приятная новость на ночь и возможность планировать на это чудо лайт-проекты как он станет стабильным
А еще предлагаю быть ближе, собираю с нуля чат
для обсуждений и крутых приятных тем.
Наверняка вы слышали о страпи из моего доклада или может использовали в своих проектах и его с возможностью собирать админку с API чисто на коленке за пару часов знакомы не по наслышке.
Дак вот, ребята обещали в первом квартале 2024 показать миру v5 и оно свершилось
Помните ту жуткую структуру с вложенностью?
"data": [
{
"id": 1,
"attributes": {
"name": "Mint Lounge",
"slug": "mint-lounge",
"price": "p3",
"createdAt": "2021-11-09T14:07:47.125Z",
"updatedAt": "2021-11-23T16:41:30.504Z",
"publishedAt": "2021-11-23T16:41:30.501Z",
"locale": "en"
}
}
]
Я уже пробно раскатился локально и глянул - там все стало красивее и приятнее!
Мало того, что апи чище, еще и с коробки нарезает картинки сразу под несколько устройств (может было в latest 4 версии)
Пригодится позже в Nuxt.js, и его модуль явно получит апдейт
Это просто мед, очень приятная новость на ночь и возможность планировать на это чудо лайт-проекты как он станет стабильным
А еще предлагаю быть ближе, собираю с нуля чат
для обсуждений и крутых приятных тем.
🔥8❤🔥3👍2🤝2
А вот и пятничная годнота!
Если кто хочет на себя примерить роль руководителя - будет информативно 🙌🏻
Можно вопросики кидать в чат канала
Если кто хочет на себя примерить роль руководителя - будет информативно 🙌🏻
Можно вопросики кидать в чат канала
Telegram
Пишу код на Vue.js | Чат
Чат канала о Vue.js, фреймворках и инструментах вокруг него
Автор - @khudyakv
Автор - @khudyakv
❤5🔥2
Forwarded from Cloud.ru
This media is not supported in your browser
VIEW IN TELEGRAM
Встречайте новый выпуск подкаста с Владиславом Худяковым, основателем компании Spot 🚀
На подкасте поговорили про:
😶🌫️ Вызовы, с которыми сталкиваются начинающие СEO
😶🌫️ Стратегии поиска талантов и методы развития компании с нуля
😶🌫️ Ключевые моменты выбора фреймворка и способы развития экосистемы
😶🌫️ Советы для новичков во Vue
🟢 Смотреть на YouTube 🟢
На подкасте поговорили про:
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥21🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
GPT наблюдает за твоим 12-летним опытом работы в айти
Ему просто не приходилось изучать верстку на таблицах, флоаты, конкатенацию и жиквери. Пора бы забыть, но не отпускает.
Интересно, как ИИ определяет какие данные ему не нужны, и в какой период их чистит?
Ему просто не приходилось изучать верстку на таблицах, флоаты, конкатенацию и жиквери. Пора бы забыть, но не отпускает.
Интересно, как ИИ определяет какие данные ему не нужны, и в какой период их чистит?
🫡3😁2
Хэлло, в четверг 23 мая, в 18:30
жду на митапе MSK VUE, где выступаю с докладом про таймлайн анимацию.
Будут интересные доклады, классные ребята и главное - вьюшный вайб!
Присоединяйтесь, буду рад вас видеть и даже продолжить в баре👍
жду на митапе MSK VUE, где выступаю с докладом про таймлайн анимацию.
Будут интересные доклады, классные ребята и главное - вьюшный вайб!
Присоединяйтесь, буду рад вас видеть и даже продолжить в баре
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from MSK VUE.JS News
Всем привет!
Поприветствуйте нашего третьего спикера - Влад Худяков 🎙
Влад давно хотел выступить у нас на митапе и вот, наконец, у него получилось💪
О чем расскажет нам Влад?
👉 РЕГИСТРАЦИЯ НА МИТАП 👈
Поприветствуйте нашего третьего спикера - Влад Худяков 🎙
Влад давно хотел выступить у нас на митапе и вот, наконец, у него получилось💪
О чем расскажет нам Влад?
Все мы так или иначе пересекаемся с задачами по анимации элементов и целых секций.
Легко если это базовое поведение по наведению или циклы. Другое дело - когда нужный результат анимации зависит от ряда параметров, времени, прогресса нескольких элементов и все это меняется динамически.
А если потом это затащить во Vue компонент, изменять из store и даже переиспользовать?
Рассмотрим варианты анимаций, реализацию тайм-лайнов при помощи GSAP. Посмотрим на его плюсы и минусы, а так же альтернативы.
Главное поймем - для каких анимаций достаточно CSS, а когда пора идти за библиотекой.
👉 РЕГИСТРАЦИЯ НА МИТАП 👈
👍6🔥4👏3
Делюсь ссылочками, которые будут полезны вам для погружение в мир таймлайн анимации при помощи GSAP.
Кто не был на докладе прикрепляю ссылку на запись трансляции
Итак:
1) GSAP на уровне ядра очень самодостаточен. Он адаптивный, легко используется во фреймворках и даже понимает WebGL
Читать о ядре
2) Плагины расширяют возможности, делая его не просто станком таймлайнов.
Их куда больше, чем я охватил в докладе.
Смотреть все
3) Мы не должны думать, что это чисто для сайтов. Игрушки по типу angry birds, doodle jump и другие - отлично реализуются при помощи GSAP
Вот отличный пример игры
Больше примеров для наслаждения и желания уже сесть и покрутить библиотеку тут
Напрашивается долгожданный стрим, да?
Кто не был на докладе прикрепляю ссылку на запись трансляции
Итак:
1) GSAP на уровне ядра очень самодостаточен. Он адаптивный, легко используется во фреймворках и даже понимает WebGL
Читать о ядре
2) Плагины расширяют возможности, делая его не просто станком таймлайнов.
Их куда больше, чем я охватил в докладе.
Смотреть все
3) Мы не должны думать, что это чисто для сайтов. Игрушки по типу angry birds, doodle jump и другие - отлично реализуются при помощи GSAP
Вот отличный пример игры
Больше примеров для наслаждения и желания уже сесть и покрутить библиотеку тут
Напрашивается долгожданный стрим, да?
🔥10👍4😁1
Forwarded from Уставший техдир
JEDI-манифест. Принципы работы с новичками
Я давно сокрушаюсь, что на нашем рынке недостаточно работают с джунами, и как следствие мы испытываем проблемы с мидлами и синьорами. И всю дорогу предлагал это изменить, брать больше джунов. Одна команда - один джун. Крайне понятный и простой прием, один управленческий принцип, имплементировав который, мы получим устойчивый приток новых кадров в нашу сферу
Но, потом начинаются справедливая критика: а "как их отбирать?", "как их растить?", "это же мне придется для них искать отдельные джуновские задачи?", и так далее. И вот тут и кроется проблема
Без понимания как с этим жить, естественно, никто не будет набирать джунов, либо, будет сильно страдать, делая какие-то отдельные лягушатники, огораживать их отдельной оградкой, не звать на «взрослые» планирования/стратегии/гильдии (нужное подчеркнуть), а потом будут удивляться, а чо это они у нас не растут?
Короче, к чему я все? Собрались мы с моими уважаемыми коллегами по цеху, которые, как и я, видят в этом проблему, знают как растить и топят за джунов, и задали себе вопрос: а какими принципами мы руководствуемся, организуя работу с джунами?
Так вот, мы собрали 15 принципов работы с джунами и назвали их JEDI-манифест (Junior Engagement and Development Initiative), который выложили на github. Далее мы будем писать гайды, как делать те или иные вещи и развивать методологическую составляющую. Мы очень надеемся, что этим сможем помочь разработчикам, командам и компаниям справится с непониманием и преодолеть этот барьер
Делитесь, ругайте, хвалите, мы очень будем рады любой обратной связи, а если вы разделяете ценности с нами и хотите поучаствовать - присоединяйтесь на правах опенсорса, мы будем рады)
Ну и конечно, я не мог не сделать по этому поводу доклад! В нем я рассказываю о проблеме, как я вижу и о всех принципах выстраивания работы с джунами
https://www.youtube.com/watch?v=zp6wQn1L3sc
Я давно сокрушаюсь, что на нашем рынке недостаточно работают с джунами, и как следствие мы испытываем проблемы с мидлами и синьорами. И всю дорогу предлагал это изменить, брать больше джунов. Одна команда - один джун. Крайне понятный и простой прием, один управленческий принцип, имплементировав который, мы получим устойчивый приток новых кадров в нашу сферу
Но, потом начинаются справедливая критика: а "как их отбирать?", "как их растить?", "это же мне придется для них искать отдельные джуновские задачи?", и так далее. И вот тут и кроется проблема
Без понимания как с этим жить, естественно, никто не будет набирать джунов, либо, будет сильно страдать, делая какие-то отдельные лягушатники, огораживать их отдельной оградкой, не звать на «взрослые» планирования/стратегии/гильдии (нужное подчеркнуть), а потом будут удивляться, а чо это они у нас не растут?
Короче, к чему я все? Собрались мы с моими уважаемыми коллегами по цеху, которые, как и я, видят в этом проблему, знают как растить и топят за джунов, и задали себе вопрос: а какими принципами мы руководствуемся, организуя работу с джунами?
Так вот, мы собрали 15 принципов работы с джунами и назвали их JEDI-манифест (Junior Engagement and Development Initiative), который выложили на github. Далее мы будем писать гайды, как делать те или иные вещи и развивать методологическую составляющую. Мы очень надеемся, что этим сможем помочь разработчикам, командам и компаниям справится с непониманием и преодолеть этот барьер
Делитесь, ругайте, хвалите, мы очень будем рады любой обратной связи, а если вы разделяете ценности с нами и хотите поучаствовать - присоединяйтесь на правах опенсорса, мы будем рады)
Ну и конечно, я не мог не сделать по этому поводу доклад! В нем я рассказываю о проблеме, как я вижу и о всех принципах выстраивания работы с джунами
https://www.youtube.com/watch?v=zp6wQn1L3sc
YouTube
Как выстроить обучающую среду, нацеленную на развитие инженеров
Обучение инженеров — очень непростая задача. Многие считают, что нужно сформировать систему внутреннего обучения, выделить отдельный игровой механизм для джуниоров, создать безопасную образовательную среду. И тогда инженеры будут развиваться.
Однако это…
Однако это…
🔥7❤3
Forwarded from Аня в IT среде обитания
This media is not supported in your browser
VIEW IN TELEGRAM
🔥8❤5
Forwarded from moscowcss (Alёna Siprikova)
Друзья, мы совсем скоро начинаем #moscowcss_26
Ссылка на трансляцию: https://www.youtube.com/watch?v=bPgiOkMyxJQ
Начинаем в 19:00
Адрес:
Яндекс
ул. Льва Толстого, 16
https://yandex.ru/maps/org/yandeks/1124715036
Ссылка на трансляцию: https://www.youtube.com/watch?v=bPgiOkMyxJQ
Начинаем в 19:00
Адрес:
Яндекс
ул. Льва Толстого, 16
https://yandex.ru/maps/org/yandeks/1124715036
YouTube
MoscowCSS 26 x Яндекс, 19 июня
19 июня ждём всех любителей CSS и фронтенда на 26 встрече MoscowCSS в уютном офисе Яндекса и онлайн.
Снова встретимся, послушаем доклады и отлично проведём время с комьюнити 💛
Встречаемся в 19:00 по московскому времени.
Чат для обсуждений: https://t.m…
Снова встретимся, послушаем доклады и отлично проведём время с комьюнити 💛
Встречаемся в 19:00 по московскому времени.
Чат для обсуждений: https://t.m…
👍3🔥1🥰1
Влияет ли безопасность приложения на time to market?
Думаю многие понимают, что деплой веб-приложения на продакшн сервера в крупных корпорациях не проходит через один pipeline
Это определенный выстроенный процесс для контроля установленного продуктом требования к качеству и безопасности.
И если вроде внутри корпорации все понятно, описанный флоу взаимодействия, стек, инструменты, распределены роли - то работа со внешними студиями от части может вызывать негатив и еще сильнее удлиняя этот путь.
Отсюда у студии может быть несколько сценариев, что бы не сорвать релизы и комфортно сработать:
1. Вы на берегу договариваетесь, какие проверенные вами библиотеки будете использовать в проекте и согласовываете. Возможно вовсе отказываетесь от их использования в пользу упрощения процедуры приемки у СБ, но это может повысить затраты на тестирование.
2. Вы внутри выстраиваете процесс CI/CD для проверки безопасности(SAST) вашего кода, что бы подстраховать путь приемки перед релизом.
Если слышите об этом впервые, можно минимально собрать это из библиотеки темплейтов по вкусу и покрыть хотя бы минимум - проверка на стороне корпорации все равно будет, просто шансов сорвать дедлайн и будет меньше.
SAST (Static Application Security Testing) - это метод анализа исходного кода на наличие уязвимостей без выполнения программы.
Многие уязвимости могут возникать именно из-за использования устаревших библиотек или расширяющих поддержку старых устройств.
Все это страховка, но не гарантия. Даже в популярных библиотеках типа axios есть свои приколы, которые могут проявить себя в сжатые сроки. Там нет уязвимости, но есть повод который обязательно развернет и запустит цикл повторно. Отказ от использования сторонних библиотек и применение SAST могут существенно снизить риски.
Важно соблюдать баланс между безопасностью, производительностью и функциональностью, что бы сократить time to market.
Думаю многие понимают, что деплой веб-приложения на продакшн сервера в крупных корпорациях не проходит через один pipeline
Это определенный выстроенный процесс для контроля установленного продуктом требования к качеству и безопасности.
И если вроде внутри корпорации все понятно, описанный флоу взаимодействия, стек, инструменты, распределены роли - то работа со внешними студиями от части может вызывать негатив и еще сильнее удлиняя этот путь.
Отсюда у студии может быть несколько сценариев, что бы не сорвать релизы и комфортно сработать:
1. Вы на берегу договариваетесь, какие проверенные вами библиотеки будете использовать в проекте и согласовываете. Возможно вовсе отказываетесь от их использования в пользу упрощения процедуры приемки у СБ, но это может повысить затраты на тестирование.
2. Вы внутри выстраиваете процесс CI/CD для проверки безопасности(SAST) вашего кода, что бы подстраховать путь приемки перед релизом.
Если слышите об этом впервые, можно минимально собрать это из библиотеки темплейтов по вкусу и покрыть хотя бы минимум - проверка на стороне корпорации все равно будет, просто шансов сорвать дедлайн и будет меньше.
SAST (Static Application Security Testing) - это метод анализа исходного кода на наличие уязвимостей без выполнения программы.
Многие уязвимости могут возникать именно из-за использования устаревших библиотек или расширяющих поддержку старых устройств.
Все это страховка, но не гарантия. Даже в популярных библиотеках типа axios есть свои приколы, которые могут проявить себя в сжатые сроки. Там нет уязвимости, но есть повод который обязательно развернет и запустит цикл повторно. Отказ от использования сторонних библиотек и применение SAST могут существенно снизить риски.
Важно соблюдать баланс между безопасностью, производительностью и функциональностью, что бы сократить time to market.
🔥8🥰4⚡2