Централізація коду зазвичай завжди є хорошою ідеєю. Ми повинні максимально повторно використовувати код.
Однак важливо зазначити, як це зробити. Наприклад, коли у вас є код, який робить compute_prime_number () або check_if_packet_is_bad (), це добре. Цілком ймовірно, що алгоритм функціональності сам розвиватиметься, що отримає користь.
Однак жоден фрагмент коду, який повторюється як проза, не може отримати централізацію відразу. Це погано. Ви можете приховати довільні рядки коду всередині функції просто для того, щоб приховати код. З часом, коли кілька частин програми починають використовувати, всі вони повинні залишатися сумісними з потребами всіх викликів функції.
Ось кілька питань, які ви повинні задати, перш ніж задавати
Чи функція, яку ви створюєте, має власне притаманне значення чи це лише купа рядків?
Який ще контекст потребуватиме використання тих же функцій? Чи ймовірно, що вам може знадобитися трохи узагальнити API перед його використанням?
Яким буде очікування (різних частин) додатків, коли ви кинете винятки?
Які сценарії бачать, що функції будуть розвиватися?
Ви також повинні перевірити, чи вже є такі речі. Я бачив, як багато людей завжди прагнуть переосмислювати свої макроси MIN, MAX, а не шукати того, що вже існує.
По суті, питання полягає в тому, "чи справді ця нова функція гідна повторного використання або це лише копіювальна папка ?" Якщо це перше, добре піти.