Kiedy rozpoczynam nowy projekt, często od razu zaczynam myśleć o szczegółach wdrożenia. „Gdzie mam umieścić DataBaseHandler? Jak powinienem go używać? Czy klasy, które chcą go używać, powinny pochodzić z jakiejś superklasy abstrakcyjnej ..? metody wysyłania żądań i analizowania danych? ”
Skończyło się na zwlekaniu przez długi czas, ponieważ chcę kodować w celu rozszerzenia i ponownego użycia. Ale wydaje mi się, że prawie niemożliwe jest przeszłość, myśląc o tym, jak doskonale wdrożyć.
A potem, jeśli spróbuję powiedzieć „pieprzyć to, po prostu załatw sprawę!”, Uderzyłem szybko w ścianę z cegieł, ponieważ mój kod nie jest zorganizowany, mieszałem poziomy abstrakcji itp.
Jakie masz techniki / metody na rozpoczęcie nowego projektu przy jednoczesnej konfiguracji logicznej / modułowej struktury, która będzie dobrze skalowana?
- - EDYCJA - -
Cóż, jest to już pytanie, na które trudno jest zaakceptować odpowiedź, ale chciałem uzyskać więcej informacji zwrotnych, sprawdzić, czy istnieje jakiś konsensus. TDD brzmi naprawdę fajnie i, szczerze mówiąc, chciałem przyspieszyć korzystanie z JUnit itp. Jednocześnie, co fani TDD myślą o tym, że jeden słuszny punkt w odniesieniu do TDD rozwiązuje mój problem szczególnymi problemami jest to, że TDD tak naprawdę nie zajmuje się kwestią projektowania. Jasne, zgadzam się, że TDD pomoże mi zdefiniować, co chcę zrobić, a następnie będę mógł stopniowo pracować nad tym, jak to zrobić, ale istnieje wiele różnych ogólnych wzorów / struktur projektowych, które mogą przejść wszystkie testy jednostkowe. To wszystko: testuje pojedyncze JEDNOSTKI. Chyba jestem trochę zmieszany ... Nie wiem. Może ja'
Dzięki!