PROBLEMA [Ingegneria Informatica - UML] come rispettare il basso accopiamento tra classi

Pubblicità
Quindi perdonami se vi ha illustrato tutti quelli a lezione, avrà anche mostrato come attuarli e dove
 
Si non allego i lucidi delle lezioni in cui spiega anche con classi e interfacce,

Cerco da testardo di far rispettare la legge di Demtra che afferma
ogni unità di programma dovrebbe interagire solo con le unità che conosce direttamente.
no good: card.getLists().at(5).getGroups().at(2)
card interagisce con candidati di partiti adirittura.

chiedere alla prof sarebbe come dire dammi la soluzione al progetto
 
In questo contesto non è tanto il design pattern a fare la differenza. Hai postato la soluzione nei precenti messaggi. Non ci sono design pattern che fanno ciò che chiedi. Dipende dalla bravura del programmatore nel evitare le catene. La cosa più importante è programmare per interfacce. Come ho detto prova ad applicare il principio di dipendenza inversa. Crea un interfaccia che abbia metodi del tipo: getItem, getNext etc e implementa le concrete per le varie classi (un po' come il design pattern Iterator), successivamente nella classe card, istanzia la concreta e avrai una comunicazione diretta con solo una classe. Usi un db? allora vai di Repository. I colleghi che ti hanno risposto precedentemente, hanno sicuramente più esperienza di me, prenderei davvero sul serio le loro risposte, dato che lavorano in questo settore da molto tempo. Purtroppo hai dato molte informazioni a loro volta molto disconnesse, in cui tuttora faccio fatica a navigare. Fa parte di un ingegnere saper interpretare i dati ed eliminare i superflui. Ti faccio un esempio, il mio collega @Skills07 ti ha chiesto quali pattern hai studiato. Hai fatto una lista di pattern completa ed una di quelli che non hai fatto, io personalmente l'ho trovata confusionaria: perché cappero non hai detto solo quelli che conosci?
Il resto del post segue più o meno la stessa dinamica, capisco il motivo per il quale non volevi mettere il testo, ma un applicativo del genere come dovremmo comprenderlo? Ci sono branche dell'ingegneria del software che si occupano soltanto di come presentare il progetto per renderlo comprensibile, immagino tu lo sappia.

EDIT:
Dato che ci sono ti invito a correggere il titolo con uno che sia inerente alla tua richiesta.Gli UML Unified Modeling Language, è un modello che punta alla standardizzazione mediante notazioni grafiche l'ingegneria di un software, i pattern sono altro...
 
Ultima modifica:
Si ho capito grazie nulla da obiettare, so incassare abbastanza bene le critiche @ilfe98, del resto anche io ho dato dell'innutilità alle risposte che mi avevi dato prima, siamo pari. ?

Inizio con il semplice model view controller, implemento il singleton e il factory e il data access oject per il resto mi tocca vederlo successivamente ma almeno arrivo al prodotto finito.
 
perdonami, io ho fatto una domanda precisa ed è stata risposta la lista della spesa.
La mia domanda è molto semplice? quali design pattern vi ha fatto vedere durante il corso? Se lo ha fatto assolutamente credo che vi abbia anche fatto vedere degli esempi concreti, altrimenti perdonami il corso resta inutile se ti spiego un pattern senza fartelo vedere applicato.
In questo caso dovrai fare la gestione software in maniera accurata, precisa e dettagliata.
Tra l'altro in che linguaggio devi scrivere codesto software?
Un linguaggio ad oggetti?
 
perdonami, io ho fatto una domanda precisa ed è stata risposta la lista della spesa.
La mia domanda è molto semplice? quali design pattern vi ha fatto vedere durante il corso? Se lo ha fatto assolutamente credo che vi abbia anche fatto vedere degli esempi concreti, altrimenti perdonami il corso resta inutile se ti spiego un pattern senza fartelo vedere applicato.
In questo caso dovrai fare la gestione software in maniera accurata, precisa e dettagliata.
Tra l'altro in che linguaggio devi scrivere codesto software?
Un linguaggio ad oggetti?
Scusa mi hai chiesto i pattern quelli sono. Va be. Tra tutti quello che si avvicina di più al requisito della low coupling è la dependency injection. Comunque anche googlando la soluzione non si trova. Dovrò rivedere i requisiti senza tanto girarci attorno. Ci dormo su e domani se trovo la soluzione la posto.
 
comunque un consiglio da dev in primis (perchè capisco la mancata esperienza, ma rivedi anche il tuo sitoweb http://nicolapaganotti.net/index)
di cui hai un errore Php appena lo apri... Poi grafica orribile (almeno usare bootstrap 5 etc)
Programmatore junior si scrive cosi e non YUNIOR.

Dato che nell'altro thread dici che le aziende possono cercare referenze sul web, ecco quella non è una buona referenza (ti prenderebbero per un pessimo frontendista).

Ti mostro un esempio del mio website personale, da freelancer che uso x fare qualche lavoretto quando ho tempo:


giusto x farti vedere quanto rendi affascinante il tuo profilo x le aziende.
Quanto ai patterns ancora una volta non hai risposto alla domanda, ok che ve li ha illustrati tutti.
Ma qualche esempio ve l'ha fatto vedere???
 
Si ho capito grazie nulla da obiettare, so incassare abbastanza bene le critiche @ilfe98, del resto anche io ho dato dell'innutilità alle risposte che mi avevi dato prima, siamo pari. ?

Inizio con il semplice model view controller, implemento il singleton e il factory e il data access oject per il resto mi tocca vederlo successivamente ma almeno arrivo al prodotto finito.
No ma tranquillo, non si capiva dove volevi arrivare, figurati se potevo dare buone risposte, dovevo essere un indovino.
Comunque in questo contesto la programmazione per interfaccia ti consente anche di evitare di dipendere da oggetti che sono a livello più basso. In caso di modifiche dovrai modificare soltanto la classe concreta che ritorna gli oggetti
 
Ok per adesso uso MVC Dao adapter singleton, factory e state
Comunque è un problema di architettura non di pattern da utilizzare. Ma non mi viene altro in mente se non fare a meno delle composizioni ma poi il tutto sarebbe collegato con poco senso.
Ci dormo su e vi aggiorno se c'è una soluzione altrimenti lo tengo così e spero che che mi dia punti lo stesso.
 
Quindi stai usando model view controller? Non devi scrivere sto software in Java o altro?
 
E io e front end non andiamo molto d'accordo. Il sito l'ho buttato li così. Sono un programmatore di backend PLSQL di Oracle db NOSQL e infatti si capisce della schifezza di curriculum e del non saper progettare a parte MVC. D'altronde ho detto e smesso di essere un pessimo informatico. Meglio cosi che vivere nel castello dei bei sogni e dirsi continuamente sono bravo e capace più di altri. Non mi riferisco a nessuno di voi ma in generale.
--- i due messaggi sono stati uniti ---
Quindi stai usando model view controller? Non devi scrivere sto software in Java o altro?
Si scusami da scrivere in Java usando le javafx e database mysql.
È model view controller nel senso che la gui la sviluppo con scene builder che ha anche i controller e i models con Dao.
Comunque devo riuscire a imparare qualcosa da questo progetto non solo MVC perché è qui che si vede chi conosce i pattern e sa modellare bene i requisiti da chi sa programmare e basta.
Ho degli esempi ma su lucidi.
 
Ultima modifica:
E io e front end non andiamo molto d'accordo. Il sito l'ho buttato li così. Sono un programmatore di backend PLSQL di Oracle db NOSQL e infatti si capisce della schifezza di curriculum e del non saper progettare a parte MVC. D'altronde ho detto e smesso di essere un pessimo informatico. Meglio cosi che vivere nel castello dei bei sogni e dirsi continuamente sono bravo e capace più di altri. Non mi riferisco a nessuno di voi ma in generale.
--- i due messaggi sono stati uniti ---

Si scusami da scrivere in Java usando le javafx e database mysql.
È model view controller nel senso che la gui la sviluppo con scene builder che ha anche i controller e i models con Dao.
Comunque devo riuscire a imparare qualcosa da questo progetto non solo MVC perché è qui che si vede chi conosce i pattern e sa modellare bene i requisiti da chi sa programmare e basta.
Dato che utilizzerai un dB immagino che potrai optare per un architettura three tier. Leggi bene il pattern: Repository in questo contesto è ottimo e ti aiuterà tantissimo nella progettazione. Ho consegnato poc'anzi il mio progetto di Ing. Del software adottando quel pattern
 
Allora partiamo dal presupposto che Java fx è un po’ un idea vecchia.
Le gui le puoi scrivere con Window builder un plugin x eclisse (se esiste ancora).
Per fare il backendista serve esperienza e scrivere pochissime linee di codice x essere efficente.
Non mi pare niente di difficile sto progetto parti intanto con le entità che saranno le tue classi ed identifica quelle.
Poi su quelle che saranno i tuoi model inizi a costruire il database mysql e occhio alla sql injection nel fare le query
 
Allora partiamo dal presupposto che Java fx è un po’ un idea vecchia.
Le gui le puoi scrivere con Window builder un plugin x eclisse (se esiste ancora).
Per fare il backendista serve esperienza e scrivere pochissime linee di codice x essere efficente.
Non mi pare niente di difficile sto progetto parti intanto con le entità che saranno le tue classi ed identifica quelle.
Poi su quelle che saranno i tuoi model inizi a costruire il database mysql e occhio alla sql injection nel fare le query

Si Boss! procedo come hai detto. Fin qui tutto bene.
 
Pubblicità
Pubblicità
Indietro
Top