Записи с меткой «PHP»

Итак, продолжим! Мы уже немного научились проектировать сущности в первой части и даже подготовили небольшой прикладной сервис во второй. И договорились, что нам для хранения доменных сущностей в базе нужно сделать некий репозиторий. И даже сделали его тестовый эмулятор и подготовили работающие тесты. Перед изучением каких-либо готовых решений сегодня навелосипедим собственную реализацию репозитория без использования сторонних ORM-систем.

Продолжаем погружение в проектирование и разработку. В прошлой статье мы сочинили полноценную сущность-агрегат предметной области Employee со своей собственной бизнес-логикой для описания объектов сотрудников. Теперь нужно как-то работать с ней из контроллера, сохранять в базу данных и доставать обратно. Но наш Employee не содержит ни одной строки по работе с базой данных, поэтому сам сохраняться не умеет. Что же с этим делать?

Некоторые разработчики порой недоумевают, как можно программировать на фреймворках без использования CRUD и ActiveRecord, и почему такую «лёгкую» на первый взгляд прямую работу с полями в базе данных недолюбливают тру-ООП-шники. Да и многие спрашивают, что в тестах нужно тестировать, а что не нужно. И нужно ли проверять приватные методы или нет? Разберёмся в этих вопросах.

Вчера после окончания интенсива провели бесплатный дополнительный урок с ответами на вопросы по ООП. Поговорили ещё раз об ответственностях контроллеров, немного про MVC, View Model и фреймворки, повторили критерии выноса кода в отдельные компоненты. Личных вопросов не было, поэтому с разрешения участников выкладываю запись для всеобщего просмотра.

Как-то давно у меня спрашивали, как сделать хранение пользовательского контента в разных базах данных, а недавно этот же вопрос всплыл на форуме вновь: «Подскажите в общих чертах, как можно реализовать динамическое переключение между базами в зависимости от подключенного пользователя».

Представляю наше главное событие осени. Снова запускаю уже многим полюбившийся супер-мега-интенсив по объектно-ориентированному программированию. Что в третьем потоке будет такого эпического и чем он будет отличаться от предыдущих?

Второй мастер-класс по функциональному программированию в PHP на примере написания многопоточного парсера активных участников форума. Рассмотрели базовую реализацию многопоточности в PHP и отличия от других языков программирования.

На вебинаре о тестировании мы не уделили внимания практическому применению парадигмы Test Driven Development (TDD) и Test First в реальных проектах и написанию моков в модульных тестах. Попробуем решить сегодняшнюю задачу по практике написания тестов до кода и потренируемся в составлении модульных и функциональных тестов.

Запись мастер-класса по функциональному программированию в PHP на примере подсчёта стоимости товаров в корзине интернет-магазина. Рассмотрели путь эволюции от процедерного кода до функционального.

Часто встречаю статьи и доклады от функциональщиков, что функциональное программирование рулит, а объекты это треш. Не будем здесь говорить о процедурщиках, которые думают, что они функциональщики. Вместо этого разберёмся, чем функциональное программирование отличается от других парадигм и для чего это всё вообще нужно.