Ja chciałem, żeby w jednej solucji było tyle projektów, ile musi na koniec powstać exeków + 1 na bibliotekę przechowującą klasy współdzielone przez resztę projektów.
Szef postanowił, że projektów ma być dużo więcej - bo wtedy łatwiej wielu ludziom na raz pracować na różnych częściach kodu, bo wtedy mamy lepszy podział kodu, itp itd.
Szczerze mówiąc nie widzę, gdzie taka architektura pomaga.
Jeśli chodzi o 'tight coupling', to jedyna korzyść jest taka, że trzeba do osbobnego projektu ładować wiele klas służących do współdzielenia danych między licznymi bibliotekami. W jaki sposób to osłabia 'coupling' ponad takim rozwiązaniem, że owe współdzielone klasy są w plikach znajdujących się w tym samym projekcie, co wszystko, co musi z nich korzystać nie mam pojęcia.
Jeśli chodzi o współpracę wielu ludzi nad kodem jednocześnie, to to chyba tylko utrudnia, gdyż niektóre commity muszą modyfikować więcej plików.
W ogólności wydaje mi się, że podział na wiele projektów i mnożenie bibliotek ponad to, co wypływa z konieczności (czyli to, co musi być współdzielone przez wiele plików wykonywalnych) jest wyłącznie upierdliwością, natomiast nic nie daje.
Ja wiem, jak wiadomo z mojej forumowej historii moją cechą charakterystyczną chyba jest niezrozumienie zasad czystego kodu i ignorowanie ich (aczkolwiek akurat w tej pracy to chyba ja mam najbardziej rygorystyczne podejście do czystego kodu ze wszystkich, z tym jedynym wyjątkiem, o którym teraz piszę - co więcej mówi o podejściu innych do czystego kodu niż o moim), też zdążyłem już wyczytać w internecie chwalenie mnożenia projektów w jednej solucji celem osłabienia coupling, więc może to ja czegoś nie rozumiem?
Poczekałem parę miesięcy przed wysmażeniem niniejszego posta na forum celem zaznajomienia się z tym trybem pracy - może dotrze do mnie, jakie to ma zalety ponad ograniczaniem ilości projektów do niezbędnego minimum - niestety nie dotarło. Dalej zalet nie widzę, natomiast widzę utrudnienia.
Oświeci mnie ktoś?