Questo è compito a casa !!! Per favore, non interpretare questo come se stessi chiedendo a qualcuno di codificarmi.C#: Bad design of class (first OOP)
mio programma: http://pastebin.com/SZP2dS8D
Questo è il mio primo OOP. Il programma funziona perfettamente senza l'input dell'utente (UI), ma l'implementazione di esso rende parzialmente inefficace il mio disegno. Non sto utilizzando una raccolta di elenchi a causa di restrizioni di assegnazione. Il mio obiettivo principale è avere tutto in esecuzione dalla classe Transcript. Qui ci sono alcune questioni che sono in esecuzione in:
- permettendo all'utente di aggiungere nuovo corso senza dover creare una nuova istanza di trascrizione
ogni volta - Associare i corsi aggiunti a una specifica Quarter
Ecco alcuni pseudo-codice per mostrare quello che sto cercando di realizzare. Ho sperimentato, ma devo ancora riuscire.
Please enter the quarter: (user input)
Would you like to add a course?
while (true)
Enter Course/Credits/Grade
//new Course information populated with user input
transcript.AddCourse.to specific Quarter((Fall 2013) new Course("Math 238", 5, 3.9));
transcript.AddCourse.to specific Quarter((Fall 2013) new Course("Phys 223", 5, 3.8));
transcript.AddCourse.to specific Quarter((Fall 2013) new Course("Chem 162", 5, 3.8));
MIA DOMANDA [S]: Devo mantenere la classe di trascrizione, o rifiutarlo? Con l'attuale funzionalità di creare un nuovo corso, è possibile mantenerlo in questo modo mentre usi l'interfaccia utente o devo tornare alla lavagna e riconfigurare?
Speriamo che questo sia coerente e non troppo ampio. Se è necessario un chiarimento, chiedi e sarò lieto di fornire ulteriori dettagli.
C'è una ragione si dispone di una serie di 'Student's nella tua classe' Transcript'? Ho presunto con questo progetto che un 'Transcript' era per' Student', quindi ne avresti solo bisogno. – Gjeltema
In una nota a margine, stai facendo tutto il tuo stile in stile Java. Ad esempio, stai nominando molte proprietà 'setXXX' o' getXXX', quando in C# dovrebbe essere solo 'XXX'. Inoltre, in C#, il primo carattere dei nomi funzione è maiuscolo. – Gjeltema
@Gjeltema Il design che avevo in mente era di usare Transcript al posto di una lista. Hai ragione, l'intenzione che ho per Transcript è per studente. Stavo tentando di creare una lista vuota per gli studenti. Proverò a sbarazzarmi della matrice Student, che ha perfettamente senso. – Leif