Siemka,
Stworzyłem ostatnio program, który obsługuje i manipuluje obrazami, oraz zamienia je na ich wersje ASCII. Cały kod umieściłem w jednej klasie, odpowiednio podzielonej na funkcje. Funkcje uporządkowałem grupami (funkcje operujące na pliku, filtry, obracanie obrazu itp.).
I tu jest moje pytanie. Jak wydzielić te poszczególne grupy? Żeby to wszystko nie siedziało w jednej klasie, tylko było bardziej zorganizowane? Myślałem o rozwiązaniu, gdzie wydzieliłbym kod do pomocniczych klas, w klasie głównej tworzyłbym odpowiednie pod-obiekty i dostęp do funkcji wyglądałby następująco:
img.filters.changeToGrayscale();
Ale nie wiem, czy jest to optymalne rozwiązanie. Może jakaś porada od bardziej doświadczonych kolegów? :P
Link do githuba: github