@nodejs_ru

Страница 391 из 2748
Aleh
02.12.2016
13:15:52
Подскажите, ORM для Redis — это сильно бред?
учитывая, что redis не очень relational

Дмитрий
02.12.2016
13:16:01
Память ОЗУ тоже не очень же

Котяй Негодяй
02.12.2016
13:16:47
да смысл? В каждой модели написано has_many ModelName или many_to_many и один метод в BaseModel который выполняет оптимизацию всё
То есть, в жc тебе пришлось удариться в callback-hell, чтобы пройтись по вложенным связям из методов моделей ORM?

Google
Aleh
02.12.2016
13:16:53
С++, Java..?
ага, экономия памяти и хаки вместо красивой системы типов

которую потом предложили новые фпшные языки

ну плюсам надо было юзать все, что есть в си максимально также, у жавы таже проблема, маркетинг короче

Дмитрий
02.12.2016
13:17:42
Просто у меня nohm не едет, ряд проблем с ним, я вот думаю, это из-за того, что мы с автором либы только в двоём малость поехали и больше это никому не нужно или как

Aleh
02.12.2016
13:19:09
Память ОЗУ тоже не очень же
ну никто ж для нее не делает orm. В редисе можно ж целый агрегат хранить

Vladimir
02.12.2016
13:19:12
То есть проблема все таки не в ноде, а в ОРМ?

Aleh
02.12.2016
13:19:14
и просто гидрировать в нужный обекът

Сергей
02.12.2016
13:19:35
То есть, в жc тебе пришлось удариться в callback-hell, чтобы пройтись по вложенным связям из методов моделей ORM?
нет промисы конечно (можно было и async/await но тогда было не вариант) но! Либо мне писать подобные запросы/обработки каждый раз либо выносить в метод, но тогда начинается вопрос обработки эксепшенов потому что часть либ юзающих промисы не выбрасывает наружу эксепшен и если что-то пошло не так, ты можешь об этом не узнать, потому что ошибка закралась в код маленькой функции которую ты пробросил в библиотеку чтобы отфильтровать выборку

Котяй Негодяй
02.12.2016
13:19:36
Дмитрий
02.12.2016
13:19:58
Багнутая либа

Ну просто мне надо хранить структуры похожие на объекты, и руками всё писать малость надоело

Google
Klim
02.12.2016
13:20:20
хайлоад

ебаш скл руками

он не сложный

Дмитрий
02.12.2016
13:20:29
Заюзал nohm и поехало, то пустые поля вернет, то ещё что

Klim
02.12.2016
13:20:34
надо быть очень тупым чтобы не всекать в него

Сергей
02.12.2016
13:21:57
он не сложный
да это всё понятно мне бизнес-логику тоже на sql каждый раз писать? или может мне заменить орм на свою реализацию и собирать sql по кусочкам?

Aleh
02.12.2016
13:22:21
ну ты в курсе, что БЛ на средне-больших проектах живет не в ActiveRecord моделях?

они юзаются как dao или типа того

Vladimir
02.12.2016
13:22:44
Бизнес логика должна быть отделена от хранения в идеале

Это антифича рельс

Котяй Негодяй
02.12.2016
13:23:18
нет промисы конечно (можно было и async/await но тогда было не вариант) но! Либо мне писать подобные запросы/обработки каждый раз либо выносить в метод, но тогда начинается вопрос обработки эксепшенов потому что часть либ юзающих промисы не выбрасывает наружу эксепшен и если что-то пошло не так, ты можешь об этом не узнать, потому что ошибка закралась в код маленькой функции которую ты пробросил в библиотеку чтобы отфильтровать выборку
Лол. Так всё, что на колбэках, легко промисифицируется (если ещё не промисифицировано). А в колбэк тебе приходит ошибка, если что-то не так. Если пришла ошибка, реджектишь промис. Профит. Перехват исключений не работает с асинхронными операциями (работает, еслми пишешь async/await). Новичкам всегда рекомендую сначала писать без промисов и asyn/await и переходить на них только тогда, когда они избавятся от callback-hell БЕЗ НИХ (да, так можно).

Aleh
02.12.2016
13:23:36
да это всё понятно мне бизнес-логику тоже на sql каждый раз писать? или может мне заменить орм на свою реализацию и собирать sql по кусочкам?
у тебя есть бизнес понятия, получить последние новости и есть метод findRecentNews(). Его реализация может быть sql, который в базу ходит, может быть в монге они, может в другом сервисе по хттп достаются, твой бл от этого должен быть отвязан

Сергей
02.12.2016
13:23:53
бля

вот почему в рубях заюзать просто DCI для отделения бизнес-логики от всего это просто а в js это КОСТЫЛЬ

Nikolay
02.12.2016
13:24:30
ОРМ для редиса это круто, я вот не нашел в свое время, пришлось пилить все руками.

