Torna indietro   Hardware Upgrade Forum > Software > Programmazione

 Hisense 55U7SE: tuttofare e accessibile, il MiniLED per film, sport e gioco
Hisense 55U7SE: tuttofare e accessibile, il MiniLED per film, sport e gioco
MiniLED di fascia media con local dimming a 192 zone, 144 Hz nativi e audio firmato Devialet. La prova strumentale riscontra colori affidabili e gaming reattivo, per un prodotto molto accessibile e convincente. Ma la soundbar aggiuntiva è quasi d'obbligo
Kindle Scribe Colorsoft: riduce le cornici e diventa a colori, ma il prezzo è alto
Kindle Scribe Colorsoft: riduce le cornici e diventa a colori, ma il prezzo è alto
Amazon porta i colori sul suo Kindle da scrittura più grande: schermo Colorsoft a 11 pollici, processore quad-core, penna premium più reattiva e strumenti IA per le note, sono le note salienti. Il salto di prezzo rispetto al modello in bianco e nero si fa sentire, anche se la percezione è quella di trovarsi di fronte a un prodotto di fascia altissima, per veri appassionati
L'IA cambia tutte le regole della sicurezza tra vulnerabilità e sorveglianza. Intervista al CEO di Proofpoint
L'IA cambia tutte le regole della sicurezza tra vulnerabilità e sorveglianza. Intervista al CEO di Proofpoint
Abbiamo intervistato Sumit Dhawan, CEO di Proofpoint, per capire come stia cambiando il mondo della sicurezza con l'avvento dell'intelligenza artificiale e con il ritmo sempre più serrato a cui vengono trovate vulnerabilità nel software. Un problema significativo, che richiederà del tempo per essere risolto (o quantomeno arginato)
Tutti gli articoli Tutte le news

Vai al Forum
Discussione Chiusa
 
Strumenti
Old 27-11-2005, 22:01   #1
Jocchan
Senior Member
 
L'Avatar di Jocchan
 
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
[CICLO 6] Storia 1

Storia 1: Ogni gemma dovrà avere un colore (tra 5 possibili: bianco, rosso, blu, verde, giallo), a cui corrisponderanno una differente png (rispettivamente diamond, ruby, sapphire, emerald, topaz) ed un differente valore in punteggio (per ora rispettivamente 100, 50, 60, 40, 80), e dovrà riconoscere se nelle vicinanze (diagonali escluse, quindi nelle quattro direzioni principali) ha delle gemme di uguale colore (evento da evidenziare visivamente agendo sulla luminosità delle gemme uguali adiacenti tra loro).
Il colore delle prime sei gemme viene scelto casualmente all'inizio del gioco, e viene inserito in una coda. Ad ogni gemma creata, viene estratto il primo valore e viene creato un nuovo valore casuale che si appende in coda.


Punti cardine da tenere a mente durante i lavori:
  • Mai fare a gara a chi finisce il task per primo, meglio procedere con calma, altrimenti perderemo molto più tempo in seguito
  • Evitiamo di complicarci la vita, esiste di certo una soluzione più semplice di quella che abbiamo pensato di implementare
  • MAI aggiungere elementi non richiesti esplicitamente dai task: se mai serviranno, se ne parlerà nelle prossime storie
  • Comunichiamo il più possibile, se qualcosa non è chiaro discutiamone tutti i dettagli fino ad eliminare ogni dubbio, anche il più insignificante
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam.

Ultima modifica di Jocchan : 28-11-2005 alle 00:21.
Jocchan è offline  
Old 29-11-2005, 17:31   #2
VICIUS
Senior Member
 
L'Avatar di VICIUS
 
Iscritto dal: Oct 2001
Messaggi: 11471
Ecco la lista dei task per questa storia.
Task:
6.1.1: 71104: completato
Aggiungere la possibilita di scegliere quale tipo di gemma deve essere creata da GameGemFactory quando viene chiamata la create. I vari tipi di gemme per ora sono: diamond, ruby, sapphire, emerald, topaz.

6.1.2: ^TiGeRShArK^: completato
La casella dei punti non deve piu riportare il numero di gemme all'interno della griglia. Il nuovo valore è la somma dei punti che ogni singola gemma rappresenta. La tabella con i punti è la seguente:
diamond | ruby | sapphire | emerald | topaz
100 | 50 | 60 | 40 | 80

6.1.3: Ufo13: completato
Aggiungere un metodo per modificare la "luminosità" di uno sprite. Si deve quindi moltiplicare il colore proveniente dalla texture per un colore che ne indica la luminosita

