Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
vivo X300 Pro rappresenta un'evoluzione misurata della serie fotografica del produttore cinese, con un sistema di fotocamere migliorato, chipset Dimensity 9500 di ultima generazione e l'arrivo dell'interfaccia OriginOS 6 anche sui modelli internazionali. La scelta di limitare la batteria a 5.440mAh nel mercato europeo, rispetto ai 6.510mAh disponibili altrove, fa storcere un po' il naso
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2 è la nuova handheld PC gaming con processore AMD Ryzen Z2 Extreme (8 core Zen 5/5c, GPU RDNA 3.5 16 CU) e schermo OLED 8,8" 1920x1200 144Hz. È dotata anche di controller rimovibili TrueStrike con joystick Hall effect e una batteria da 74Wh. Rispetto al dispositivo che l'ha preceduta, migliora ergonomia e prestazioni a basse risoluzioni, ma pesa 920g e costa 1.299€ nella configurazione con 32GB RAM/1TB SSD e Z2 Extreme
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
A re:Invent 2025, AWS mostra un’evoluzione profonda della propria strategia: l’IA diventa una piattaforma di servizi sempre più pronta all’uso, con agenti e modelli preconfigurati che accelerano lo sviluppo, mentre il cloud resta la base imprescindibile per governare dati, complessità e lock-in in uno scenario sempre più orientato all’hybrid cloud
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 24-06-2006, 23:20   #1
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
ditemi voi che dovrei fare...

ecco un perfetto esempio del perché ci siamo bloccati:
Codice:
    public void testFlashGemDeleteFlashGem()
    {
        insertAndUpdate(createFlashingGem(), 13, 0);
        insertAndUpdate(createFlashingGem(), 12, 0);
        insertAndUpdate(createGem(DIAMOND), 11, 0);
        insertAndUpdate(createGem(DIAMOND), 13, 7);
        insertAndUpdate(createFlashingGem(), 13, 2);

        insertAndDropGemsPair();
        makeAllGemsFall();

        controller.update(environment.getTimer().getTime());

        assertNull(grid.getDroppableAt(13, 2));
        assertNull(grid.getDroppableAt(13, 0));
        assertEquals(grid.getDroppableAt(12, 0).getGridObject().getColor(), DIAMOND);
        assertEquals(grid.getDroppableAt(13, 7).getGridObject().getColor(), DIAMOND);
    }
mi vorreste spiegare che cavolo è sta porcheria? che fa? boh... ora mi trovo alle prese co sto coso che in seguito ad un mio refactoring non passa... e io secondo voi che dovrei fare? lo commento? ho già fatto praticamente una STRAGE di test commentati, io non lo so... -_-'

eh, ma qui ogni volta che il team viene richiamato all'attenzione scompaiono subito tutti e ci si blocca di nuovo... e grazie al !!
sapete che vi dico? lo commento e committo; tanto il progetto è ufficialmente chiuso, col codice possiamo farci tutto quello che vogliamo e il mio refactoring è sicuramente più utile di quel test criptico. "testFlashGemDeleteFlashGem", un nome un perché: ma per testare che una flash cancellasse un'altra flash, non bastava piazzare due flash una accanto all'altra, aggiornare e asserire? potevano essere quattro istruzioni, eh...

EDIT: a proposito, il test non passa, ma le flash cancellano ancora le flash; ditemi voi...

Ultima modifica di 71104 : 24-06-2006 alle 23:23.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 24-06-2006, 23:26   #2
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
ennò, neanche per sogno, perché il repository al momento non è up...
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 25-06-2006, 00:44   #3
jappilas
Senior Member
 
L'Avatar di jappilas
 
Iscritto dal: Apr 2003
Città: Genova
Messaggi: 4739
provando a riguardare i test anch'io...

