Содержание
- 2. Постановка задачи Состояние системы Модель А + Модель B + Модель C Требуется просматривать состояние "до"
- 3. Варианты решения Inline code Callback before_save, after_save Observer paper_trail, act_as_versioned Decorator method_decorators Aspect aspectr, aquarium
- 4. Inline code save_before( a, b, c ); change( a, b, c ); save_after( a, b, c
- 5. Callback before_save :save_state_before after_save :save_state_after Сохранение состояния 1 модели (не группы) Дополнительный код в моделях
- 6. AR::Observer: обычная реализация class UserObserver def after_save(user) … end end Сохранение состояния 1 модели (не группы)
- 7. AR::Observer: реализация через gem class User # команда подключения функционала гема has_paper_trail # acts_as_versioned end Сохранение
- 8. Decorator class UserService +Log_user_state def approve(user_id) User.find(user_id).approve() Billing.add_user(user_id) Complaint.scope_user(user_id).each(&:close) save! end end Нужно много различных декораторов
- 9. Aspect Кто знает, что такое АОП?
- 10. Aspect AOP Aspect Advice Join Point Программа … … user.set_role("admin") … … Aspect class UserAspect advice
- 11. Aspect class Changelog watch UserService, [:approve, :disapprove], { state_before: lambda{ |user_id| … }, state_after: lambda{ …
- 12. Выбор AspectR (2002) Aquarium - gem install aquarium
- 13. Практика Aquarium мощный слишком Упрощение интерфейса более жёсткие требования обработка ошибок спокойный сон после release
- 14. Откат в жизни модератора Детальная трассировка изменений У меня все ходы записаны (с) 12ст Легко откатить
- 15. Ссылки http://bit.ly/cR400e - AOP @ wikipedia http://bit.ly/15q8bT - Decorator @ wikipedia http://bit.ly/It8d7l - method_decorators http://bit.ly/KXu9ZA -
- 17. Скачать презентацию









![Aspect class Changelog watch UserService, [:approve, :disapprove], { state_before: lambda{ |user_id| …](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/420239/slide-10.jpg)




Презентация на тему Семейство Зонтичные
Типология и характеристика недвижимого имущества как объектов оценки. Коммерческая недвижимость(склады)
Презентация на тему Отряд хищные
Источники права в Турции
Бритвы Braun Учебное пособие
Основные положения конструирования элементов железобетонных конструкций
Презентация на тему Свойства функции (9 класс)
Основные свойства простейших геометрических фигур
Игрушки древних славян. Погремушки
Эволюция человека. Первые современные люди - неоантропы
Политические режимы
Игра Для детей 4-5 лет
Шындыққа келмейтіндерді жариялаудың проблемалары
Презентация на тему История Древнего мира 5 класс
Царство Божье… и ты
Тема: как компьютер влияет на наше зрение?
Принципы административной ответственности
Что означают наши имена
Некоторые подходы к построению автоматизированной системы проведения комплексного анализа результатов обучающихся
Хрящевые и костные рыбы
Financial Markets
Круговорот воды в природе (3 класс)
Классный час «Дороги, которые мы выбираем»
Реализация государственной научно-технической и инновационной политики
Гипертоническая болезнь Артериальные гипертензии
Мастер-класс Точка роста
Обучение грамоте (письмо) 1 класс Тема «Прописная буква Ф.» Пропись 4 к «Русской азбуке» В.В. Горецкого Москва «Просвещение» 20
«Лен. Льняное волокно. Сравнительная характеристика растительных волокон и тканей из них»