Содержание
- 2. SkyEng Skyeng — это онлайн-школа английского языка нового поколения. В школе работают профессионалы, помогающие жителям современных
- 4. Маркетинг Ма́рке́тинг (от англ. marketing «рыночная деятельность») — организационная функция и совокупность процессов создания, продвижения и
- 5. Маркетинг Тратить меньше (на продвижение и предоставление) Получать больше (увеличение аудитории, создание новых продуктов) Деньги!
- 7. Что требуется от разработки Качественно Быстро Дешево
- 8. Пример
- 9. Задачка Надо сделать виджет Дизайн есть! Пользователь оставляет заявку В календаре выбирает дату и время вводного
- 10. Вводный урок Что это?
- 11. Задачка Надо сделать виджет Дизайн есть! Пользователь оставляет заявку В календаре выбирает дату и время вводного
- 13. Как будем делать тех. ревью? От базы/интеграций От api фронтенда От проблемы бизнеса
- 14. И от базы/интеграций и от api Сервис букинга — получить, выбрать, отменить Фронтовое api — получить,
- 17. Чего хочет бизнес от разработки. Качественно — не терять сценарии и лучше понимать бизнес проблемы Быстро
- 18. Что дальше? Опишем сервис Пробуем удовлетворить все 3 потребности Посмотрим со стороны гексагональной архитектуры
- 19. «Allow an application to equally be driven by users, programs, automated test or batch scripts, and
- 20. Hexagonal architecture / Ports and adapters Пользователь Программы Тесты Скрипты Базы Внешние Апи Доп. устройства Приложение
- 21. Попробуем описать сервис — Application Приложение
- 22. class SelfTrialBookingService { ... public function __construct( OperatorsServiceInterface $operatorsService, BookingServiceInterface $bookingService, SelfTrialRepositoryInterface $selfTrialRepository ) { $this->operatorsService
- 23. interface OperatorsServiceInterface { public function holdCall(int $educationServiceId, DateInterval $interval, string $reason): void; public function disableCall(int $educationServiceId,
- 24. interface BookingServiceInterface { public function bookSlot(string $slotId, string $reason): void; public function cancelSlot(string $slotId, string $reason):
- 25. interface SelfTrialRepositoryInterface { public function save(SelfTrial $selfTrial); public function getSelfTrialByEducationServiceId(int $educationServiceId): ?SelfTrial; } Сохранить Получить
- 26. public function startSelfTrialProcess(int $educationServiceId): void { $this->operatorsService->holdCall( $educationServiceId, new DateInterval(self::HOLD_CALL_INTERVAL), 'self_trial' ); $selfTrial = SelfTrial::start($educationServiceId); $this->selfTrialRepository->save($selfTrial);
- 28. public function bookSlot(int $educationServiceId, string $slotId, string $reason): void { $selfTrial = $this ->selfTrialRepository ->getSelfTrialByEducationServiceId($educationServiceId); //Валидация
- 30. public function cancelSelfTrial(int $educationServiceId, string $reason): void { $selfTrial = $this ->selfTrialRepository ->getSelfTrialByEducationServiceId($educationServiceId); //Валидация и DomainException
- 31. Да
- 32. Application Качественно — не терять сценарии и лучше понимать бизнес проблемы Быстро — быстро описывать сценарии
- 33. Насколько это гибко? Вот тут будет кнопка отмены!!!
- 34. Да
- 35. Насколько это гибко?
- 36. public function bookSlot(int $educationServiceId, string $slotId, string $reason): void { $selfTrial = $this ->selfTrialRepository ->getSelfTrialByEducationServiceId($educationServiceId); //Валидация
- 37. + обновление деталей звонка Да
- 38. При чем тут DDD? Ubiquitous Language (единый язык) Можно показать заказчику Если не поймет, покрыть BDD
- 39. Hexagonal architecture / Ports and adapters Пользователь Программы Тесты Скрипты Базы Внешние Апи Доп. устройства Приложение
- 40. Более красивая картинка ;) https://herbertograca.com/2017/09/14/ports-adapters-architecture/
- 41. Зачем Позволяет концентрироваться на домене Выделение бизнес логики Тесты Заменяемые элементы Дисциплина (именование папок, куда что
- 42. Заметки на полях Что с атомарностю (@synchronized)? Почему не ивенты из модели? Где эксепшены?
- 44. Скачать презентацию









































Subject Link. Lesson 12
Science and technology. Listening. Grammar. Necessity. Vocabulary
There is / There are
Help me find the way to the right
Презентация на тему Fun Activities (Развлечения)
Learning English with animals is fun
What do the people you know think about this statement
Happy Valentine’s Day
My last holiday
Vocabulary
Houses and Modern Conveniences
Reflexive pronouns. 7 класс
Countries and Continents
Discussing relations
The giraffe lives in Africa
To be going to do something
The poem
Чтение
Describe the characters using adjectives
Short life, long life
A man and his pet
Step 5
This - that. 7 лет
Boys and girls. English plot
Глаголы by
My game. Своя игра
The_Russian_Federation
Bread making