Design spørgsmål: Mange små klasse eller een stor?
HejsaJeg sidder og laver mig en lille bysamfundssimulator, og er kommet lidt i tvivl om, hvad der giver mest mening/er mest overskueligt og vedligeholdbart.
Jeg har en klasse Job som indeholder de jobs folk kan have og arbejdsfunktionen (.Work()). Så langt så godt.
Men når de forskellige job ikke skal arbejde på samme måde(f.eks. fælde træer/lave brædder/bygge et hus) så skal jeg jo bruge forskellige funktioner til hvert job. Til hvert job hører også et værktøj(Tool) og et materiale(Materials), som de andre job ikke (nødvendigvis) bruger.
Jeg har pt. lavet fire andre job-klasser, hvor hver klasser stort set ens, bortset fra Work() og hvilket Tool og Materials de bruger(og et par andre småting). Men jeg synes det kommer til at virke temmeligt uoverskueligt, hvis(når) der er 30+ forskellige jobs. Og at lave en hel klasse bare for en eller to funktioner virker også som overkill...
Jeg har så overvejet at samle det hele i een klasse, men så er jeg jo nødt til at filtrere på hvem der må hvad(og hvordan gør jeg det bedst?). Og mængden af koden bliver ikke mindre, ligesom overskueligheden også er lav her. :-/
Så hvad synes I? :) Og hvorfor?? :D
Er der en løsning jeg ikke har overvejet?