...mi sa che c'è un po' di rumenta anche in testgameloop.java, ad es: le parti evidenziate di questi test, hanno senso in quel punto?
Codice:
    public void testSelectVersusModeMenuItem() throws IOException
    {
        [.....]assertTrue("The GameLoop must be running", gameLoop.inGameLoop());
        
        //TODO usare il mapping di config
        //P1.DOWN -> KEY_S, P1.BLOW-> KEY_E
        Event event = Event.create(Event.Code.KEY_E, Event.State.PRESSED);
        gameLoop.getPlayerOneInput().notify(event);
        assertNull("The event blow must not generate a Event", gameLoop.getPlayerOneInput().extractEvent());
    }
    
    public void testSelectAdvancedModeMenuItem() throws IOException
    {
       [.....]assertTrue("The GameLoop must be running", gameLoop.inGameLoop());
        
        //TODO usare il mapping di config
        //P1.DOWN -> KEY_S, P1.BLOW-> KEY_E
        Event event = Event.create(Event.Code.KEY_E, Event.State.PRESSED);
        gameLoop.getPlayerOneInput().notify(event);
        assertNotNull("The event blow must not generate a Event", gameLoop.getPlayerOneInput().extractEvent());
    }
Quote:
Originariamente inviato da 71104
ma per testare che una flash cancellasse un'altra flash, non bastava piazzare due flash una accanto all'altra, aggiornare e asserire? potevano essere quattro istruzioni, eh...
in teoria, direi di sì
[mind reading mode]
in pratica , probabilmente chi ha scritto quel test voleva accertarsi che la flash desse la priorità all' altra flash senza cancellare pure la gemma e senza scrivere un altro test ...
[/mind reading mode]
__________________
Jappilas is a character created by a friend for his own comic - I feel honored he allowed me to bear his name
Saber's true name belongs to myth - a Heroic Soul out of legends, fighting in our time to fullfill her only wish
Let her image remind of her story, and of the emotions that flew from my heart when i assisted to her Fate

Ultima modifica di jappilas : 25-06-2006 alle 01:00.
jappilas è offline   Rispondi citando il messaggio o parte di esso
Old 25-06-2006, 00:54   #4
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
bah, io sono fin troppo paziente: sono riuscito a committare senza commentare quel test; troppo paziente... -.-
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 25-06-2006, 00:56   #5
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
boh... non ho idea di cosa sia quel test... mai visto prima...
ma direi che una cosa assolutamente da fare è scrivere delle specie di "linee guida" x come testare certe cose...
ad esempio qualche volta mi è capitato di non sapere come fare un test perchè i test che facevano qualcosa simile erano completamente diversi l'uno con l'altro...
alla fine pensavo di aver capito come fare e invece...kazzi... non fungeva il test....
questo perchè con i vari refactoring mi sa che si è perso un pò "il filo" e ci sono test che usano ancora dei vecchi metodi per testare quando in realtà utilizzando i nuovi metodi aggiunti nelle varie classi sarebbero molto + semplici....

cmq... tenete duro fino a mercoledì ke finalmente potrò ricominiciare a lavorare su diamonds...
anzi... forse giovedì pure... dipende da quello ke sarà rimasto del mio cervello dopo aver studiato 8 miliardi di leggi diverse

EDIT: dimenticavo... soprattutto dovrebbe essere OBBLIGATORIO scrivere il messaggio nell'assert...altrimenti non si capisce una mazza di cosa faccia quel test...
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 25-06-2006, 01:07   #6
jappilas
Senior Member
 
L'Avatar di jappilas
 
Iscritto dal: Apr 2003
Città: Genova
Messaggi: 4739
Quote:
Originariamente inviato da ^TiGeRShArK^
cmq... tenete duro fino a mercoledì ke finalmente potrò ricominiciare a lavorare su diamonds...
anzi... forse giovedì pure... dipende da quello ke sarà rimasto del mio cervello dopo aver studiato 8 miliardi di leggi diverse
ciao danilo, noi ti si aspetta speranzosi
però ho l' impressione che quello che deve resistere e tenere duro sia tu... mi sa che uno studio pesante più di quello che stai facendo non ci sia...
Quote:
EDIT: dimenticavo... soprattutto dovrebbe essere OBBLIGATORIO scrivere il messaggio nell'assert...altrimenti non si capisce una mazza di cosa faccia quel test...
mi pare fosse anche tra i dettami di fek o vicius di un po' di tempo fa, in effetti...
__________________
Jappilas is a character created by a friend for his own comic - I feel honored he allowed me to bear his name
Saber's true name belongs to myth - a Heroic Soul out of legends, fighting in our time to fullfill her only wish
Let her image remind of her story, and of the emotions that flew from my heart when i assisted to her Fate
jappilas è offline   Rispondi citando il messaggio o parte di esso
Old 25-06-2006, 01:27   #7
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
Quote:
Originariamente inviato da jappilas
ciao danilo, noi ti si aspetta speranzosi
però ho l' impressione che quello che deve resistere e tenere duro sia tu... mi sa che uno studio pesante più di quello che stai facendo non ci sia...
eh si lo so....
mi sono iscritto ad ingegneria per non aver NULLA a che fare con leggi et similia e ora mi ritrovo a studiare 'ste schifezze che al solo pensiero mi viene il ....
Spero solo di aver conservato un minimo di sanità mentale xkè in quest'anno mi sono letteralmente macinato il cervello e spero che siano rimasti giusto due o 3 neuroni per permettermi di riagganciarmi al team

