Мания примитивизма (Primitive Obsession)
Большинство языков программирования имеют два вида данных: примитивные типы и записи.
Одно из ценных свойств объектов заключается в том, что они стирают границу примитивными типами и большими классами. Можно легко использовать маленькие объекты, которые будут неотличимы от примитивных типов языка.
Очень часто полезно ввести классы для денег, включающее количество и валюту, промежуток с верхней и нижней границами или специальные строки для телефонных номеров.
Всему этому сильно способствуют: Замещение поля объектом для отдельных полей, Замена кодирования типа классом для кодирования типа, не влияющее на поведение, Замена кодирования типа подклассом либо Замена кодирования типа Состоянием/Стратегией для кодирования типа, которое влияет.
Если есть группа полей, которые хотят быть вместе, не надо этому мешать – Извлечение класса. Если примитивы расположились в списках параметров – Введение объекта параметров, если оседлали массив – Замена массива на объект.
Комментарии