Робота соло означає, що якщо ви не довіряєте стороннім людям переглядати код від свого імені, вам потрібно буде подивитися на те, як ви пишете програмне забезпечення, щоб підтримувати якість коду.
По-перше, ви повинні мати засоби для того, щоб ваш код відповідав вимогам, по-друге, ваш код буде відносно легко змінити, якщо згодом ви вирішите, що у вас щось не так. Моя пропозиція полягає у застосуванні підходу до розвитку поведінки з наступних причин:
- BDD означає спочатку написати тест на код. Це гарантує тест на весь ваш код.
- BDD по суті є TDD, але з дещо іншим фокусом і "мовою". Це означає, що ви постійно переробляєте код під час роботи над ним і використовуєте свої тести, щоб забезпечити продовження зусиль рефакторингу для того, щоб ваш код відповідав вашим характеристикам продукту.
- Мова BDD закликає тести писати у вигляді висловлювань, які по суті кодують вимоги як одиничні тести.
Отже, ідея тут полягає в тому, що ваш постійний рефакторинг коду навіть після того, як ви пройдете тести, означає, що ви ефективно переглядаєте свій власний код і використовуєте свої одиничні тести як "зайву пару очей", яка переконує, що ваш код не відповідає " t не відхилятися від вимог, які кодуються в тестах. Також високе покриття тесту, що базується на вимогах, гарантує, що ви зможете змінити код у майбутньому, не виконуючи вимоги.
Справжньою проблемою для вас буде те, чи зможете ви помітити в коді потенційні проблеми, які вказуватимуть на необхідність рефактора. На ринку є кілька інструментів профілювання, які можуть допомогти вам у цьому, а також кілька інших інструментів, які стосуються показників якості коду. Вони часто можуть розповісти вам багато речей, які огляди коду можуть пропустити, і вони є обов'язковими при розробці проектів самостійно. Насправді, досвід є ключовим, і коли ви звикли бути нещадними у своєму рефакторингу, ви, швидше за все, станете набагато критичнішими до власного коду. Якщо ви ще цього не зробили, я б запропонував прочитати книгу Рефакторинга Мартіна Фаулера як вихідну точку та шукати хороший API BDD, який, на вашу думку, буде працювати для вас на тій мові, якою ви вирішили працювати.