e ora vado a letto ke sto scoppiando...
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 25-06-2006, 01:44   #8
Bonfo
Senior Member
 
L'Avatar di Bonfo
 
Iscritto dal: Nov 2005
Città: Bologna
Messaggi: 1303
Già, i test

Non mi tiro fuori...anch'io a volte ho fatto porcate di test che la metà bastava.
Il problema è già venuto fuori varie volte:
http://www.hwupgrade.it/forum/showthread.php?t=1223385

Direi che i test sono da rifattorizzare tutti...e quello sarò un'altro lavoro da paura
__________________
Software engineer
Bonfo's Blog
Bonfo è offline   Rispondi citando il messaggio o parte di esso
Old 27-06-2006, 22:51   #9
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
CHE INUMANA PORCHERIA... O_______O'''

Codice:
    public void testCrushesCounters()
    {
        insertAndUpdate(createGem(EMERALD), 13, 2);
        insertAndUpdate(createGem(DIAMOND), 12, 2);
        insertAndUpdate(createChest(DIAMOND), 11, 2);
        insertAndUpdate(createChest(EMERALD), 10, 2);

        insertAndUpdate(createGem(RUBY), 9, 2);

        insertAndDropGemsPair();
        makeAllGemsFall();

        controller.update(environment.getTimer().getTime());

        checkCountersValues(grid, 5, 1, 1);

        makeAllGemsFall();

        environment.getTimer().advance(
            environment.getConfig().getInteger("DelayBetweenCrushes"));

        controller.update(environment.getTimer().getTime());

        checkCountersValues(grid, 3, 2, 2);

        makeAllGemsFall();

        environment.getTimer().advance(
            environment.getConfig().getInteger("DelayBetweenCrushes"));
        controller.update(environment.getTimer().getTime());

        insertAndUpdate(createGem(DIAMOND), 13, 1);
        insertAndUpdate(createChest(DIAMOND), 12, 1);

        insertAndUpdate(createGem(RUBY), 11, 1);

        environment.getTimer().advance(
            environment.getConfig().getInteger("NewGemDelay"));
        controller.update(environment.getTimer().getTime());

        makeAllGemsFall();
        controller.update(environment.getTimer().getTime());

        checkCountersValues(grid, 6, 1, 1);
    }
ma a che razza di livello è testato il codice implicato in quell'affare, qualunque esso sia...? :|

ma come può Diamond Crush contenere una cosa simile? :|

Bonfo, diciamo pure che sono da refattorizzare solo per metà: l'altra metà è da rifare -.-
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 27-06-2006, 22:55   #10
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
secondo me test come quello che ho appena sgamato e che ho quotato qui sopra sono nati in quel periodo che cercavamo di riprodurre situazioni varie per le big gems; quel test credo che cerci di riprodurre qualche assurdissima situazione in cui avevamo un bug... ma non è così che si deve fare: in queste situazioni trovare le condizioni che riproducono il bug è solo il primo passo: successivamente bisogna capire la causa del bug, ovvero quale linea di codice esattamente manca per evitarlo (o quale linea di troppo va cancellata); nel caso si debba aggiungere una linea, questa va testata nella maniera più semplice, stretta e diretta possibile, mentre nel caso se ne debba togliere una allora va rimosso anche il test che richiede la sua presenza.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 28-06-2006, 08:39   #11
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
I test non sono necessariamente legati a un bug: molto spesso rappresentano la "formalizzazione" dei requisiti richiesti (dal customer).

Comunque sono d'accordo: è un test enorme, e aggiungo che un nome più esplicativo sarebbe stato meglio.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 28-06-2006, 09:16   #12
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
è un test che deve simulare 2 crush(con il chainCounter che cresce), e poi un altro dopo aver inserito la gemsPair(il chainCounter deve essersi resettato).

i tanti check, sono stati usati per verificare l'evolversi dei contatori.

Ho a volte trovato dei test che passavano perche testavano la condizione sbagliata, o cose simili. Per questo spesso uso piu assert, per dimostrare che prima la situazione è in un modo, e poi in un altro.(classico esempio andare a vedere se nella posizione x,y non ci deve essere la gemma, si sbagliano le coordinate e il test passa per sbaglio..)


Sicuramente si poteva fare il tutto in 2 test, ho fatto cosi, perche nel secondo avrei dovuto replicare quasi tutto il codice del primo per arrivare ad avere il chainCrush a 2(non avendo accesso al setter..)
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 28-06-2006, 10:22   #13
Bonfo
Senior Member
 
L'Avatar di Bonfo
 
Iscritto dal: Nov 2005
Città: Bologna
Messaggi: 1303
Quote:
Originariamente inviato da thebol
è un test che deve simulare 2 crush(con il chainCounter che cresce), e poi un altro dopo aver inserito la gemsPair(il chainCounter deve essersi resettato).

i tanti check, sono stati usati per verificare l'evolversi dei contatori.

Ho a volte trovato dei test che passavano perche testavano la condizione sbagliata, o cose simili. Per questo spesso uso piu assert, per dimostrare che prima la situazione è in un modo, e poi in un altro.(classico esempio andare a vedere se nella posizione x,y non ci deve essere la gemma, si sbagliano le coordinate e il test passa per sbaglio..)


Sicuramente si poteva fare il tutto in 2 test, ho fatto cosi, perche nel secondo avrei dovuto replicare quasi tutto il codice del primo per arrivare ad avere il chainCrush a 2(non avendo accesso al setter..)
Capita spesso ... ecco perchè bisogna fare refactoring anche dei test e usare gli extract method anche nei test.
Io sono il primo che se lo scorda e preferisce la soluzione che hai usato tu. Ma se non ci abituiamo inmodo diversoil gioco si fa duro.
__________________
Software engineer
Bonfo's Blog
Bonfo è offline   Rispondi citando il messaggio o parte di esso
Old 28-06-2006, 10:28   #14
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
Quote:
Originariamente inviato da Bonfo
Capita spesso ... ecco perchè bisogna fare refactoring anche dei test e usare gli extract method anche nei test.
Io sono il primo che se lo scorda e preferisce la soluzione che hai usato tu. Ma se non ci abituiamo inmodo diversoil gioco si fa duro.
in effetti servirebbero dei metodi helper per lavorare sulla griglia(alla makeAllGemFAll()....)
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 28-06-2006, 11:03   #15
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Basterebbe spostare tanti metodi utili in un BaseTest, e far discendere i test da questa classe.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 28-06-2006, 11:14   #16
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
Quote:
Originariamente inviato da cdimauro
Basterebbe spostare tanti metodi utili in un BaseTest, e far discendere i test da questa classe.
Vero, ma ci sono dei metodi facilmente generalizzabili(makeallgemFall).

Altri meno..perche devono essere fatti in modo da lasciare pulita la griglia(senza o con la gemsPair?), e devono lasciare la griglia in uno stato ben definito(sempre lo stesso?), in modo che chi le usi dopo sappia cosa fare.

Altrimenti, si sposta solo il problema..
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 28-06-2006, 19:23   #17
Bonfo
Senior Member
 
L'Avatar di Bonfo
 
Iscritto dal: Nov 2005
Città: Bologna
Messaggi: 1303
Quote:
Originariamente inviato da thebol
Vero, ma ci sono dei metodi facilmente generalizzabili(makeallgemFall).

Altri meno..perche devono essere fatti in modo da lasciare pulita la griglia(senza o con la gemsPair?), e devono lasciare la griglia in uno stato ben definito(sempre lo stesso?), in modo che chi le usi dopo sappia cosa fare.

Altrimenti, si sposta solo il problema..
Per me bisogna arrivare ad avere una classe di Utility per operare sulla griglia.
Ovvero nel costruttore della GridTestUtility si passa la griglia e dopo la si può settare come si pare (presenza o meno della gemsPair) ed effettuare tutte le operazioni "general-purpose"
__________________
Software engineer
Bonfo's Blog
Bonfo è offline   Rispondi citando il messaggio o parte di esso
Old 28-06-2006, 19:45   #18
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da thebol
i tanti check, sono stati usati per verificare l'evolversi dei contatori.
ennò, non ci siamo... se fai così vuol dire che stai testando più d'una funzionalità del programma; ogni test deve testare una sola funzionalità e lo deve fare nella maniera più diretta possibile; il TDD in forma pura (quello che faccio sempre io ) prevede un test per ogni riga di codice, contando ovviamente solo le righe significative (non serve testare le parentesi graffe e le righe vuote insomma )

Quote:
Ho a volte trovato dei test che passavano perche testavano la condizione sbagliata, o cose simili. Per questo spesso uso piu assert, per dimostrare che prima la situazione è in un modo, e poi in un altro.(classico esempio andare a vedere se nella posizione x,y non ci deve essere la gemma, si sbagliano le coordinate e il test passa per sbaglio..)
e come mai usare più asserzioni risolverebbe la cosa...? quando scrivi i test tu non puoi partire dal presupposto che tu potresti sbagliare a scrivere il test stesso oltre al codice. a parte che non è bene scrivere numeri costanti nel codice e una delle prossime cose da fare (dopo il sistema di log, che è più urgente) sarà sostituirli tutti con costanti e formule che operano sulle costanti, ma comunque anche se sbagli a scrivere un test e questo passa i casi sono due:
1) fallisce il corrispettivo "contro-test", ovvero il test che verifica che il codice testato non solo funzioni in un certo modo, ma che non funzioni in nessun altro modo
2) a runtime ti accorgi tu stesso che il programma non funziona

Quote:
Sicuramente si poteva fare il tutto in 2 test
le righe di codice testate da quel test sono solo 2 escludendo parentesi graffe e righe vuote?
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 29-06-2006, 08:23   #19
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
Quote:
Originariamente inviato da 71104
1) fallisce il corrispettivo "contro-test", ovvero il test che verifica che il codice testato non solo funzioni in un certo modo, ma che non funzioni in nessun altro modo
raramente fattibile.


Quote:
2) a runtime ti accorgi tu stesso che il programma non funziona
togliamo i test allora? che discorso è?


Quote:
le righe di codice testate da quel test sono solo 2 escludendo parentesi graffe e righe vuote?

non sempre si testano oggetti "finali". A volte si testano entita di livello un po piu alto(da gridController, a playField per esempio), e se ne testa il comportamento(magari poi realizzato da un oggetto), percui il discorso una riga un test, non è un dogma.
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 01-07-2006, 14:02   #20
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da thebol
raramente fattibile.
così raramente che io lo faccio sempre. EDIT: quasi sempre
più fattibile di quello che pensi comunque

Quote:
togliamo i test allora? che discorso è?
non è quello l'unico vantaggio dell'usare i test

Quote:
non sempre si testano oggetti "finali". A volte si testano entita di livello un po piu alto(da gridController, a playField per esempio), e se ne testa il comportamento(magari poi realizzato da un oggetto), percui il discorso una riga un test, non è un dogma.
mock
71104 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria Recensione vivo X300 Pro: è ancora lui il...
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'...
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti AWS re:Invent 2025: inizia l'era dell'AI-as-a-Se...
Cos'è la bolla dell'IA e perché se ne parla Cos'è la bolla dell'IA e perché se...
BOOX Palma 2 Pro in prova: l'e-reader diventa a colori, e davvero tascabile BOOX Palma 2 Pro in prova: l'e-reader diventa a ...
Il nuovo OnePlus Nord 6 è vicino al debu...
Tesla svela i risultati del Q4: conferma...
Nuova rimodulazione da Fastweb: fino a 3...
La NVIDIA RTX 5090 potrebbe presto costa...
ASUS non produrrà più smar...
CoopVoce sta per lanciare il 5G: ecco qu...
Factorial, azienda di batterie allo stat...
Le specifiche fuori di testa della Yangw...
I numeri incredibili di Xiaomi: nel 2025...
In Cina è pronto il parco fotovol...
Neuralink accelera: produzione di massa ...
Starlink abbassa l'orbita di migliaia di...
Dal MIT una nuova batteria per auto elet...
Adam Mosseri parla di IA su Instagram: l...
Suonerie personalizzate e Tone Store: il...
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: 04:06.


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