Andrey 😼
Для меня удобство - вполне себе киллер-фича
Andrey 😼
Нервные клетки не восстанавливаются
Sergey
удобство слишком субъективный параметр
Vsevolod
лол, если запись транзакционна, то всё ок будет но если у тебя несколько селектов, то тут уже всё грустно
С учётом того, что у этого говна хуки не транзакционны тоже - реально, я понял, что мне надо переходить на другое, причем срочно.
Dmitrii
для меня удобство в ноде и коа, что я могу точно по своимпотребностям поставить нужные модули, и не единым больше, а потом по быстрому свитчнуться с REST например на graphql или вебсокеты, без танцев с бубном
Evgeny
Для меня удобство - вполне себе киллер-фича
Удобство не помнить что ты исползуешь в проекте?
Andrey 😼
удобство слишком субъективный параметр
Поэтому я и обозначил интересные мне критерии :)
Andrey 😼
Удобство не помнить что ты исползуешь в проекте?
Как раз я помню что использую в проекте, удобство из каждого контроллера ручками модели не реквайрить
Evgeny
сделай обёртку которую будешь реквайрить один раз
Andrey 😼
Чем плох автолоад?
Sergey
для меня удобство в ноде и коа, что я могу точно по своимпотребностям поставить нужные модули, и не единым больше, а потом по быстрому свитчнуться с REST например на graphql или вебсокеты, без танцев с бубном
согласен я когда пишу любой сложности бэк на ноде, трачу время на сетап, причем под каждый проект всегда разный сетап распиливаю на разные слои и живу отлично по этой причине я не люблю loopback, sails и т.д. они приносят кучу своего и мне приходится под них подстраиваться это совсем не хорошо, когда прекрасно знаешь как лучше разрабатывать в конкретном случае
V
экспресс саме оно
Andrey 😼
Кажется, я быстрее заказчика на рельсы уговорю, чем услышу хоть один подходящий фреймворк 😹
Sergey
Чем плох автолоад?
тем что он не явный засирается глобальное пространство я когда пишу на ноде, знаю, что есть всего несколько глобальных объектов и могу с уверенностью писать const anyThing, и знаю, что будет всё хорошо а если я могу получить ошибку или ещё хуже опечататься и получить неожиданные результаты, то это настолько плохо, что описать словами невозможно нахуй глобалы
Vsevolod
О, а давайте за acl и row-based security поговорим, кто делал, плюсы, минусы, подводные камни, что брать?)
Sergey
Чем это плохо?
ты троллишь?
Evgeny
Нет походу
Andrey 😼
Ну засрал я глобальное пространство, о боже, шестью моделями
Andrey 😼
Земля от этого остановится?
Vsevolod
Чем это плохо?
Тем, что жс не является статическим языком, и ни одна статическая валидация этого не обнаружит
Sergey
Земля от этого остановится?
после тебя, людям этот говнокод ещё поддерживать
Andrey 😼
V
такое ощущение тчо ты по 10 контролеров\сервисов в день соаздаешь
V
что тебе автолоад это что-то даст
Ivan
@sergeysova не обязательно загружать модели в глобальное пространство. Можно использовать DI контейнеры например
Dmitrii
щас раскрою секрет наверное, кто мешает зарекварить модели один раз при инициализации и добавить их как свойство объекта app? который потом доступен в контексте любого запроса, не засран глобал и не надо реквайрить в каждом файле
Evgeny
Ага, потом еще раз найдут и еще раз скажут
Dmitrii
Потому что никто в контроллеры не пробрасывает app?
он всегда доступен в контексте запроса
Andrey 😼
Vsevolod
О, вспомнил. Я такие "глобалки" пихаю в config
Dmitrii
мне удобно
Sergey
я пишу контексты, тонкие контроллеры и модели вообще не вижу проблемы в реквайре моделей в конкретный файл
Vsevolod
И дальше через импорты подрубаю
Ilya
autoload пишется на коленке в жс тащемта
Ilya
если обхекты запиханы в неймспейс правда
Vsevolod
Проблема бутстрэппинга заодно решается, и даже с rolling restart можно потом при желании пошаманить
Ilya
ну или классы
Ilya
геттер переопределяешь и опа - автолоад
Sergey
нода разруливает отлично (если конечно не хотрелоад)
Ilya
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty
Dmitrii
и в чем проблема?
ничего нода не разруливает
Таймураз
Знаете, чем глобалы плохо? Глобальный объект может быть вызван ранее, чем он будет инициализирован
Vsevolod
Es6 модули разруливают
Ilya
прогрммер вполне разруливает. я ленивую загрузку классов делал
Ilya
проблем нет
Dmitrii
пруфы ))
какие пруфы? сделай два файла и зареквайри друг в друга будет пусто
V
до сих пор не понял зачем нужен автолоад классов
V
моделей*
Таймураз
Ilya
Object.defineProperty(o, 'b', { get: function() { return bValue; }, set: function(newValue) { bValue = newValue; }, enumerable: true, configurable: true });
Ilya
так то список классов держать это да
Andrey 😼
моделей*
Бесит пелена реквайров в каждом контроллере
Dmitrii
Ты про Es6 imports или нодовский коммонжс?
комон JS, в ноде импорты не поддерживаются же пока что
Andrey 😼
Ilya
автолоад
Evgeny
роргм
Ilya
это удобно
Таймураз
Бесит пелена реквайров в каждом контроллере
Пелена реквайров явно показывает, что есть в модуле, а что- нет
Ilya
ггг
Таймураз
Я сдаюсь, короче
Таймураз
Все так ищут драные фреймворки, что не задумываются, что на ноде охуенно кодить и без фреймворков
Ilya
правда приходится согласовывать формат модулей чтобы отдать классы