Hermetyczność w C# w praktyce - jak stosować ?
Czy istnieje jakiś jeden, z góry uznany w środowisku programistów sposób na organizację kodu w programie?
Chciałbym z góry mieć jakiś schemat/ strukturę kodu, który wspierałby hermetyczność - tak aby poszczególne moduły/ funkcjonalności łatwiej dawały się modyfikować i były bardziej elastyczne w perspektywie całego kodu (w C++ gdy zmieniałem kawałek kodu, cały program się sypał)
PRIMO: W klasie poniżej powinny być wyłącznie metody będące Event Handler'ami dla kontrolek (te standardowe i customized (event += EventHandler())
public partial class Form1: Form {}
SECUNDO: Dla logiki programu (komponent Model w MVC) tworzę osobną klasę (lub wiele klas). Wewnątrz jednej przestrzeni nazw mam zawarte wszystkie klasy (i wewnątrz nich metody), oraz delegaty, interfejsy, struktury, enumeracje
Pytania
- Czy organizacja plików w screenie poniżej jest godna polecenia/ dominująca?
- Jak mogę dostać się do środka wybranej klasy, metody, enumeracji itd. (na screenie poniżej - zawsze mnie ciekawiło jak wygląda profesjonalnie napisany kod)
- Po co w ogóle VS daje możliwość tworzenia własnych folderów w SolutionExplorer ? W jakich sytuacjach używanie folderów jest uzasadnione?
- Ile powinno być plików .cs (dodawanych jako Solution->lpm->Add->new item -> class) i czym się kierować przy ich tworzeniu/ rozdzielaniu? (póki co mam tylko jeden i nie wiem czy tworzenie większej ilości nie łamie zasady brzytwy Ockhama)