diff --git a/src/content/daily-email/2023-12-10.md b/src/content/daily-email/2023-12-10.md new file mode 100644 index 000000000..616351420 --- /dev/null +++ b/src/content/daily-email/2023-12-10.md @@ -0,0 +1,29 @@ +--- +title: > + Suffixing names +pubDate: 2023-12-10 +permalink: > + archive/2023/12/10/suffixing-names +tags: + - software-development + - php + - drupal + - symfony + - clean-code +--- + +When writing code, it's common to suffix the class name with the type of class it is. + +I do this often for most types of classes, such as Controllers, EventListeners, Factories, Repositories and Builders. + +However, I don't always for value objects and data transfer objects (DTOs). + +Also, I don't always suffix interfaces with `Interface`. + +I've been re-reading the documentation for the Symfony Serializer component, which references both `NameConverterInterface` and `MyDto::class`. + +Whilst it does make the names more verbose, it does clarify what the class is used for. + +Symfony's coding standards and Drupal's PHP coding standards have conventions for this, but what do you think? + +Do you add suffixes to your class or interface names, or do you prefer the simplified versions?