sequelize - по-мудацки описывает схемы, нет желания работать с таким высером. typeorm - масса негативных отзывов, забагованное говно, которое никто не фиксит, я это на прод не понесу.
Такие отзывы об проф.либах с предыдущим опытом на пыхе. Как в поговорке,в чужом глазу щелку видем,в своем бревно не замечаем.
А в чем проблема с схемами? Можешь пример показать?
Я был вынужден писать на пхп, потому что мне за это деньги платили. А теперь не платят и я пишу на чём сам хочу. К чему это?
Неудобно и страшно, относительно аналогов
Ну как разработчик может быть профессионалом если он отказывается от личного роста ради временных средств.
Ну можно пример? Мне лично,очень удобна секвалайз,классные связи,аля oneToMany,manyToMany,и т.д.
https://sequelize.org/docs/v6/core-concepts/model-basics/
Так вполне удобно как по мне,что не так?
Ну а по мне - это страшно и неудобно. Каждому своё
Ну я так схемы описываю,если очень банально. Если нужно то могу показать подключение связей. module.exports = function (sequelize, Sequelize) { const best_sellers = sequelize.define( 'best_sellers', { id: { type: Sequelize.INTEGER, autoIncrement: true, primaryKey: true, allowNull: false, }, _json: { type: Sequelize.JSON, }, actual:{ type:Sequelize.BOOLEAN, } } ); return best_sellers; };
Но я пришел из плюсов,и для меня в ноде все очень удобное и понятное,поэтому тут больше вкусовщина
Тайпскрипт пробовал?
Да,но это все равно сильно проще чем плюсы,для людей там проблема с джейнериками встает,когда в плюсах повсеместно используют темплейты и это знают студенты буквально любого вуза первого курса. Сейчас к сожалению проект без ТС( Но в тс есть и свои моменты,которые я немного не понимаю,буду просить что бы мне объяснили еще.
Вот большая какая-то структура. Если где-то внутри сделать опечатку, то нода ничего и не заметит даже, это улетит на прод, затем рандомно поймается баг, затем двое суток уйдёт на то, чтобы его поймать. В тайпскрипте такой проблемы нет. Я не очень понимаю, зачем люди любят страдать. Или у них в глаза встроенные парсеры и они на лету видят все опечатки. А главное, что сразу наизусть помнят, как должна быть описана такая структура. Либо обожают при каждом чихе бежать перечитывать документацию. Вот поэтому мне не нравится ни голый жс, ни тем более вот такие нагороженные непонятки в нём, как у секвелайза
с тс есть минусы, иногда ты тратишь кучу времени на вывод типа или на сужение типа из юниона состоящего из 3х разных интерфейсов, плюс наличие тс, не спасает тебя от ошибок. А проблема с опечатками решается тестами, не вижу проблем писать тесты, когда ты один работаешь
Спасает от 99% ошибок. Тесты пробовал писать, не очень понял прикола пока что. Разве что при TDD это полезно.
Почти никто не пишет true negative тестов, да и качество тестов сложно контролировать. ТС с этим справляется лучше
Эти 99% - это очень индивидуально. Тс спасает от опечаток, упрощает вход в проект и позволяет лучше контролировать что пишут джуны (если джунов на проекте нет, этот пункт неактуален). Но он никак не спасает от плохой архитектуры, от неправильно выбранных структур данных и алгоритмов. А эти проблемы, как мне кажется, актуальнее. Опечатки поймают тесты или банальный запуск, а если тестов нет - вылезет баг при тестировании или на проде :) Минусом с тс идёт усложнение, его баги, отсутствие спеки, и, возможно самый опасный пункт - ложная уверенность части разработчиков, что тс спасает от ошибок. Но правда в том, что когда код выполняется, никакого тс нет, и никаких гарантий он давать не может Я думаю что если так сильно хочется статической и/или строгой типизации, стоит смотреть в сторону других языков и платформ: шарп, котлин, и т.д. Но ты там вроде микросервисы хотел пилить. Для микросервисов голый js очень хороший вариант. Сложность каждого микросервиса должна быть не очень высокой, кода не много, и простой и удобный js отлично укладывается в эту концепцию
Обсуждают сегодня