Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Qrevo Curv 2 Flow è l'ultima novità di casa Roborock per la pulizia di casa: un robot completo, forte di un sistema di lavaggio dei pavimenti basato su rullo che si estende a seguire il profilo delle pareti abbinato ad un potente motore di aspirazione con doppia spazzola laterale
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Abbiamo guidato per diversi giorni la Alpine A290, la prima elettrica del nuovo corso della marca. Non è solo una Renault 5 sotto steroidi, ha una sua identità e vuole farsi guidare
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Abbiamo provato a fondo il nuovo Magic 8 Lite di HONOR, e per farlo siamo volati fino a Marrakech , dove abbiamo testato la resistenza di questo smartphone in ogni condizione possibile ed immaginabile. Il risultato? Uno smartphone praticamente indistruttibile e con un'autonomia davvero ottima. Ma c'è molto altro da sapere su Magic 8 Lite, ve lo raccontiamo in questa recensione completa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 19-05-2006, 19:25   #1
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
proposta di refactoring per smaltire un po' Grid

mi sono letto tutto il codice di Grid: l'ho trovato fatto abbastanza bene (molto semplice), ma come tutti sappiamo è una classe troppo grossa; leggendo il codice sono giunto alla conclusione che Grid si occupa essenzialmente di due compiti:
1) gestione della griglia (banalmente la matrice di gemme, sulla quale però sono definite molte operazioni anche complesse a causa per esempio delle big gems)
2) sistema di gravità

e adesso naturalmente sta per aggiungersi un nuovo compito minore, ovvero il controllo sul numero di candelotti di dinamite (massimo 3 mi sembra); e forse sarebbe bene spostarlo in una classe più "alta" come GridController

per dividere la classe Grid, che ne pensate se mettiamo il codice per la gestione della gravità in una nuova classe GravitySystem? secondo voi potrebbe semplificare Grid significativamente? mi sembrerebbe una buona idea perché a quel punto a Grid rimarrebbe l'unico compito della gestione della matrice, e come design sarebbe assolutamente perfetto.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2006, 19:34   #2
cisc
Senior Member
 
L'Avatar di cisc
 
Iscritto dal: Nov 2002
Città: Cosenza --> Roma
Messaggi: 853
a mio avviso dopo il refactoring relativo al rendere le bigGem Droppable, seguendo il concetto proposto da Bonfo secondo il quale devono essere le droppable a sapere se possono muoversi e dove, grid si semplificherà notevolmente...secondo me il tuo refactoring è ancora YAGNI, potrebbe essere utile in seguito, ma adesso andrebbe a banalizzare il ruolo di grid....
__________________
GNU MyServer Wants YOU!!
We live thinking we will never die. We die thinking we had never lived. Jason Becker
cisc è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2006, 19:40   #3
Ufo13
Senior Member
 
L'Avatar di Ufo13
 
Iscritto dal: Nov 2005
Messaggi: 1545
Quote:
Originariamente inviato da cisc
a mio avviso dopo il refactoring relativo al rendere le bigGem Droppable, seguendo il concetto proposto da Bonfo secondo il quale devono essere le droppable a sapere se possono muoversi e dove, grid si semplificherà notevolmente...secondo me il tuo refactoring è ancora YAGNI, potrebbe essere utile in seguito, ma adesso andrebbe a banalizzare il ruolo di grid....

Non sono molto d'accordo... Secondo me non è troppo YAGNI direi
Ufo13 è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2006, 20:23   #4
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
allora aspettiamo di vedere cosa succede a Grid dopo il refactoring e vediamo se è ancora il caso di attuare questa mia mezza idea.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2006, 01:37   #5
Bonfo
Senior Member
 
L'Avatar di Bonfo
 
Iscritto dal: Nov 2005
Città: Bologna
Messaggi: 1303
Quote:
Originariamente inviato da 71104
allora aspettiamo di vedere cosa succede a Grid dopo il refactoring e vediamo se è ancora il caso di attuare questa mia mezza idea.
Anche secondo me non è così YANGI....comunque, se andate nel post Action e State, era stata proposto addirttura un Action adibita a questo compito.

Inoltre ripeto in questa sede che una delle cose che semplificherebbe al massimo Grid sarebbe trasformala da una classe che gestisce un'insieme di Celle ad un'iniseme di Droppable.
Sparirebbe la lista di BigGems che deve essere mantenuta per ricordarsi quale BigGem sono già state visitate, evitando così i numerosi clicli di controllo per gestire questa cosa
__________________
Software engineer
Bonfo's Blog
Bonfo è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2006, 11:47   #6
cisc
Senior Member
 
