dam ten strzał, moja filozofia jest następująca:
1 - Zachowaj plik konfiguracyjny & klasy parser/funkcji, które są niezwykle dumbed dół i proste, jak to możliwe, aby dać Ci spokój, że gdy tylko potrzebujesz czegoś z niego, możesz to zrobić bez konieczności tworzenia przypadkowo przetartego parsera plików konfiguracyjnych XML. Mój plik config wygląda następująco:
DBHostname -> XX.XX.XXX.XX
DBUsername -> foomonger
DBName -> fooDb
DBPassword -> xxxxx
ImageUploadsDir -> /uploads/images/
...
wyodrębnić co muszę z niego przy użyciu statycznej metody pomocnika (małe aplikacje) lub singleton instancji (duże MVC napędzane apps) wygenerowany przez mojego idioty znajomego ConfigHelper, który jest tak głupi, on nie wie, jak generować nad głową.
Mam ten dylemat kilka razy w moim średnim dniu pracy: powinienem umieścić to w config.txt lub powinienem zrobić to stała klasy? Moja odpowiedź brzmi: po prostu nie wiem - aż do dużo później. Jeśli okaże się, że trzeba go umieścić w pliku konfiguracyjnym, nic nie przebije przyzwoitego IDE ze stabilną implementacją "Znajdź w projekcie &" w celu zmiany odniesień.
3 - Pliki konfiguracyjne są koszmarne po wdrożeniu aplikacji, gdy programowanie obejmuje serwer testowy, a następnie wdrożenie do produkcji - nie ma praktycznej alternatywy. Różne instancje baz danych na różnych komputerach mają różne adresy IP w świecie, który rozumiem.
Jednym z wielu przykładów jest pisanie kodu HTML strony internetowej ręcznie vs posiadające program automatycznie generuje to
To jest tak prawdziwe. Podczas gdy my, jako programiści, lubimy budować maszyny, mamy tendencję do marnowania czasu na budowanie maszyn do budowy maszyny, którą początkowo zamierzaliśmy zbudować. Chociaż może to być bardzo satysfakcjonujące, z doświadczenia mogę zaryzykować stwierdzenie, że w sytuacji o największej liczbie komputerów, im więcej systemów będzie trzeba obsługiwać, tym więcej punktów awarii, tym więcej dudnień dostanie od właścicieli firm. - i to nie jest zabawne. Ponadto będziesz miał tendencję do uruchamiania sytuacji, w których pośredni generator HTML nie może uzyskać pożądanego wyniku. Więc co robisz, marnujesz czas na naprawianie błędu w generatorze, marnujesz czas na rozwiązanie problemu voodoo lub zwyczajnie piszesz kod HTML?To naprawdę zależy od konkretnych okoliczności, ale ja wolę to drugie.
Trochę się rantem, ale mam nadzieję, że pomogło to odpowiedzieć na twoje pytanie, przynajmniej trochę.
Jeśli piszesz zduplikowany kod, ale nie zaznaczasz go do czasu ponownego przetworzenia, czy zduplikowałeś kod? (Filozoficzne) – Arafangion