Я 💛 Фронтенд. Node.js фреймворки, или Туда и обратно - Андрей Мелихов
За годы разработок enterprise-приложений на Node.js я использовал Express, Nest.js и AWS-лямбды. У каждого подхода есть свои плюсы и минусы, и все они остаются актуальными, но ни одно из этих решений не стало золотым стандартом, и каждый раз, стартуя разработку нового приложения, мы сталкиваемся с выбором - на чём же нам писать. Пора ли забыть навсегда Express? Так ли хорош Nest.js, как рекламирует его автор, и не пора ли уйти на FaaS-решения?
Больше подробностей на сайте ilovefrontend.ru
Присоединяйтесь к нашему сообществу в TG t.me/yalovefrontend
Пікірлер: 69
Андрей, где девшахта?
Андрей, спасибо за доклад! Девшахты не хватает! Кружек верстальщиков "Веб стандарты" совсем не замена, но выпуски с Вами слушаю.
@ilyakushlianski6519
Жыл бұрын
Да, хотелось бы тоже побольше про бэкэнд в "Веб стандартах"
Дзякую з Минску! Дужа добра!
Спасибо большое, Андрей. Возвращаетесь с вашими видео 😊
Вот прям очень мне понравился доклад и особенно вопросы и ответы на них!
Большое спасибо за труд. Конечно, за один присест такой объем осилить было немного сложно, но в этом и ценность, что вся информация собрана неким экстрактом в одном месте. Лучшая информация, лучшие ролики, без воды, отлично структурирована. Теперь у меня просто нет опции не выучить это. Спасибо!
Спасибо за доклад. Когда-то слушал ваше обьяснение про dependency injection на примере nest, ничего не понял, кроме того что не люблю классы и все что с ними связанно) Как неожиданно видеть что сейчас вы пришли к противоположным вещам типа fastify и knex :)
Привет, спасибо за доклад. Прям описал весть мой путь в выборе технологий и рассказал про все боли с которыми и я сталкивался. Когда слушаешь такие доклады понимаешь что это не ты что-то не понимаешь, а все сталкиваются с такими проблемами. Но после лямб я все таки вернулся к несту. Пока надо делать монолит с командой в 4 человека, лучше решения нет.
Отличный доклад!
ахренеть круто рассказал про фастифай, всегда считал его каким-то странным второе - про knex. Мне он нравится, но боялся его тащить в прод) круто)
конец прям порадовал ) ОРМ гавно! сколько ни пытаюсь что-то придумать, не ложится он, реально. Нет, положить то конечно можно, но ты видишь на это, насколько при этом пострадает производительность, ужасаешься, и пишешь SQL запрос. нахер, просто нахер )
Хороший доклад)
Фронтэндщики в 2022 внезапно обнаружили, что изначальной грамотной архитектуры почти любое приложение превращается в тяжелоподдерживаемый монолит! Сверхтонкий экспресс - самый популярный фреймворк. В результате каждый пилит свой велосипед, большинство пилят плохо, ибо вообще не понимают теории. И абсолютно все мучаются тащить это все в будущее)
Отличный план!
Хотелось бы, конечно, комментарии Тимура Шемсединова...
@vancheloChanel
Жыл бұрын
😂
@waldemarkunz9173
Жыл бұрын
Думаю он тут с основным полностью согласен будет
@vladcid3938
Жыл бұрын
Он говорил тоже самое лет 5-7 назад
А слайд "делай проще" подходит для полного новичка в бекенде на ноде? Вообще ниче знаю, но очень хочется начать
Где девшахта?
крутой чел)
Аминь
Кажется я слишком давно не смотрел Андрея. Вот к примеру классный ioc пропустил.
Про передачу dto фронтам решил так - создаю интерфейс dto, передаю его фронтам. Этот же dto имплэментирует класс валидатор
Что будете делать на несте, когда Js декораторы придут? Придется забыть про нест )))
@bukanaka
11 ай бұрын
Они, разве, уже не пришли?
@vadimburavlev4773
11 ай бұрын
@@bukanaka нет
Это как так в fastify нет typescript? о_О
@AndreyMelikhov
Жыл бұрын
Ну вот так, он написан на чистом js, писать высокопроизводительные низкоуровневые вещи на ts сложно, он не до конца покрывает весь js, да и опасно, можно порушить все оптимизации.
@cyberblogru
Жыл бұрын
@@AndreyMelikhov а, ну да, typescript же позже .d.ts-ками наложен
А я думал девшахта ща будет
Самое интересное комплексное решение из существующих - это loopback-next, там во многом они ушли значительно вперед по сравнению с остальными
@erkinaltai
Жыл бұрын
Там вроде поддержка платная? Если приплюсовать жесткость его архитектуры то как то боязно его брать. Мне кажется еще не время "жестких" фреймворков на node.
Вернулся в разнорабочие 🤣
ахахахаххахахаахахахаххахахаахахахаххахахаахахахаххахахаахахахаххахаха
Да Господи тот же class-validator позволяет описывать в формате схемы, и замечу, с достаточно удобной структурой
@AndreyMelikhov
Жыл бұрын
Можно, но зачем писать на фантазийном формате для мёртвой библиотеки если можно взять стандарт и готовые решения?
@edmand46
Жыл бұрын
@@AndreyMelikhov основная библиотека мертвая, но авторы nestjs сделали форк и поддерживают все фиксы в них, так что эти либы поддерживаемые
@AndreyMelikhov
Жыл бұрын
@@edmand46 о каком форке речь? В зависимостях неста только оригинал
@edmand46
Жыл бұрын
@@AndreyMelikhov nestjs/class-validator и такой же для трансформера
@edmand46
Жыл бұрын
@@AndreyMelikhov они еще не включили их в официальную доку, но у них был ишшьюс о проблеме с данными библиотеками
про уволился. скажу что сделали все не так, уволят, поэтому сам уволился. :))) я интервью кажется у Дудя, но не помню про инвесторов в силиконовой долине видел. И они там относятся более серьезно к бизнесменам, у которых уже были фейлы в бизнесе, т.е. те, которые уже разорялись, типа у них УЖЕ есть опыт, и они ошиблись уже в этом, и скорее всего сделали выводы и в этом же месте ошибаться не будут. Понятно, что может быть дальше ошибки, но другие. Все эти ошибки, которые еще не открыты, их еще предстоит открыть. Но суть та же. В IT тоже самое, ты что-то делаешь, сделал одну ошибку, делаешь другим способом, и так пока на найдешь наилучший способ. Хорошо, когда это происходит в большой компании, понятно что это как бы стоит денег, но бизнес идет, деньги на разработку выделяются, понятно что не пилятся новые фичи, но так или иначе часть финансов идет на обслуживание. И на эти же деньги можно делать по другому. В общем зря уволился я хочу сказать :) ты бы наоборот усилил команду своими новыми знаниями. В нашем деле ресерч все таки важная часть работы.
@AndreyMelikhov
Жыл бұрын
Да это же шутка была, просто так совпало, что захотелось погулять, посмотреть как в других компаниях решают схожие задачи. Сидя на одном месте развиваться гораздо сложнее.
В итоге, мы получаем - чтобы было проще надо отказаться от фреймворков и написать свой нест только с другим DI, валидатором, чтобы было проще новым людям, звучит логично
@AndreyMelikhov
Жыл бұрын
Нет, взять более простой и быстрый фреймворк (который уже лежит под капотом у nest), валидатор у него ajv из коробки, а в DI можно класть только то, что требует инициализации (а это довольно небольшой пласт). И мы получим простой и понятный код, без магии и неожиданностей.
@erkinaltai
Жыл бұрын
Андрей вроде не предлагает отказаться от фреймворков, а использовать fastify. Ну а уже над ним пилить свой IoC контейнер или взять готовый.
@AndreyMelikhov
Жыл бұрын
Я не предлагаю пилить, я предлагаю взять самый простой, без декораторов но с хорошей типизацией. Или даже отказаться от контейнера, если нет ясного понимания выигрыша от его наличия.
@edmand46
Жыл бұрын
@@erkinaltai он предлагает отказаться от неста, в пользу фастифай
@edmand46
Жыл бұрын
@@AndreyMelikhov более простой и быстрый это фастифай вместо экспресса или о чем речь?
бредятина. Уже и до миделварей криворукие хейтеры добрались.
Обосрали express >:(
@waldemarkunz9173
Жыл бұрын
Нагажено в самом express, а тут объяснили откуда воняет
@jetsker6388
Жыл бұрын
@Станислав Морозов ну а как еще, не в сервисах же все описывать) Иногда можно их использовать. По сути эти гарды, фильтры тот же миделвар
Обо всём и ни о чем
русские === нацисты.
@brr3534
Жыл бұрын
Пепа, спок
@yevhenpolishchuk4327
Жыл бұрын
@@brr3534 О, а вот и первый наци вылез.