Node.js and GraphQl: what should be the modern server in 2022?
Vložit
- čas přidán 18. 08. 2022
- Do you want to live differently? Learn differently! Join the iSpring Institute and immerse yourself in your career from your freshman year.
More about the training program and recruitment rules
🔹 Website - clck.ru/scARc
🔹 Film about the team and the mission - • Институт iSpring | про...
~~~~~~~~~~~~~~
Hey Ho! Graf Egor is in touch ✌️Currently, there are many server solutions, from Google and Microsoft to OpenSource teams. Everyone offers their own unique solution, but how well do they correspond to reality? In today's video, I will talk in more detail about GraphQl, analyze its pros and cons, and also try to answer the question: what should a modern server be like in 2k22?
______________________________
EGOR ON THE INTERNET:
🔹 Website - malkevich.com/
🔹 CZcams - / egormalkevich
🔹 Instagram - / ubogew
Support Egor $$$:
🔸 Become a sponsor - / @yamalkevich
🔸 Buy clothes in the store - / @yamalkevich
🔸 Etherium - 0xD89aa0C3871fa5AC93e261acD11d53e026F39a46
______________________________
#egor #ityoutubersru #json - Zábava
Вау, спасибо огромное Егор, как раз начал разбираться с qraphQl
Качество видео 🔥🔥🔥🔥
Сегодня в ролике:
00:00:00 Что будет в ролике
00:03:38 Интро iSpring
00:05:10 Кто и зачем делает бэк? Кто заказчик.
00:12:46 Инструменты разработки
00:21:19 Требования к серверу, на самом деле.
00:29:54 MVC vs REST vs GraphQL
00:55:37 Про GraphQL
01:06:19 Пост скриптум
Очень много полезной информации! Спасибо!)
Спасибо за видео!
Давное не смотрел твои ролики. Теперь не понимаю почему.
На столько ясно и понятно мало кто у меет рассказывать! ))
Большое спасибо за такой обзор!!
Очень информативный и кайфовый видосик.
Спасибо, Егор.
Спасибо за лекцию! Два слова о генерации типов, встроенные в apollo инструменты генерируют типы и код из схемы, есть еще и другой подход - генерировать схему из типов, возможно кому-то покажется немного чище, библиотека называется typegraphql
Спасибо за твои стримы. Хотелось бы послушать твое мнение об инструментах для кроссплатформенной мобильной разработке. Спасибо!
Годнотища, спасибо Егор
Егор, давай больше контента! хорошая подача!
Начало годное, смотрим дальше
Пушка!👍
Хотелось бы от тебя видеть не только теорию но и практику на реальных примерах)
Отлично !
Тема интересная, с ходу лукас:)
за час подтянул рукава 42 раза.
Так приятно на первой минуте, когда используешь Vite/Rollup, GraphQL, Zustand
Егор, пушечка!!
Классное видео, только мало что понял) подскажи плиз, с чего начать изучение/использование gql?
как же орнул с Егора в рекламной вставке))
Хотелось бы услышать более подробно про Apollo Client v3
Что плохого в ОРМ в java? Взять Спринг бут, можно написать контроллер и все маппинги в базу за 15 минут, т е это не долго, можно взять jooq и автосгенерить сервисы по схеме базы данных. Что касается graphql, то создатель graphql говорит, что graphql не очень хорошо для сервис ту сервис коммуникаций, в этом случае рост или grpc подходят лучше. К чему все это? К тому, что везде есть трэйдоффы.
Супер контент. Я на низком старте в ноду, и чет меня слово GraphQL отторжение какое то вызывало. Явная предвзятость непонятно к чему. Спасибо, что её развеял и зарядил на позитив и уже желание хорошенько погрузиться в это и во всем разобраться
вернулся в код наконец-то 🤓
Твои видосы - услада для ушей 🙂
Vite (French word for "quick", pronounced /vit/, like "veet") - инструмент для разработки (аналог всяких vue-cli, etc)
Хай, Айхорни! Красава! Вот сейчас на проекте имплементирую,прямо во время выпустил видос. Сам понял что да,куча нового появляется но эта фигня целая система,многослойная но скока фишек,скалабильности
Видос потрясающий как с точки зрения стендапа,рассуждений,следования и содержания! Спасибо!
Про старые технологии - согласен. Тот же Express поддерживает версию аж NodeJS 0.10, и естественно, не имеет всех более-менее новых фишек. Тех же стримов на чтение/запись файлов
Егор, лайков больше чем 200. Сделай ролик с бест праксисами при подготовке Graphql и Nestjs
Пишу апи на apollo-gql + ts + codegen больше двух лет. Полностью со всем согласен, назад на rest не охота :)
Очень крутой как обычно контент у тебя!! Одно напрягает - очень часто проскакивают эти движения руками\пальцами("аля зайчьи ушки" :) ) Такое чувство, что настолько часто это использовал, что оно уже к тебе приелось и переросло в этакий нервный тик\нервное заболевание.. Прекращай, а то уже образовалась спонтанная привычка постоянно делать эти движения, выглядит стремно.
самое ужасное когда люди услышали что gql это круто и начали использовать но без всей магии gql. А новые люди которые все это видят и раньше никогда не работали просто начинают хейтить gql.
Так и есть. Многие пытаются на графе построить api - аналог REST. Что всю магию убивает на корню)
С графом надо мыслить по другому, что не всегда сходу получается.
Но как только 'догоняешь', строить и модифицировать api становится проще на порядок.
GraphQL прекрасен!
Говорить, что GQL не 'торт' - могут только те, кто его реально не щупал в более, чем двух проектах с api для всевозможных устройств. Плюс не испытал дзен от его шикарных subscriptions, deffer и autodoc. А если еще стандартизировать обработку ошибок, то вообще цены ему не будет!
Использовать его надо там, где он реально к месту. И его преимущества на порядок перевешивают недостатки.
После продолжительной работы с ним, возиться с REST очень тяжело и муторно.
👍👍👍
нa удивление нaшел много полезной информaции :)
🚀🚀🚀
Крутяшка
Так для справки: As of Apollo Server 3, this package supports Fastify v3 only. То есть вышедший 8 июня fastify 4 еще не поддерживается, печаль
К разговору о больших legacy системах, они как раз часто написаны на чем-то отличном от js, например, php или java. Ходить там напрямую в БД минуя всю логику и фильтры самой системы никак нельзя! Как приделать REST на конце, более или менее понятно (будет доступно только что можно и настолько это позволяет сама система), а как тут приделать graphql (повторюсь прямого доступа к БД нет и не будет)?
Туда, куда вы приделываете REST, туда же приделываете и GQL.
Хера!!!!!!!!!!!! Йошка и до Егора добралась
работать с GQL, openAPI-gen и Typescript все еще очень больно (думаю, что с обертками аля Sofa тоже), т.к. типы отдает он плохие.
Но это все еще отличный способ работать с бэкендами, написанными не на TS
Почему я все еще не использую graphql? Все очень просто у меня нет своей компании
Спасибо за видео)) Можете пожалуйста посоветовать технологии для создания блога со статической генерацией и headless CMS. Сейчас разбираюсь с Next.js и Sanity, может у кого то будут совету по этому стэке или рекомендации по другим))
Какую задачу решаешь? Напиши в подробностях, попробую ответить. Если ответить выжимкой: с фронта есть и инструменты с подходом из Jekyll (Hugo, 11ty и тд), а есть генераторы статики по типу Gatsby и Next.js и появляются новые, умеющие и то и то, например, Astro. На бэкенде вообще неоднозначно, есть и классические блоги с апи (Ghost, WP), есть и облачные Sanity, Strapi и тд, и есть ещё пачка решений, которые можно описать в целом как "headless cms", но фич так много, что надо разбираться с каждым. А ещё есть генераторы апи по схеме БД (hasura и тд, много подобных), но это уже всё же другая история. Ну и упомяну, что ещё есть решения сильно проще - просто html + js, а в качестве сборщика Parcel, это если никакой бэкенд не нужен, и все тексты вбить прям в код (или в отдельные страницы, есть поддержка MDX)
@@xdFOrfq8VVH6j5kXAh Привет, надо сделать блог для учителя английского языка, вывод статей, на категории, пагинация и поиск. Решения на чистом html + js и сборщике не подходят так как он не разбирается в коде. Я сейчас решил делать это на Next.js для генерации статики и Contenful для хранения данных (так как у них можно делать 2 миллиона API calls).
@@artemodiyko241 под такую задачу любое решение пойдёт, но если брать облачный сервис, нужно следить за лимитами. Next.js - ок, если знаешь где и как его потом хостить или если планируешь сгенерировать статику для размещения вообще на любом хостинге или CDN
@@xdFOrfq8VVH6j5kXAh Спасибо за ответ)) Я планирую на Vercel хостить.
Привет, про фронтенд рассказывать будешь? Было бы интересно послушать
Буду
Кстати, Егор, я бы подумал насчёт того стоит ли продолжать работать с тётями и кузинами, они зачастую любят говорить что знают все технологии и языки, а на деле являются Project manager'ами и стимуляторами лишь,.. сам я уж столько раз сталкивался с этим..
Благодарю за то что говоришь о таких важных инструментах как
Supabase
Glide
ServerLess
Studio Appolo
GraphQL Tools
Envelop
The Guild GraphQL
Code Generator GraphQL
GraphQL Config
Apollo
ты чувак от бога
давай доклад про федерацию !)
Как насчёт безопасности? Как решать?
в ролике есть, настраивается через access - посути мапа с правами
А потом залетают квантовые компьютеры, которые ускоряют все современные алгоритмы, сети основанные на квантовой телепортации в которых передача данных мгновенная, и языки которые взаимодействует со всем этим, обгоняют все существующие технологии во всем. По итогу все учат хайповый Q#, и получаем тонны квантового говнокода, который аннигилирует тебе ноги с определенной вероятностью и, читая который, тебя постепенно затягивает в сингулярность и на этом заканчивается программирование.
P.S. Спасибо за ролик)
Супер
Ну все, придется "бест рецепты" делать. над же это дело как-то завернуть на практике
я так же за GraphQLон на много круче чем rest, всем советую юзать, он упрощает общение с сервером .....
А для vue js есть? И нормально ли использовать graphql для vue
все есть graphql это всетаки апишка своеобразная
@@yamalkevich спасибо, и можно пожалуйста ответ на второй вопрос. Нормально ли будет использовать для vue? Или луче рест и vuex
@@yamalkevich не хочу показаться наглым, просто хотел еще узнать, пишу свой проект и планирую использовать grahpql, мне лучше использовать react или vue, имею ввиду где лучше продвинут? Или это не имеет значения.
Хотел прыгнуть по таймкодам, а тайкодов нету)
Это веселый парниша из интервью про ноду у бороды?
Да
За ВКонтакте лайк 👍🏻 🤣😂🤣
Как впечатления, кстати? Нравится?
Всё круто и космолётно звучит, но тема тестирования не раскрыта(
грусть
ой ой ой сначала визжали про недостаток людей в ит,а теперь про то что конкуренция ну совсем атас.. определитесь =)
а есть такой же заряженный чел как ты, но только по ux дизайну? Было бы здорово
Думаю есть
@@yamalkevich who issss
@@tekiero IT синяк
Ты сравнил ПО Facebook с ПО для больниц? Чел...
5:50
Проблема аполло студии в том что она платная…
С библейской apollo это конечно крутая штука, НО вместе с nestjs, просто гемор. Столько всего лишнего что может устареть.
Я даже не смог организовать загрузку файлов, придется через старый рест заливать котиков
Загрузка файлов, это не проблема Неста, а проблема GraphQL в целом, но в несте она например легко решается подключением одной либы. Ну и никто не мешает комбинировать rest с graphql
За заеб... отдельное спасибо!
Сколько там еще лайков нужно для видео про конфиг GraphQL?)
ахаха :D
Возьмите Nhost + hasura + graphql - и вот вам аналог яндекс такси за неделю
http2 только не подвезли)
Не видео, а золото. Автор доставляет не рутинным сленгом и сам graphQL часто вкупе с Nextjs упоминается
а вот про php обидно было
Где, я прослушал?
@@leosv0 23:33
симфонисты такие а чё, всмысле
Сколько тебе заплатил facebook за рекламу GraphQl ?
Какая твоя дата рождения🙏
28.04.1992
@@yamalkevich Большое спасибо, я интересуюсь нумерологией, и теперь ясно почему ты такой красивый и умный. Если хочешь можешь удалять мой и свой комментарий.
А если я родился 02.12.1998 у меня есть шансы на успех?
@@TheSky5028 нету шансов
@@oliabarabolia то есть выше моей текущей должности тех лида не получится подняться?
Apollo 🚀 go to the moon
насколько я понял вся эта магия пляшет только если сервер на node js? если нет, то обломись!
нет не обязательно
@@yamalkevich Тогда наверное я мало что понял про "магию"... ;( Мне показалось, что вся прелесть наступает, когда клиент и сервер оба на js, плюс сервер в части graphql может сам лазить в БД и "забирать там данные по всякому". При этом весь legacy-код лежит себе в сторонке и никак не мешает...
Просто я сам phpшник в плане сервера, много работаю с уже существующими системами, где часто удается написать свой код (но опять же на php) "немного с боку", но далеко не всегда можно сразу пойти в БД. Чаше приходится дергать какие-то "кишки" уже имеющегося решения... Про сам graphql только что-то слышал. Понял, что это только для фронта, хотя есть библиотеки и для бэка, например, того же php. И опять же, это дает фронту решать ряд бизнес-задач напрямую минуя бэк, с чем я точно не согласен... Все критические бизнес-процессы должны быть реализованы (или продублированы в крайнем случае) только на бэке, т.к. "все что снаружи" неконтролируемая и враждебная среда!
@@dmitryivanov6812 , вы не совсем поняли суть. GraphQL никак не связан с бизнес-логикой, работой с БД и не зашит под фронт. Это всего лишь схема общения клиент/сервер. Язык по сути. И написаны уже всевозможные либы, интеграции, автогенерации и прочее под все платформы, ЯП и т.д. Берешь и используешь.
Можно не трогая легаси, постепенно подключать GQL.
Это уже устарело сейчас актуально gRPC
Мне кажется что на протяжении всего видео пахнет немного сектантской идеей о том что Facebook c GraphQl приносит что-то новое и задаёт какие-то стандарты в индустрии. Абстрагировать технологии дальше чем есть сейчас тупо нет смысла, при желании и компетентном планировании почти любой проект можно сделать за неделю. Но планирование всегда проблема, поэтому у нас и существуют бесконечные дейлики, ретроспективы, груминги, тимбилдинги итд. Почти в любой крупной компании ( на самом деле абсолютно во всех что я видел ) инженер тратит в лучшем случае полтора-два часа в день на фактическую разработку, для 95% существующих проектов именно это является сдерживающим фактором в плане сроков.
Для действительно интересных и необычных проектов, проектов которые могут что-то изменить, ситуация в общем-то обратная. Архитектура и планирование как правило на уровне, а вот идеально подходящих решений всё равно нет, наговнякать рестапи из микросервисов на модных фреймворках уже не подходит ( хотя казалось что это хорошая практика ). Важна буквально каждая миллисекунда процессорного времени и каждый байт в базе данных, для таких задач приходится искать специальных людей, а в результате всё равно получается говно, потому что невозможно спрогнозировать куда это всё будет двигаться.
А то, как магазин веганских трусов для LGBTQ+ написанный за 4 дня будет обрабатывать запросы, мне абсолютно фиолетово, да в общем-то и самому магазину тоже.
Андроидный коллайдер, хехе))
Нахер этот graphql нужен, это говенный хайп. Свой кастомный rest api лучше этих десятков говенных библиотек для дцп
Ох и инфоцыган 😅 Но балалайку продал 👍
трындишь много
Чувак одну треть видео ругает инфоцыган, хотя сам во время рассказа оперирует исключительно эмоциями, "своим виденьем" и ощущениями. Вступление настолько поверхностное, что позволяет строить любые взаимосвязи, рассуждения и выводы. Вторая часть видео слабо связана с первой, можно описать как "Вот раньше люди мучались и разрабатывали через боль, а вот GraphQl, он революция во всем! Если у тебя не получается, то ты просто дурак, мало стараешься, возьми библиотечку.". А ну и кликбейтовый заголовок. Ощущение действительно как от инфоцыгана(
Сарказм в видео не раскрыт
@@yamalkevich таков сарказм значит
гайз, перед вами инфоциган классический, который не понимает того, о чём он говорит, просто сплошная каша из базвордов и лелеяние технологии, с которой довелось поработать, надеюсь вам хватит мозгов почитать нормальных авторов и сделать свои выводы
Согласен 👍