Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione DJI Mini 5 Pro: il drone C0 ultra-leggero con sensore da 1 pollice
Recensione DJI Mini 5 Pro: il drone C0 ultra-leggero con sensore da 1 pollice
DJI Mini 5 Pro porta nella serie Mini il primo sensore CMOS da 1 pollice, unendo qualità d'immagine professionale alla portabilità estrema tipica di tutti i prodotti della famiglia. È un drone C0, quindi in un peso estremamente contenuto e che non richiede patentino, propone un gimbal rotabile a 225 gradi, rilevamento ostacoli anche notturno e autonomia fino a 36 minuti. Caratteristiche che rendono il nuovo drone un riferimento per creator e appassionati
ASUS Expertbook PM3: il notebook robusto per le aziende
ASUS Expertbook PM3: il notebook robusto per le aziende
Pensato per le necessità del pubblico d'azienda, ASUS Expertbook PM3 abbina uno chassis particolrmente robusto ad un pannello da 16 pollici di diagonale che avantaggia la produttività personale. Sotto la scocca troviamo un processore AMD Ryzen AI 7 350, che grazie alla certificazione Copilot+ PC permette di sfruttare al meglio l'accelerazione degli ambiti di intelligenza artificiale
Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo
Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo
Abbiamo provato per diversi giorni una new entry del mercato italiano, la Gowow Ori, una moto elettrica da off-road, omologata anche per la strada, che sfrutta una pendrive USB per cambiare radicalmente le sue prestazioni
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 30-11-2005, 19:13   #81
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Quote:
Originariamente inviato da Jocchan
Per i dialoghi, pensandoci bene sono nettamente a favore della reintroduzione delle virgolette: la leggibilità dello script ci guadagna in maniera notevole.
Fate un pò voi il confronto:

Codice:
Josh says fast "Ciao belli!"
Ice says fast "E chi è 'sto tizio?"
Tizio says fast "Non ne ho idea..."
Codice:
Josh says fast Ciao belli!
Ice says fast E chi è 'sto tizio?
Tizio says fast Non ne ho idea...
Allora direi che se la stringa e' sulla stessa riga va virgolettata, se invece si va a capo, va copiata integrale senza virgolette. Il meglio dei due mondi. Che te ne sembra?
fek è offline   Rispondi citando il messaggio o parte di esso
Old 30-11-2005, 19:55   #82
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
ehm....
per comandi su unica riga non avrei problemi a renderlo anche indipendente dalle virgolette... nel senso che usarle o non usarle darebbe lo stesso risultato...
per comandi su + righe mi sa che dovrei cambiare la logica che ho usato finora.....
cmq finito il task 2 vedo e vi faccio sapere.....
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 30-11-2005, 19:58   #83
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
fek, Jocchan: come ho spiegato la mia soluzione è flessibile sul punto delle virgolette (o perlomeno dovrebbe esserlo a meno di bug ): le virgolette sono opzionali: se ci sono tutto quello che c'è dentro è una stringa, se non ci sono invece ogni parola viene interpretata come singolo parametro.

PS: anche il mio parser è case insensitive: lo StreamTokenizer ha un metodo che converte subito tutto in lower case.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 30-11-2005, 19:59   #84
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da Jocchan
EDIT: Ho provato la soluzione di Tiger e mi piace molto, e vorrei toccare con mano quella di 71104 (che mi sembra anche valida, dato che comunque garantisce una sintassi come quella voluta). Dovrei comunque testarla per dirlo ^^
provala pure: l'ho committata stamattina in extras/Spikes/71104/CommandParser/
è abbastanza flessibile perché permette facilmente di aggiungere comandi in futuro e di implementarli nella apposita classe che dovrebbe essere derivata da CommandImpl.

a proposito, il programmetto di prova, ParserMain, crea una nuova istanza del parser e gli fa parsare il file prova.txt; ne ho messo uno che contiene un paio di comandi; se vuoi giocare un po' col parser posso implementare delle versioni fake dei comandi che mancano (attualmente ho implementato solo wait e una versione di show) che stampano qualche output su System.out.

