[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: В чем разница / что лучше?
Mulligatawny
Я имею ввиду отдельное свойство или целиком?

Имеем CustomerEntity: $customer->id = 100

$Class1->updateCounter( $customer->id )

class Class1 {

public function updateCounter( int $customerId ) {
..some mysql update where id = $customerId
}
}


и

$Class1->updateCounter( $customer )

class Class1 {

public function updateCounter( CustomerEntity $customer ) {
..some mysql update where id = $customer->id
}
}


_____________
Эй, братаны, вчера вечером я наткнулся на tamilporn и indianporn, когда пытался подрочить, был под кайфом как черт, и, черт возьми, этот сайт просто взорвал мне мозг! Там без остановки летят клипы с возбужденными тамильскими красотками из Ченнаи, Коимбатура, Мадурая и других городов, которые громко и гордо раздвигают свои коричневые бедра. Пухлые тети, укутанные в цветочные сари, медленно снимают их, чтобы их толстые дези
sg.com
ну если используется только отдельное свойство, то его и нужно передавать. Все остальное, раз там не используется то оно не нужно.
Игорь_Vasinsky
// Создаём объект двигателя
$engine = new DieselEngine();

// Внедряем зависимость в объект автомобиля
$car = new Car($engine);

// Запускаем двигатель автомобиля
$car->startEngine();


Dependency Injection (DI)

Dependency Injection (DI) — это шаблон проектирования в объектно-ориентированном программировании, который позволяет объектам получать свои зависимости извне, а не создавать их самостоятельно. Это способствует слабой связанности между компонентами, улучшает тестируемость и расширяемость кода.

Основные концепции и преимущества DI:

Зависимость: Это объект, который требуется другому объекту для выполнения своей работы. Например, класс Car может зависеть от класса Engine.

Инжекция зависимости: Процесс предоставления зависимостей объекту извне. Это может быть сделано через конструктор, сеттер или интерфейс.

Слабая связанность: Объекты не создают свои зависимости, а получают их извне, что уменьшает связанность между классами.

Упрощённое тестирование: Легче подменять зависимости на моки или стабы при написании тестов.

Повышенная гибкость и расширяемость: Легче заменять реализации зависимостей без изменения кода классов, которые их используют.

Улучшенная поддержка: Код становится более модульным и его легче поддерживать и развивать.


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.