Przeczytałem w różnych miejscach, że posiadanie zmiennych o zasięgu globalnym, tj. Publicznej klasy statycznej ze statycznymi elementami, jest uważane za sprzeczne z filozofią OO i nie jest dobrym projektem. (Na przykład, widziałem komentarze na następującej zasadzie: "Jeśli używasz globalnego, nie robisz tego dobrze." Albo słowa w tym znaczeniu.)Zmienne globalne v Ustawienia w C#
Ale jeśli użyjesz mechanizmu Ustawienia dostarczonego przez Visual Studio, np "Settings.Default.MySetting" itd. Jest dostępna globalnie w całej aplikacji, więc jak to się różni od korzystania z publicznej klasy statycznej?
Te same wyniki można osiągnąć za pomocą pojedynczego obiektu, ale to także prowokuje różne opinie.
Zmienne globalne są po prostu użyteczne, (moduł VB, ktoś?), Ale staram się nauczyć, jak to zrobić, OO malarky właściwie, więc jeśli globalne zmienne zapachu źle z punktu widzenia OO, co jest alternatywą?
Jestem szczególnie zainteresowany opiniami ludzi na temat korzystania z funkcji "Ustawienia". Czy uważa się to za dobry projekt OO?
Dziękuję za wszelkie uwagi.
Trudny czas? Tak. Czy trudno będzie powstrzymać zdeterminowanego, niekompetentnego dewelopera? Nigdy. Straciłem liczbę razy, gdy widziałem coś zrealizowanego w sposób, który jest zarówno trudniejszy, jak i mniej poprawny niż projektowany sposób. (I kłamałbym, gdybym powiedział, że nigdy nie byłbym winien takiej rzeczy.) –
Dobra sprawa, Greg D. Powinieneś zobaczyć część mojego przeszłego snafu! –