Ultima modifica di 71104 : 30-11-2005 alle 20:02.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2005, 00:48   #85
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
ok.. ultime novità...
la mia ideuzza funzionava!
Codice:
if(textCommands.contains(commandValue)&&!commandValue.equalsIgnoreCase("Show")){
					parametri = commandValue + " " + parametri;
					commandValue = "Character";
				}
				if (commandValue!=null){
					commandValue = getFirstUpperCase(commandValue);
					CommandInterface command = (CommandInterface)Class.forName("commands."+commandValue).newInstance();
					command.setParameters(parametri);
					command.setText(text);
					command.execute();
				}
			}
questo semplice codice passa il controllo alla classe opportuna che si chiama come il comando (tranne che per i personaggi che sono gestiti dalla classe Character), vengono settati i parametri ed il testo (eventuale) da visualizzare.
Tutte le classi si trovano nel package commands ed ereditano dalla classe CommandInterface (dovrebbe essere un interfaccia.. ma x evitare di riscrivermi lo stesso codice in tutte le classi figlie per ora è una classe )
così facendo, per implementare la gestione di comandi nuovi è sufficiente crearsi una classe nuova nel package commands che estende l'interfaccia CommandInterface.
Inoltre il riconoscimento dei comandi presenti passati e futuri ci viene praticamente gratis senza utilizzare nemmeno un if (a parte quello per capire quali comandi si riferiscono ai personaggi per farli gestire dalla classe character)
ora vedo di committare il codice in un nuovo branch
a domani!

[EDIT]potete scaricare sorgenti e binari dal repository nella cartella extras/spike/TigerShark
Per provarlo basta lanciare il file .bat e modificare il file input.txt che non deve stare + obbligatoriamente su c:\ ma che deve stare nella cartella da dove lanciate il .bat

