sim3x: не, вы предлагаете использовать "вычисляемое поле" вместо хранения конечного значения. Если злоупотреблять вычисляемыми полями то в итоге может накопиться чрезмерная нагрузка.
Если проект нагруженный, то нужно дважды подумать чтобы взять этот подход.
А этих проблем нет, если делать правильно.
> Или можно помучаться с локами записи
> Или можно поиметь проблем при race updates
> Если сумма по балансу может привести к тормозам, то ето дааа
Если у вас в проекте одна значимая колонка, то можно расслабится, а когда "актуальный объект" собирается из 10 таблиц с кучей джойнов (там не только баланс, но и другие значения) то тормоза уже заметны.
Кстати под колонку active:bool вы тоже порекомендуете отдельную таблицу?, ведь для неё тоже можно организовать локи и race
> Скорее всего, результат вам придется в нодовском коде ручками разбирать на части
Без разницы aggregation framework или нет, нужно будет дублировать фильтры в коде и базе особенно когда одни и те же документы попадут в разные выборки.
А ещё все это дело может работать гораздо медленнее т.к. из-за $or монга может переключить индекс на fullscan
Михаил Макаров: В ангуляре вас никто не заставляет тащить логику в верстку, каждый разработчик сам решает как ему использовать, ангуляр просто дает возможности. Так же возможно вы называете логикой то, что логикой не является (а является представлением для конкретных данных).
Фантастика, как простые вещи можно сделать на столько сложными...
В alight я просто взял компонент из атрибута и положил в шаблон: https://jsfiddle.net/lega911/pv0aysqc/
kocherginji: Если у вас есть отдельный дизайнер + верстальщик, то можете делать с нуля. Мне как разработчику нет на это время, bootstrap ускоряет разработку и выглядит не так уж и плохо.
Для большого проекта без разницы Angular 2 или что угодно другое новомодное - все устареет через 3-4 года и далеко не факт, что можно будет легко обновить (сюда же экономический вопрос).
Например 4 года назад самым новомодным был Angular 1.1, и простой миграции на 1.6, который уже родился устаревшим, нет.
Вообще каждые ~2 года взлетает новая технология для фронденда, так что ждите что-то в ~2018, после чего angular 2 (angular 4 и 5), react и vue.js будут старьем.
А проект нужно делать уже сейчас, поэтому лучше брать то что вы умеете хорошо "вертеть".
Конкретно Angular 2 не айс, конечно он лучше чем приложение на jquey/knockout/backbone, они много косяков "пофиксили" по сравнению c angular 1, но и привнесли много проблем, + какие-то простые вещи решаются через адские костыли, сами его не используют (т.е. фреймворк построен на теории, а не на практике), непонятно почему гугл их кормит.
Но для нового проекта можно взять, а для "расширения" существующего проекта лучше что-нибудь встраиваемое.