L'Avatar di cisc
 
Iscritto dal: Nov 2002
Città: Cosenza --> Roma
Messaggi: 853
secondo me, rendendo le bigGem droppable, e seguendo il concetto per cui le bigGem non sono un agglomerato di gemme, ma delle gemme più grandi (come anche il nome suggerisce), è inevitabile trasformare grid in modo che gestisca un insieme di Droppable e non un insieme di celle......
__________________
GNU MyServer Wants YOU!!
We live thinking we will never die. We die thinking we had never lived. Jason Becker
cisc è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2006, 13:32   #7
Bonfo
Senior Member
 
L'Avatar di Bonfo
 
Iscritto dal: Nov 2005
Città: Bologna
Messaggi: 1303
Quote:
Originariamente inviato da cisc
secondo me, rendendo le bigGem droppable, e seguendo il concetto per cui le bigGem non sono un agglomerato di gemme, ma delle gemme più grandi (come anche il nome suggerisce), è inevitabile trasformare grid in modo che gestisca un insieme di Droppable e non un insieme di celle......
Che bello
__________________
Software engineer
Bonfo's Blog
Bonfo è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2006, 14:20   #8
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
Quote:
Originariamente inviato da cisc
secondo me, rendendo le bigGem droppable, e seguendo il concetto per cui le bigGem non sono un agglomerato di gemme, ma delle gemme più grandi (come anche il nome suggerisce), è inevitabile trasformare grid in modo che gestisca un insieme di Droppable e non un insieme di celle......
sarei favorevole, ma cè da tenere conto che la gravità va applicata riga per riga, altrimenti non funziona
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2006, 15:39   #9
Bonfo
Senior Member
 
L'Avatar di Bonfo
 
Iscritto dal: Nov 2005
Città: Bologna
Messaggi: 1303
Quote:
Originariamente inviato da thebol
sarei favorevole, ma cè da tenere conto che la gravità va applicata riga per riga, altrimenti non funziona


allora a che cosa serve il metodo applayGravity che c'è in AbstractDroppable??

Forse ho capito male io
__________________
Software engineer
Bonfo's Blog
Bonfo è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2006, 16:10   #10
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Quote:
Originariamente inviato da 71104
per dividere la classe Grid, che ne pensate se mettiamo il codice per la gestione della gravità in una nuova classe GravitySystem? secondo voi potrebbe semplificare Grid significativamente? mi sembrerebbe una buona idea perché a quel punto a Grid rimarrebbe l'unico compito della gestione della matrice, e come design sarebbe assolutamente perfetto.
Si', e' una buona idea, sono letteralmente mesi che ci penso e non l'ho mai fatto. Appena abbiamo finito con le BigGems e' un passo decisamente fattibile.
fek è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2006, 18:12   #11
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
Quote:
Originariamente inviato da Bonfo


allora a che cosa serve il metodo applayGravity che c'è in AbstractDroppable??

Forse ho capito male io
ricordavo che una volta era cosi...
il giro nuovo non lo conosco molto bene, magari ora funziona in ogni caso
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 21-05-2006, 12:22   #12
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
stavo valutando il refactoring di action e state, e mi sarebbe molto comodo avere una action per la gravità(quindi loggabile), da chiamare negli state.

Non so se convergerebbe in un GravitySistem, ma cmq provo a vedere cosa ne viene fuori.
thebol è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Roborock Qrevo Curv 2 Flow: ora lava con un rullo Roborock Qrevo Curv 2 Flow: ora lava con un rull...
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite Alpine A290 alla prova: un'auto bella che ti fa ...
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile Recensione HONOR Magic 8 Lite: lo smartphone ind...
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora Sony WF-1000X M6: le cuffie in-ear di riferiment...
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI Snowflake porta l'IA dove sono i dati, anche gra...
Meta cambia rotta sul metaverso: Horizon...
Zeekr debutta in Italia con Jameel Motor...
Robotaxi sotto controllo remoto: Waymo a...
Ubisoft continua i tagli: 40 licenziamen...
PromptSpy: il primo malware Android che ...
Navigare all'estero con costi accessibil...
Boom del fotovoltaico in Africa: +54% in...
Cisco mette l'IA agentica al centro con ...
Volete una microSD da 400GB SanDisk a me...
Artemis II: il razzo spaziale NASA SLS e...
A volte basta poco: via muffa e umidit&a...
4 portatili con 32GB di RAM e 1TB di SSD...
Frenata sull'intesa tra NVIDIA e OpenAI:...
Sony chiude Bluepoint Games dopo la canc...
Pos, addio per sempre agli scontrini: ec...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 12:26.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v