6.1.4: 71104 + DanieleC88: completato
Grid deve aumentare la luminosità delle gemme che hanno almeno un lato in comune con un'altra gemma dello stesso tipo.
(solo pair-programming)

6.1.5: cionci: completato
Aggiungere a GameGemFactory una coda che deve contenere le prossime 6 Gemme da rilasciare.

6.1.6: Ufo13: completato
Quando viene richiesta una nuova gemma GameFemFactory deve restituire quella in testa alla coda ed eliminarla dalla lista. Fatto questo deve essere creato un nuovo valore da appendere in coda

ciao

Ultima modifica di VICIUS : 07-12-2005 alle 18:56.
VICIUS è offline  
Old 29-11-2005, 18:29   #3
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
provo il primo, 1 giorno; ora mi cimento in qualche test, se non ho ben chiaro qualcosa lo posto sul forum.

PS: vicius, non mi ero accorto che mettevi il "ciao " pure in fondo ai task
perché non te lo metti in signature scusa?
71104 è offline  
Old 29-11-2005, 18:30   #4
VICIUS
Senior Member
 
L'Avatar di VICIUS
 
Iscritto dal: Oct 2001
Messaggi: 11471
Quote:
Originariamente inviato da 71104
provo il primo, 1 giorno; ora mi cimento in qualche test, se non ho ben chiaro qualcosa lo posto sul forum.

PS: vicius, non mi ero accorto che mettevi il "ciao " pure in fondo ai task
perché non te lo metti in signature scusa?
Assegnato.

ciao
VICIUS è offline  
Old 29-11-2005, 18:39   #5
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
allora, problema: come faccio il test?
perché idealmente il test dovrebbe chiamare GameGemFactory.create passandogli il nome della texture da caricare e verificare che la Gem restituita contenga la texture giusta, ma come fo a verificare che la texture è quella giusta?
71104 è offline  
Old 29-11-2005, 21:54   #6
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Potresti usare questo metodo per fare i confronti:

gem.getTexture().equals(new Texture(nome_della_gemma))
cionci è offline  
Old 29-11-2005, 21:57   #7
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Anzi...mi sa che così non funziona... Credo per problemi di confronto fra due buffer...
cionci è offline  
Old 29-11-2005, 23:25   #8
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
infatti non funzionerebbe di sicuro perché la nostra classe Texture non overridda il metodo equals... la comparazione risulterebbe sempre falsa...
71104 è offline  
Old 29-11-2005, 23:29   #9
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Controllarlo con il nome avrebbe poco senso...che dici ? Ovviamente andrebbe esposto un metodo getName in Texture...
Anche se, supponendo che la classe Texture funzioni, dovrebbe essere sufficiente...
cionci è offline  
Old 29-11-2005, 23:40   #10
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
io mi prenderei il task 2 tempo previsto 2 giorni (mi tengo sempre largo non si sa mai )
....sempre che non riteniate + opportuno che possa continuare a giochicchiare col Parser (Vedi Thread apposito....)

[EDIT]ovviamente pure io dovrei partire dopo che finisce 71104 mi sa.....
altrimenti come faccio a sommare il valore delle gemme diverse con tutte le gemme uguali???
__________________

Ultima modifica di ^TiGeRShArK^ : 30-11-2005 alle 08:56.
^TiGeRShArK^ è offline  
Old 30-11-2005, 08:11   #11
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Io mi prenoto per il 6.1.5...2 giorni a partire da quando 71104 ha terminato il suo task

Ultima modifica di cionci : 30-11-2005 alle 08:30.
cionci è offline  
Old 30-11-2005, 09:55   #12
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Quote:
Originariamente inviato da cionci
Controllarlo con il nome avrebbe poco senso...che dici ? Ovviamente andrebbe esposto un metodo getName in Texture...
Anche se, supponendo che la classe Texture funzioni, dovrebbe essere sufficiente...
E' una buona soluzione per ora.
fek è offline  
Old 30-11-2005, 09:56   #13
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Quote:
Originariamente inviato da ^TiGeRShArK^
io mi prenderei il task 2 tempo previsto 2 giorni (mi tengo sempre largo non si sa mai )
....sempre che non riteniate + opportuno che possa continuare a giochicchiare col Parser (Vedi Thread apposito....)
Gli Spike sono a parte, i task hanno sempre priorita'.
fek è offline  
Old 30-11-2005, 10:21   #14
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Stavo pensando che io il mio task lo posso fare anche senza il task di 71104... Però mi sono trovato di fronte ad un problema...l'audio...
Non posso inserire il codice per la gestione della coda in GameGemFactory perchè ha bisogno che l'audio sia inizializzato nel costruttore...

