From bfa27dea9f3539d54cdeca9b789747369ec5a10b Mon Sep 17 00:00:00 2001 From: Oliver Davies Date: Wed, 8 Jan 2025 01:53:51 +0000 Subject: [PATCH] Add daily email for 2025-01-06 Actions, Commands or Services? --- source/_daily_emails/2025-01-06.md | 42 ++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 source/_daily_emails/2025-01-06.md diff --git a/source/_daily_emails/2025-01-06.md b/source/_daily_emails/2025-01-06.md new file mode 100644 index 00000000..9fde2abc --- /dev/null +++ b/source/_daily_emails/2025-01-06.md @@ -0,0 +1,42 @@ +--- +title: Actions, Commands or Services? +date: 2025-01-06 +permalink: daily/2025/01/06/actions-commands-services +tags: + - software-development + - drupal + - php +cta: ~ +snippet: | + To Action or not to Action? I was writing a new class today and wondered whether it should be an Action, Command or Service. Which would you pick? +--- + +Today I started to write a new class and was trying to decide what to name it and what pattern I wanted to follow. + +Option 1: + +```php +class StoreInformationDownloader { + + public function download() { + // ... + } +} +``` + +Option 2: + +```php +class DownloadStoreInformation { + + public function execute() { + // ... + } +} +``` + +Option 1 is a typical Service class. + +Option 2 follows the Command or Action pattern. + +Which would you choose?