Сергей
02.12.2016
13:25:06
Сервис-объект и форм-объекты в js ой как удобно реализовывать

Сергей
02.12.2016
13:25:18
Сам не умеешь, что ли?
DCI это ПАТТЕРН!

Котяй Негодяй
02.12.2016
13:25:43
DCI это ПАТТЕРН!
Ок. А JS как тебе в этом мешает? =)

Google
Сергей
02.12.2016
13:26:00
эм

I
02.12.2016
13:27:01
у вас недопонимание

Сергей
02.12.2016
13:27:06
ну например, чтобы сделать в чистом виде надо создать 3 класса, в каждом классе 3 переменные которые будут указывать на соседей, и вызывать методы цепочками, потому что честного способа расширить объект нет

Дмитрий
02.12.2016
13:27:07
ОРМ для редиса это круто, я вот не нашел в свое время, пришлось пилить все руками.
Я почти допилил, но случайно нашёл nohm. В итоге, orm пришлось пилить вокруг него %) То ли лыжи не едут, то ли ещё что, но половину крутых фич из доки я просто не заюзал

Сергей
02.12.2016
13:27:36
Дмитрий
02.12.2016
13:30:11
Vladimir
02.12.2016
13:30:27
> @sovamist потому что честного способа расширить объект нет прототипы?

Сергей
02.12.2016
13:30:30
в руби есть великолепная вещь: модули model_object.extends SomeRole

Vladimir
02.12.2016
13:30:45
нет

Vladimir
02.12.2016
13:30:59
классы вообще особого значения не имеют в js

Object.create() и вперед

Сергей
02.12.2016
13:31:39
Object.create() и вперед
мне нужен объект модели с логикой

а

Дмитрий
02.12.2016
13:31:49
Ето староверы

Сергей
02.12.2016
13:31:51
ну костыль же

Котяй Негодяй
02.12.2016
13:32:09
Vladimir
02.12.2016
13:32:27
Object.assign(model, logic)

Google
Vladimir
02.12.2016
13:32:46
Но это какой то нехороший паттерн

Aleh
02.12.2016
13:32:51
во-во

Сергей
02.12.2016
13:32:55
MVC тоже плохой ))

чего уж

Vladimir
02.12.2016
13:33:21
Что мешает делать logic(model)?

Aleh
02.12.2016
13:33:23
add(some(cool(feature(to(my(old(object)))))));

Дмитрий
02.12.2016
13:33:28
Object.assign(model, logic)
Фабрика тогда уж.

Vladimir
02.12.2016
13:33:42
Фабрика тогда уж.
Декоратор уж

Admin
ERROR: S client not available

Сергей
02.12.2016
13:33:44
ничего так, да))

Котяй Негодяй
02.12.2016
13:33:51
СТОП. Нафига одному объекту наследовать другой объект и зачем им тогда классы?

Дмитрий
02.12.2016
13:34:06
Декоратор уж
Я не читал что тут происходит

Котяй Негодяй
02.12.2016
13:34:07
Не перебор ли?

Aleh
02.12.2016
13:34:21
лол, если ты наследуешь, то модель тонкая?))

Дмитрий
02.12.2016
13:34:24
Но я по прежнему хз о чем вы

Vladimir
02.12.2016
13:34:34
> @ZeroBias Я не читал что тут происходит Ну типо добавление функционал к объекту

Aleh
02.12.2016
13:34:34
типа 100 маленьких классов в наследовании дают маленькую модель? /0

Google
Котяй Негодяй
02.12.2016
13:34:46
Это прототипное наследование
Это я знаю. Но Сергей явно хочет просто скопировать всё к ебеням.

Vladimir
02.12.2016
13:34:47
Как декоратор, но не по GoF

Сергей
02.12.2016
13:35:01
как раз БЕЗ наследования

Дмитрий
02.12.2016
13:35:23
Too high

Aleh
02.12.2016
13:35:29
даже если ты юзам вставляеш в объект

Котяй Негодяй
02.12.2016
13:35:29
как раз БЕЗ наследования
Только копирование, только хардкор?

Aleh
02.12.2016
13:35:35
типа как assign или декоратором

Сергей
02.12.2016
13:35:39
Aleh
02.12.2016
13:35:44
прямо в объявлении класса, то он все равно жирный

Котяй Негодяй
02.12.2016
13:35:48
Копипаста?

Сергей
02.12.2016
13:35:51
Нет

Воот

о чем я и говорю

Котяй Негодяй
02.12.2016
13:36:04
Воот
Всё-таки, копипаста.

Дмитрий
02.12.2016
13:36:07
прямо в объявлении класса, то он все равно жирный
Он не жирный, у него просто кость прототипная

Сергей
02.12.2016
13:36:07
бля

Всё-таки, копипаста.
ruby: target.extend Role

ни копирования

ни копипасты

ни наследования

js -> сосет

Страница 391 из 2748