Qzed
Новичок
Решил вот обсудить, попав на удивительный как по мне вариант (код ниже), ну я бы не дошел до такого.
Все больше волнует именно тема именования, распределения кода по классам,
ради следования SOLID и в улучшению своего кода.
Часто поражаюсь откуда берут такие как Applicator Matcher Resolver Provider Manager и Processor etc
И вот пример из Sylius
и CustomerOrderAddressesSaver там же, который будет адрес с заказа, сохранять пользователю в профиль.
Да есть разные книги по программированию, но не по именованию.
Т.е. видя пример понимаю что можно и так писать НечтоAdder НечтоSaver
Например так будет правильно: RewardPointAdder который будет Customer'у начислять бонусные баллы ?
Также и с Applicator Matcher Resolver Provider Manager и Processor etc
Хорошо бы иметь больше вариантов именования сразу.
Само собой что то есть в книгах, но больше только в проектах где реально что то делается.
Все больше волнует именно тема именования, распределения кода по классам,
ради следования SOLID и в улучшению своего кода.
Часто поражаюсь откуда берут такие как Applicator Matcher Resolver Provider Manager и Processor etc
И вот пример из Sylius
PHP:
final class CustomerUniqueAddressAdder implements CustomerAddressAdderInterface
{
/** @var AddressComparatorInterface */
private $addressComparator;
public function __construct(AddressComparatorInterface $addressComparator)
{
$this->addressComparator = $addressComparator;
}
/**
* {@inheritdoc}
*/
public function add(CustomerInterface $customer, AddressInterface $address): void
{
foreach ($customer->getAddresses() as $customerAddress) {
if ($this->addressComparator->equal($customerAddress, $address)) {
return;
}
}
$customer->addAddress($address);
}
}
Да есть разные книги по программированию, но не по именованию.
Т.е. видя пример понимаю что можно и так писать НечтоAdder НечтоSaver
Например так будет правильно: RewardPointAdder который будет Customer'у начислять бонусные баллы ?
Также и с Applicator Matcher Resolver Provider Manager и Processor etc
Хорошо бы иметь больше вариантов именования сразу.
Само собой что то есть в книгах, но больше только в проектах где реально что то делается.
Последнее редактирование: