Пріоритет трансформацій (припущення, тобто теоретична концепція) підхід у програмуванні, запроваджений Робертом Сесілом Мартіном (Дядко Боб) для удосконалення процесу керованої тестами розробки (TDD).
Принцип пріоритету трансформацій визначає, що перевага має віддаватися простішим трансформаціям вихідного коду.
Цей підхід полегшує розробнику виконання найпростішої з можливих операцій при керованій тестами розробці. Розробник може звертатись до списку трансформацій і віддавати перевагу найпростішій (згори списку) над складнішими (нижчими за пріоритетом).
Трансформації
- ({} –> nil) заміна "відсутності коду" на "відсутнісь результату"
- (nil -> constant) зміна "відсутності результату" на сталу
- (constant -> constant+) заміна простої сталої на складну
- (constant -> scalar) заміна сталої змінною чи аргументом
- (statement -> statements) додавання неумовних інструкцій
- (unconditional -> if) розділення шляху виконання
- (scalar -> array) заміна змінної масивом
- (array -> container) заміна масиву об’єктом
- (statement -> recursion) заміна інструкції рекурсією
- (if -> while) заміна умовного переходу циклом
- (expression -> function) заміна виразу функцією
- (variable -> assignment) зміна значення змінної
Дядько Боб чітко заявив, що це лише припущення і, вочевидь, є ще інші трансформації. Хоча загалом це припущення працює, воно потребує перевірки на практиці і допрацювання.
Джерела
- Roman Numerals Kata with Commentary
- Transformation Priority Premise Applied
- The Transformation Priority Premise explained by Uncle Bob