buon divertimento jocchan
(anche se ora forse sarebbe meglio che anche gli altri dessero un'okkiatina al codice e mi dicano come va )
__________________

Ultima modifica di ^TiGeRShArK^ : 01-12-2005 alle 01:03.
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2005, 11:29   #86
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da fek
Allora direi che se la stringa e' sulla stessa riga va virgolettata, se invece si va a capo, va copiata integrale senza virgolette. Il meglio dei due mondi. Che te ne sembra?
Quindi le sintassi sarebbero questa:
Codice:
Josh says fast "Ciao belli!"
di sicuro (singola linea).

Mentre per l'altro caso le possibilità sarebbero le seguenti:
Codice:
Josh says fast Ciao
belli!
end<newline>
Codice:
Josh says fast Ciao
belli! end<newline>
Codice:
Josh says fast
Ciao belli!
end<newline>
Codice:
Josh says fast
Ciao belli! end<newline>
Quale di queste (anche più di una, eventualmente) adottiamo?

Anche con ATNLR la sintassi sarà case-insensitive (visto stamattina ).
__________________
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 01-12-2005, 11:42   #87
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Quote:
Originariamente inviato da cdimauro
Mentre per l'altro caso le possibilità sarebbero le seguenti:
Codice:
Josh says fast Ciao
belli!
end<newline>
Codice:
Josh says fast Ciao
belli! end<newline>
Codice:
Josh says fast
Ciao belli!
end<newline>
Per semplificare eliminiamo queste due sintassi.

E lasciamo solo la seguente:

Codice:
Josh says fast
Ciao belli! end<newline>
fek è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2005, 14:07   #88
Jocchan
Senior Member
 
L'Avatar di Jocchan
 
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
71104, dopo alcuni problemi con Spartacus sono riuscito (finalmente) a fare il checkout, ed ho scaricato il tuo spike... solo che non riesco a farlo partire (ho provato ad adattare il .bat di Tiger per far partire Parser.class ma non funzia).
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam.
Jocchan è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2005, 20:32   #89
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
siccome quello è un progetto a parte io per farlo partire da Eclipse 3.1 faccio così: cancello il progetto corrente (scegliendo ovviamente di non cancellare i contenuti), poi File -> Import, Existing non ricordo cosa, navigo fino alla directory CommandParser contenente il mio spike e gli do' l'OK; però non basta perché bisogna anche sistemare la configurazione di Run: devi settare ParserMain come main class; dopodiché se fai Run dovrebbe andare e parsare i comandi scritti in prova.txt.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2005, 20:34   #90
Jocchan
Senior Member
 
L'Avatar di Jocchan
 
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
Quote:
Originariamente inviato da 71104
siccome quello è un progetto a parte io per farlo partire da Eclipse 3.1 faccio così: cancello il progetto corrente (scegliendo ovviamente di non cancellare i contenuti), poi File -> Import, Existing non ricordo cosa, navigo fino alla directory CommandParser contenente il mio spike e gli do' l'OK; però non basta perché bisogna anche sistemare la configurazione di Run: devi settare ParserMain come main class; dopodiché se fai Run dovrebbe andare e parsare i comandi scritti in prova.txt.
Quindi per testarlo devo installare Eclipse e - potenzialmente, ma molto probabilmente - mandare a pu**ane il repository con qualche impostazione errata?
Non c'è un qualche altro modo che non preveda Eclipse per testarlo?
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam.
Jocchan è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2005, 20:56   #91
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da Jocchan
Quindi per testarlo devo installare Eclipse e - potenzialmente, ma molto probabilmente - mandare a pu**ane il repository con qualche impostazione errata?
Non c'è un qualche altro modo che non preveda Eclipse per testarlo?
ma che puttane e che repository, casomai se vuoi stare sicuro fai il checkout solamente della cartella extras/Spikes/71104/, così al limite mandi a puttane solo quella, anzi non committarla così non mandi a puttane un bel niente
ho detto 3 volte "puttane" in... anzi 4 in un solo post, e senza censura

PS: se è tutto un modo per dire che preferisci la soluzione di TigerShark dillo chiaramente
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2005, 21:01   #92
Jocchan
Senior Member
 
L'Avatar di Jocchan
 
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
Quote:
Originariamente inviato da 71104
PS: se è tutto un modo per dire che preferisci la soluzione di TigerShark dillo chiaramente
Non posso preferire quella se non ho visto la tua
Se sapessi settare il classpath, potrei far partire la tua soluzione con un bat, come ho fatto per quella di tiger
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam.
Jocchan è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2005, 21:06   #93
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da Jocchan
Non posso preferire quella se non ho visto la tua
Se sapessi settare il classpath, potrei far partire la tua soluzione con un bat, come ho fatto per quella di tiger
scusa, eh: hai Eclipse 3.1? hai fatto come ti ho descritto? io il bat mi spiace ma non lo so fare!!!
non ho mai capito come cavolo si usa il comando java :|
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2005, 12:08   #94
Jocchan
Senior Member
 
L'Avatar di Jocchan
 
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
Ho testato entrambe le soluzioni e sono comunque molto, molto simili, se non identiche
Entrambe riconoscono i comandi dai parametri, e consentono allo script una sintassi praticamente identica (l'unica eccezione riguarda i dialoghi, in cui la soluzione di Tiger mi sembra migliore... ma suppongo che anche dal codice di 71104 si possa implementare una soluzione identica con un paio di modifiche).
L'unico criterio di scelta per una soluzione o l'altra, quindi, è la complessità del parser: dato che i risultati sono più o meno identici, sceglieremo quello con il codice meno complesso (e qui deve valutare qualcuno più ferrato di me), e lo svilupperemo parallelamente al gioco vero e proprio.
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam.
Jocchan è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2005, 14:21   #95
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
secondo me l'ideale sarebbe sviluppare un parser qualsiasi in TDD che si ricavi comando, parametri(come stringa unica o direttamente come array di stringhe che forse sarebbe meglio), testo da passare poi alle varie classi dei comandi che gestiscono internamente e separatamente la logica di ogni comando.
Tanto visto il ridotto numero di comandi non credo che avremo molte classi... e quando (e se) aggiungeremo comandi nuovi sarà sufficiente aggiungere la classe corrispondente senza modificare il parser generale vero e proprio....
poi la parola credo spetti a fek per decidere... è lui il coach
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2005, 14:29   #96
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Voglio attendere lo spike di Cesare per capire se e' piu' comodo scriverlo in ANTLR o a mano. Poi ovviamente si riparte daccapo in TDD storia per storia.
fek è offline   Rispondi citando il messaggio o parte di esso
Old 04-12-2005, 06:59   #97
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Entro domani spero di finirlo.

In futuro magari dovremmo definire un'interfaccia che la classe Parser dovrà implementare, e che riporti i metodi da richiamare quando viene riconosciuta un'istruzione.
In questo modo passare da un parser all'altro dovrebbe essere immediato.
__________________
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 04-12-2005, 13:16   #98
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da Jocchan
Ho testato entrambe le soluzioni e sono comunque molto, molto simili, se non identiche
Entrambe riconoscono i comandi dai parametri, e consentono allo script una sintassi praticamente identica (l'unica eccezione riguarda i dialoghi, in cui la soluzione di Tiger mi sembra migliore... ma suppongo che anche dal codice di 71104 si possa implementare una soluzione identica con un paio di modifiche).
infatti si può: ho notato che TigerShark ha messo i nomi dei personaggi nel set dei comandi, e poi ha implementato una apposita classe per svolgere quei comandi particolari; da me volendo si può fare lo stesso, anzi lo faccio adesso
l'unica differenza è che mentre lui per implementare i comandi ha usato intere classi, io ho usato una interfaccia (CommandImpl) da implementare con vari metodi che corrispondono ai vari comandi.

EDIT: faccio la modifica dopo pranzo
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 04-12-2005, 13:29   #99
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Quote:
Originariamente inviato da 71104
infatti si può: ho notato che TigerShark ha messo i nomi dei personaggi nel set dei comandi, e poi ha implementato una apposita classe per svolgere quei comandi particolari; da me volendo si può fare lo stesso, anzi lo faccio adesso
l'unica differenza è che mentre lui per implementare i comandi ha usato intere classi, io ho usato una interfaccia (CommandImpl) da implementare con vari metodi che corrispondono ai vari comandi.

EDIT: faccio la modifica dopo pranzo
Voglio essere molto chiaro su questo punto per evitare malintesi futuri: tutto il codice che scrivete in questo Spike sara' buttato alla fine del prototipo. La soluzione che implementeremo sara' molto probabilmente una fusione del vostro lavoro e sara' implementata da tutti quanti test-driven.

In altre parole, non attaccatevi troppo sentimentalmente al codice che state scrivendo ora
fek è offline   Rispondi citando il messaggio o parte di esso
Old 04-12-2005, 13:54   #100
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
lo so lo so, non ti preoccupare
anzi, direi che a questo parser ci ha dedicato più fatiche TigerShark che io ^^
poi non so, magari è solo una sensazione...
71104 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione DJI Mini 5 Pro: il drone C0 ultra-leggero con sensore da 1 pollice Recensione DJI Mini 5 Pro: il drone C0 ultra-leg...
ASUS Expertbook PM3: il notebook robusto per le aziende ASUS Expertbook PM3: il notebook robusto per le ...
Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo Test ride con Gowow Ori: elettrico e off-road va...
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design   Recensione OnePlus 15: potenza da vendere e batt...
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media AMD Ryzen 5 7500X3D: la nuova CPU da gaming con ...
Crollo del 29% nelle vendite dirette: Ub...
Black Friday anticipato su Amazon: NARWA...
Disastro WhatsApp: esposti 3,5 miliardi ...
Hatsune Miku per tutti: ASUS ROG present...
La Definitive Edition di Tomb Raider sba...
Sicurezza PC: Microsoft punta sui chip d...
Gemini 3 Pro disponibile ora: è i...
Super sconti robot aspirapolvere: ECOVAC...
DOOM: The Dark Ages si espande con Ripat...
EA SPORTS annuncia il futuro della serie...
Tutte le TV già in offerta defini...
Meta non ha un monopolio nel settore dei...
L'amministrazione Trump presta 1 miliard...
Continua la rivoluzione interna in Intel...
Lenovo Legion 5i, gaming senza compromes...
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:43.


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