Содержание
- 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)




АВС Модуль 3
Почва растительность животный мир рельеф деятельность человека горные породы воды время климат Почвообразующие факторы.
Презентация на тему Абхазия
Эвипак Индастриз
Проверка домашнего задания
Сетевая подсистема Windows
Деятельность как содержание образования в предметной области «Искусство»
Об утверждении Порядка организации подготовки кадров для замещения должностей в органах внутренних дел Российской Федерации
О жизни и творчестве С.А. Есенина
Ловля и передача мяча в движении бегом. Броски в кольцо
Моделі навколо нас
Общая характеристика воображения. Виды воображения
Окружающий мир. 2 класс. Окружающий мир. 2 класс. Программа «Перспективная начальная школа». Авторы: О.Н.Фетотова,Г.В.Трафимова,С.А
Значение чтения
Ұлттық таба нан өніміне ақпараттық шолу жасау; таба нанның сапа көрсеткіштерін анықтау
Древние Соборы
Формирование ценностных ориентаций младшего школьника в современной информационной среде
Платформа 2010 SQL Server 2008, восстановление при катастрофических сбоях Microsoft Дмитрий Артемов.
Акцентуации характера
Упр ИТ
Полдник. Время есть булочки
Презентация на тему Food and drink (Еда и напитки)
Динамика физиологического и эмоционального состояния больных сердечно-сосудистыми заболеваниями в процессе музыкальной терапи
Проект iknowwhatyoudownload.com анализирует трафик в файлообменных сетях
Презентация "Жостовский букет" - скачать презентации по МХК
31 МАЯВСЕМИРНЫЙ ДЕНЬ БЕЗ ТАБАКА
Домовой. Дух и защитник дома
Инновационная экономика и технологическое предпринимательство