Какой рейтинг вас больше интересует?
|
Главная / Главные темы / Тэг «рефакторинг»
DDD на практике. Проектирование списка желаний 2017-08-23 09:59:49
В интернете довольно много разрозненного материала по список желаний (wish list). Читать ...
+ развернуть текст сохранённая копия
В интернете довольно много разрозненного материала по список желаний (wish list). Читать дальше →
Тэги: ddd, doctrine, entity, object, orm, php, symfony, value, vuejs, ооп, проектирование, рефакторинг
[Перевод] Точность через неточность: Улучшаем Time-объекты 2017-08-15 15:12:32
При создании value-объекта для хранения времени, я рекомендую выбирать вместе с ...
+ развернуть текст сохранённая копия
При создании value-объекта для хранения времени, я рекомендую выбирать вместе с экспертами в предметной области и вокруг нее с какой точностью он будет храниться. Моделируя работу с числами считается хорошим тоном указывать точность. Неважно о чем идет речь — о деньгах, размере или весе; округляйте до заданного десятичного знака. Наличие округления делает данные предсказуемее для обработки и хранения, даже если это число только для отображения пользователю.
К сожалению, так делают не часто, и, когда приходит момент, проблема дает о себе знать. Рассмотрим следующий код:
$estimatedDeliveryDate = new DateTimeImmutable('2017-06-21');
// представим, что сегодня ТАКЖЕ 2017-06-21
$now = new DateTimeImmutable('now');
if ($now > $estimatedDeliveryDate) {
echo 'Package is late!';
} else {
echo 'Package is on the way.';
}
Ожидаемо что, что 21 июня этот код выведет Package is on the way. , ведь день еще не закончился и пакет, например, доставят ближе к вечеру.
Несмотря на это код так не делает. Так как не указана часть со временем, PHP заботливо подставляет нулевые значения и приводит $estimatedDeliveryDate к 2017-06-21 00:00:00 .
С другой стороны $now вычисляется как… сейчас. Now включает в себя текущий момент времени, который, скорее всего, не полночь, так что получится 2017-06-21 15:33:34 или вроде того, что будет позднее, чем 2017-06-21 00:00:00 . Читать дальше →
Тэги: date, datetime, object, php, php7, time, timestamp, value, веб-сайтов, программирование, проектирование, разработка, рефакторинг
Система управления складом с использованием CQRS и Event Sourcing. Service Layer 2017-08-15 00:03:10
В ...
+ развернуть текст сохранённая копия
В данной статье будет рассмотрен Service Layer в Magento 2 и сервисы (API интерфейсы) для управления сущностями, которые были описаны в предыдущей статье, посвященной проектированию и выделению доменных сущностей для системы управления складом (Inventory). Читать дальше →
Тэги: catalog, command, contracts, cqrs, e-commerce, event, inventory, layer, magento, msi, php, service, sourcing, код, проектирование, разработка, рефакторинг, совершенный
Как отрефакторить 2 500 000 строк кода и не сойти с ума 2017-08-01 12:06:51
5 июня 2017 года на РИТ я рассказал доклад про то, как мы рефакторим свое огромное клиентское ...
+ развернуть текст сохранённая копия
5 июня 2017 года на РИТ я рассказал доклад про то, как мы рефакторим свое огромное клиентское приложение на 2 500 000 строк кода.
Недавно я получил запись выступления. Думаю, что это видео может быть кому-то полезно, поэтому я попросил у Олега Бунина разрешение на то, чтобы выложить его в открытый доступ. Он согласился. Надеюсь, вам будет интересно. В любом случае буду рад любым комментариям.
P.S.: Заранее прошу прощение за качество видео. К сожалению, ничего с этим поделать не могу.
Тэги: codemods, css, javascript, wrike, блог, веб-сайтов, компании, программирование, разработка, рефакторинг
Microservices и Модель Акторов (Actor Model) 2017-08-01 01:49:28
+ развернуть текст сохранённая копия
Доклад посвящен:
- Пользовательским интерфейсам ориентированным на задачи (Task Based UI)
- CQRS (Command/Query Responsibility Segregation)
- Микросервисы
- Закон Конвея и его влияние на примере организации команд в Magento
- Fine-grained сервисы vs Coarse-grained сервисы
- Синхронность vs Асинхронность
- Модель Акторов (Actor Model)
Вторая часть доклада находится под хабракатом. Читать дальше →
Тэги: actor, based, cqrs, crud, magento, magento2, microservices, model, php, rad, soa, task, веб-сайтов, код, проектирование, разработка, рефакторинг, совершенный
Главная / Главные темы / Тэг «рефакторинг»
|
Взлеты Топ 5
Падения Топ 5
|