fek, che ne dici se promuovo GemFactory da interfaccia a classe base ?
In questo modo implemento la coda lì e verrà ereditata da GameGemFactory e GemFactoryForTesting...
cionci è offline  
Old 30-11-2005, 11:13   #15
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Mi sa che ho semplificato notevolmente tutto... Ho aggiunto una classe GemQueue... Basta che GameGemFactory e GemFactoryForTesting la istanzino...
cionci è offline  
Old 30-11-2005, 11:31   #16
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Quote:
Originariamente inviato da cionci
Mi sa che ho semplificato notevolmente tutto... Ho aggiunto una classe GemQueue... Basta che GameGemFactory e GemFactoryForTesting la istanzino...
Ecco

Bello programmare a interfacce vero? Ti costringe a cercare design piu' semplici.

Hai scritto GemQueue test-driven?
fek è offline  
Old 30-11-2005, 11:37   #17
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Certo... Vorrei anche vedere...
9 test per 4 metodi
cionci è offline  
Old 30-11-2005, 11:37   #18
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
Quote:
Originariamente inviato da fek
Gli Spike sono a parte, i task hanno sempre priorita'.
ok...
ma tanto finchè non viene concluso il task 1 non credo che potrei fare molto.. il mio task si basa proprio sull'assunto che le gemme siano diverse...
intanto farei lo spike, appena 71104 finisce il suo task partirei col mio...
__________________
^TiGeRShArK^ è offline  
Old 30-11-2005, 12:15   #19
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Ragazzi, ricordatevi di scrivere la test list prima di iniziare il task. E questo vale per tutti

Se non l'avete scritta e avete gia' iniziato il task, scrivetela comunque.
fek è offline  
Old 30-11-2005, 12:33   #20
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Questi dovrebbe essere i test più rappresentativi:
Codice:
    public void testTwoGemExtraction()
    {        
        Gem gem1 = new Gem("diamond");
        Gem gem2 = new Gem("diamond");
        
        gemQueue.insertLast(gem1);
        gemQueue.insertLast(gem2);
        Gem extractedGem1 = gemQueue.extractFirst();
        
        assertSame("gems are not the same", gem1, extractedGem1);
        assertEquals("erroneus queue size", 1, gemQueue.queueSize());
        
        Gem extractedGem2 = gemQueue.extractFirst();        
        
        assertSame("gems are not the same", gem2, extractedGem2);
        assertEquals("erroneus queue size", 0, gemQueue.queueSize());
    }

    public void testQueueOverflow()
    {
        gemQueue.insertLast(new Gem("diamond"));
        gemQueue.insertLast(new Gem("diamond"));
        gemQueue.insertLast(new Gem("diamond"));
        gemQueue.insertLast(new Gem("diamond"));
        gemQueue.insertLast(new Gem("diamond"));
        gemQueue.insertLast(new Gem("diamond"));
        try
        {
            gemQueue.insertLast(new Gem("diamond"));
        }
        catch(IllegalArgumentException e)
        {
            return;
        }
        fail("IllegalArgumentException not thrown");
    }
cionci è offline  
 Discussione Chiusa


 Hisense 55U7SE: tuttofare e accessibile, il MiniLED per film, sport e gioco Hisense 55U7SE: tuttofare e accessibile, il Min...
Kindle Scribe Colorsoft: riduce le cornici e diventa a colori, ma il prezzo è alto Kindle Scribe Colorsoft: riduce le cornici e div...
L'IA cambia tutte le regole della sicurezza tra vulnerabilità e sorveglianza. Intervista al CEO di Proofpoint L'IA cambia tutte le regole della sicurezza tra ...
L'Europa conta nella tecnologia e può essere autonoma. Cosa si è detto al Nextcloud Summit 2026 L'Europa conta nella tecnologia e può ess...
Dreame X60 Pro Ultra Complete: i bracci si estendono sempre di più Dreame X60 Pro Ultra Complete: i bracci si esten...
Blue Origin sta ricostruendo velocemente...
La sovranità digitale non è...
ESS obbligatorio da luglio: il rivoluzio...
Batterie Tesla rubate direttamente fuori...
Il Governo statunitense anticipa di 5 an...
Steam Machine costa troppo? Non per i ba...
AWS e Azure sono gatekeeper e vanno rego...
Huawei presenta una nuova infrastruttura...
Logitech G e Activision uniscono le forz...
Snapdragon Summit 2026: ecco quando sara...
Sardegna, debutta il primo treno a idrog...
CXMT non ci salverà dai prezzi de...
Tidal contro la musica creata con l'inte...
Videproiettore compatto XGIMI MoGo 2 Pro...
Narwal rilancia su Amazon per il post-Pr...
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: 05:14.


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