Я 💛 Фронтенд. Node.js фреймворки, или Туда и обратно - Андрей Мелихов

  Рет қаралды 25,830

Yandex for Frontend

Yandex for Frontend

Жыл бұрын

За годы разработок enterprise-приложений на Node.js я использовал Express, Nest.js и AWS-лямбды. У каждого подхода есть свои плюсы и минусы, и все они остаются актуальными, но ни одно из этих решений не стало золотым стандартом, и каждый раз, стартуя разработку нового приложения, мы сталкиваемся с выбором - на чём же нам писать. Пора ли забыть навсегда Express? Так ли хорош Nest.js, как рекламирует его автор, и не пора ли уйти на FaaS-решения?
Больше подробностей на сайте ilovefrontend.ru
Присоединяйтесь к нашему сообществу в TG t.me/yalovefrontend

Пікірлер: 69
@koresh-it
@koresh-it Жыл бұрын
Андрей, где девшахта?
@user-fh6xg9pn3y
@user-fh6xg9pn3y Жыл бұрын
Фронтэндщики в 2022 внезапно обнаружили, что изначальной грамотной архитектуры почти любое приложение превращается в тяжелоподдерживаемый монолит! Сверхтонкий экспресс - самый популярный фреймворк. В результате каждый пилит свой велосипед, большинство пилят плохо, ибо вообще не понимают теории. И абсолютно все мучаются тащить это все в будущее)
@waldemarkunz9173
@waldemarkunz9173 Жыл бұрын
Андрей, спасибо за доклад! Девшахты не хватает! Кружек верстальщиков "Веб стандарты" совсем не замена, но выпуски с Вами слушаю.
@ilyakushlianski6519
@ilyakushlianski6519 Жыл бұрын
Да, хотелось бы тоже побольше про бэкэнд в "Веб стандартах"
@327Spike
@327Spike Жыл бұрын
Спасибо большое, Андрей. Возвращаетесь с вашими видео 😊
@s9219871110
@s9219871110 Жыл бұрын
Вот прям очень мне понравился доклад и особенно вопросы и ответы на них!
@natashkinsasha
@natashkinsasha Ай бұрын
Привет, спасибо за доклад. Прям описал весть мой путь в выборе технологий и рассказал про все боли с которыми и я сталкивался. Когда слушаешь такие доклады понимаешь что это не ты что-то не понимаешь, а все сталкиваются с такими проблемами. Но после лямб я все таки вернулся к несту. Пока надо делать монолит с командой в 4 человека, лучше решения нет.
@K2_PS
@K2_PS Жыл бұрын
Дзякую з Минску! Дужа добра!
@me29_hi8
@me29_hi8 8 ай бұрын
Большое спасибо за труд. Конечно, за один присест такой объем осилить было немного сложно, но в этом и ценность, что вся информация собрана неким экстрактом в одном месте. Лучшая информация, лучшие ролики, без воды, отлично структурирована. Теперь у меня просто нет опции не выучить это. Спасибо!
@alexandrkositsky7698
@alexandrkositsky7698 Жыл бұрын
Спасибо за доклад. Когда-то слушал ваше обьяснение про dependency injection на примере nest, ничего не понял, кроме того что не люблю классы и все что с ними связанно) Как неожиданно видеть что сейчас вы пришли к противоположным вещам типа fastify и knex :)
@ilnuribat
@ilnuribat Жыл бұрын
ахренеть круто рассказал про фастифай, всегда считал его каким-то странным второе - про knex. Мне он нравится, но боялся его тащить в прод) круто)
@vladislavderzhavin2065
@vladislavderzhavin2065 Жыл бұрын
Отличный доклад!
@andreyyastrebtsov4367
@andreyyastrebtsov4367 Жыл бұрын
А слайд "делай проще" подходит для полного новичка в бекенде на ноде? Вообще ниче знаю, но очень хочется начать
@andreyrudin2286
@andreyrudin2286 Жыл бұрын
конец прям порадовал ) ОРМ гавно! сколько ни пытаюсь что-то придумать, не ложится он, реально. Нет, положить то конечно можно, но ты видишь на это, насколько при этом пострадает производительность, ужасаешься, и пишешь SQL запрос. нахер, просто нахер )
@user-xj2xs3mz9v
@user-xj2xs3mz9v Жыл бұрын
Отличный план!
@user-jj6lg5dl7x
@user-jj6lg5dl7x Жыл бұрын
Хороший доклад)
@user-dt6gp4lj1h
@user-dt6gp4lj1h Жыл бұрын
Хотелось бы, конечно, комментарии Тимура Шемсединова...
@vancheloChanel
@vancheloChanel Жыл бұрын
😂
@waldemarkunz9173
@waldemarkunz9173 Жыл бұрын
Думаю он тут с основным полностью согласен будет
@vladcid3938
@vladcid3938 Жыл бұрын
Он говорил тоже самое лет 5-7 назад
@Roman-of9pl
@Roman-of9pl Жыл бұрын
Где девшахта?
@aleksandr2245
@aleksandr2245 Жыл бұрын
крутой чел)
@temoncher
@temoncher Жыл бұрын
Аминь
@andreysakharov6210
@andreysakharov6210 Жыл бұрын
Кажется я слишком давно не смотрел Андрея. Вот к примеру классный ioc пропустил.
@vadimburavlev4773
@vadimburavlev4773 Жыл бұрын
Что будете делать на несте, когда Js декораторы придут? Придется забыть про нест )))
@bukanaka
@bukanaka 11 ай бұрын
Они, разве, уже не пришли?
@vadimburavlev4773
@vadimburavlev4773 11 ай бұрын
@@bukanaka нет
@cyberblogru
@cyberblogru Жыл бұрын
Это как так в fastify нет typescript? о_О
@AndreyMelikhov
@AndreyMelikhov Жыл бұрын
Ну вот так, он написан на чистом js, писать высокопроизводительные низкоуровневые вещи на ts сложно, он не до конца покрывает весь js, да и опасно, можно порушить все оптимизации.
@cyberblogru
@cyberblogru Жыл бұрын
@@AndreyMelikhov а, ну да, typescript же позже .d.ts-ками наложен
@Nikita-hy8vt
@Nikita-hy8vt Жыл бұрын
Про передачу dto фронтам решил так - создаю интерфейс dto, передаю его фронтам. Этот же dto имплэментирует класс валидатор
@promax866
@promax866 Жыл бұрын
А я думал девшахта ща будет
@sergeydev8273
@sergeydev8273 Жыл бұрын
Самое интересное комплексное решение из существующих - это loopback-next, там во многом они ушли значительно вперед по сравнению с остальными
@erkinaltai
@erkinaltai Жыл бұрын
Там вроде поддержка платная? Если приплюсовать жесткость его архитектуры то как то боязно его брать. Мне кажется еще не время "жестких" фреймворков на node.
@aliday9968
@aliday9968 Жыл бұрын
Вернулся в разнорабочие 🤣
@armenchik_dzhan
@armenchik_dzhan Жыл бұрын
ахахахаххахахаахахахаххахахаахахахаххахахаахахахаххахахаахахахаххахаха
@sergeydev8273
@sergeydev8273 Жыл бұрын
Да Господи тот же class-validator позволяет описывать в формате схемы, и замечу, с достаточно удобной структурой
@AndreyMelikhov
@AndreyMelikhov Жыл бұрын
Можно, но зачем писать на фантазийном формате для мёртвой библиотеки если можно взять стандарт и готовые решения?
@edmand46
@edmand46 Жыл бұрын
@@AndreyMelikhov основная библиотека мертвая, но авторы nestjs сделали форк и поддерживают все фиксы в них, так что эти либы поддерживаемые
@AndreyMelikhov
@AndreyMelikhov Жыл бұрын
@@edmand46 о каком форке речь? В зависимостях неста только оригинал
@edmand46
@edmand46 Жыл бұрын
@@AndreyMelikhov nestjs/class-validator и такой же для трансформера
@edmand46
@edmand46 Жыл бұрын
@@AndreyMelikhov они еще не включили их в официальную доку, но у них был ишшьюс о проблеме с данными библиотеками
@andreyrudin2286
@andreyrudin2286 Жыл бұрын
про уволился. скажу что сделали все не так, уволят, поэтому сам уволился. :))) я интервью кажется у Дудя, но не помню про инвесторов в силиконовой долине видел. И они там относятся более серьезно к бизнесменам, у которых уже были фейлы в бизнесе, т.е. те, которые уже разорялись, типа у них УЖЕ есть опыт, и они ошиблись уже в этом, и скорее всего сделали выводы и в этом же месте ошибаться не будут. Понятно, что может быть дальше ошибки, но другие. Все эти ошибки, которые еще не открыты, их еще предстоит открыть. Но суть та же. В IT тоже самое, ты что-то делаешь, сделал одну ошибку, делаешь другим способом, и так пока на найдешь наилучший способ. Хорошо, когда это происходит в большой компании, понятно что это как бы стоит денег, но бизнес идет, деньги на разработку выделяются, понятно что не пилятся новые фичи, но так или иначе часть финансов идет на обслуживание. И на эти же деньги можно делать по другому. В общем зря уволился я хочу сказать :) ты бы наоборот усилил команду своими новыми знаниями. В нашем деле ресерч все таки важная часть работы.
@AndreyMelikhov
@AndreyMelikhov Жыл бұрын
Да это же шутка была, просто так совпало, что захотелось погулять, посмотреть как в других компаниях решают схожие задачи. Сидя на одном месте развиваться гораздо сложнее.
@edmand46
@edmand46 Жыл бұрын
В итоге, мы получаем - чтобы было проще надо отказаться от фреймворков и написать свой нест только с другим DI, валидатором, чтобы было проще новым людям, звучит логично
@AndreyMelikhov
@AndreyMelikhov Жыл бұрын
Нет, взять более простой и быстрый фреймворк (который уже лежит под капотом у nest), валидатор у него ajv из коробки, а в DI можно класть только то, что требует инициализации (а это довольно небольшой пласт). И мы получим простой и понятный код, без магии и неожиданностей.
@erkinaltai
@erkinaltai Жыл бұрын
Андрей вроде не предлагает отказаться от фреймворков, а использовать fastify. Ну а уже над ним пилить свой IoC контейнер или взять готовый.
@AndreyMelikhov
@AndreyMelikhov Жыл бұрын
Я не предлагаю пилить, я предлагаю взять самый простой, без декораторов но с хорошей типизацией. Или даже отказаться от контейнера, если нет ясного понимания выигрыша от его наличия.
@edmand46
@edmand46 Жыл бұрын
@@erkinaltai он предлагает отказаться от неста, в пользу фастифай
@edmand46
@edmand46 Жыл бұрын
@@AndreyMelikhov более простой и быстрый это фастифай вместо экспресса или о чем речь?
@artyomsultanov5204
@artyomsultanov5204 Жыл бұрын
Обосрали express >:(
@waldemarkunz9173
@waldemarkunz9173 Жыл бұрын
Нагажено в самом express, а тут объяснили откуда воняет
@jetsker6388
@jetsker6388 Жыл бұрын
@Станислав Морозов ну а как еще, не в сервисах же все описывать) Иногда можно их использовать. По сути эти гарды, фильтры тот же миделвар
@cdeblog
@cdeblog Жыл бұрын
Обо всём и ни о чем
@PutlerXLO
@PutlerXLO Жыл бұрын
бредятина. Уже и до миделварей криворукие хейтеры добрались.
@yevhenpolishchuk4327
@yevhenpolishchuk4327 Жыл бұрын
русские === нацисты.
@brr3534
@brr3534 Жыл бұрын
Пепа, спок
@yevhenpolishchuk4327
@yevhenpolishchuk4327 Жыл бұрын
@@brr3534 О, а вот и первый наци вылез.
BRUSH ONE’S TEETH WITH A CARDBOARD TOOTHBRUSH!#asmr
00:35
HAYATAKU はやたく
Рет қаралды 23 МЛН
ONE MORE SUBSCRIBER FOR 6 MILLION!
00:38
Horror Skunx
Рет қаралды 8 МЛН
Что такое Render и Commit в React
9:53
Dev Surge
Рет қаралды 2,6 М.
Как мы строим платформу на Nest / Андрей Мелихов
47:47
krd dev / Krasnodar Dev Days
Рет қаралды 42 М.
Все, что нужно знать про Node.js
58:55
Trampoline Meetup
Рет қаралды 23 М.
Я 💛 Фронтенд. Я ❤ Storybook - Семён Левенсон
44:40
Приключения Node.js в продакшене
39:12
Yandex for Developers
Рет қаралды 8 М.
Что такое Node.js?
57:22
TeachMeSkills Школа программирования
Рет қаралды 1,5 М.