|
|
|
![]() |
|
Strumenti |
![]() |
#161 | |
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11782
|
Quote:
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
![]() |
![]() |
![]() |
#162 | ||||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Che gioco era? Quote:
![]() Quote:
D'altra parte Python è un linguaggio sostanzialmente interpretato, visto che quasi tutto viene deciso a run-time. In questo periodo sto usando Python, e devo dire che mi trovo molto bene: è un linguaggio semplice, ma potente, e che permette di scrivere codice molto velocemente, pur rimanendo molto leggibile. Quote:
![]() x quanto riguarda gli oggetti COM, è chiaro: non avevo capito bene prima... ![]()
__________________
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 |
||||
![]() |
![]() |
![]() |
#163 | |
Senior Member
Iscritto dal: Mar 2004
Messaggi: 1542
|
Quote:
Ora come ora Delphi è un linguaggio che ha le stesse potenzialita del C++, e cmq ricordiamoci che appena si passa al .NET tutti i linguaggi si appiattiranno. ![]() |
|
![]() |
![]() |
![]() |
#164 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Per questo preferisco Delphi (rispetto al C++): trovo che il codice sia più leggibile, più facile da suddividere in moduli, e la sintassi è più rigorosa.
Comunque ricordo che TP7 prevedeva già di generare eseguibili per Windows (3.x?).
__________________
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 |
![]() |
![]() |
![]() |
#165 |
Senior Member
Iscritto dal: Mar 2004
Messaggi: 1542
|
no, TP 7.0 che io ricordi generava solo programmi DOS/16
|
![]() |
![]() |
![]() |
#166 | |
Senior Member
Iscritto dal: Jun 2000
Città: Bologna
Messaggi: 829
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
#167 | |
Senior Member
Iscritto dal: Mar 2004
Messaggi: 1542
|
Quote:
|
|
![]() |
![]() |
![]() |
#168 | |||
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11782
|
Quote:
Quote:
Quote:
![]() (lo sto gia' facendo in realta')
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|||
![]() |
![]() |
![]() |
#169 | |
Senior Member
Iscritto dal: Jun 2003
Città: vivo in Sicilia (tra la prov. di AG e Palermo)
Messaggi: 956
|
A proposito di dll e Turbo Pascal 7 (Borland Pascal, per la verità):
Quote:
|
|
![]() |
![]() |
![]() |
#170 |
Senior Member
Iscritto dal: Jun 2003
Città: vivo in Sicilia (tra la prov. di AG e Palermo)
Messaggi: 956
|
Dovrebbe bastare questo per creare funzioni accessibili da programmi realizzati in altri linguaggi
![]() Naturalmente, l'utilizzatore dovrà prevedere una qualche corrispondenza tra i tipi, ma per scriverle dovrebbe bastare questo. Ultima modifica di xeal : 06-04-2005 alle 23:38. |
![]() |
![]() |
![]() |
#171 |
Senior Member
Iscritto dal: Mar 2004
Messaggi: 1542
|
Guarda che quella stessa funzione è nella guida di Borland Delphi 7.0. Fortuna che la borland è qualcuna che mantiene gli standard
![]() |
![]() |
![]() |
![]() |
#172 | |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
![]()
__________________
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 |
|
![]() |
![]() |
![]() |
#173 | ||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Non ricordo dove l'ho letto, ma se non ricordo male una software ha realizzato un progetto per una software house (MS, se la memoria non m'inganna): interamente in Python sia per questione di velocità di scrittura del codice sia per gli strumenti di validazione/testing che permette questo linguaggio / ambiente. Quando il codice ha completato tutte le fasi richieste, è stato "congelato", e mano a mano le varie parti sono state riscritte in C++ (quella di scrivere codice, moduli, o classi Python, e poi riscriverle in C/C++ per velocizzarle, è una sua caratteristica "nativa"). Quote:
![]()
__________________
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 |
||
![]() |
![]() |
![]() |
#174 | |
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11782
|
Quote:
In linguaggi cosi' ad alto livello e' molto veloce prototipizzare il problema e poi, quando il domino della soluzione e' chiaro, puoi buttare via il prototipo e riscrivere la soluzione in C++, oppure tenere il codice (in questo caso non e' piu' un prototipo), e fare refactoring di alcune parti in C++. Credo che nei prossimi anni si vedranno molti esempi di programmi ibridi, e la piattaforma .NET percorre questa strada. Mi piacerebbe anche vedere altri linguaggi "compilare" in bytecode Java.
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
![]() |
![]() |
![]() |
#175 | ||
Senior Member
Iscritto dal: Apr 2003
Città: Genova
Messaggi: 4741
|
Quote:
![]() Quote:
![]()
__________________
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
|
||
![]() |
![]() |
![]() |
#176 | |
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11782
|
Quote:
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
![]() |
![]() |
![]() |
#177 |
Senior Member
Iscritto dal: Apr 2003
Città: Genova
Messaggi: 4741
|
in poche parole
il "Prototipo" e il "Tracer Bullet Developing" cosa sono, come funzionano?
![]() visto che ne accenni in un contesto di programmazione, code refactoring, ecc intuisco che si tratti di qualcosa di attinente (design pattern?) che però non avevo ancora sentito ... e siccome dovrei entrare in quel ramo mi interessa approfondire da chi ne sa più di me... ![]()
__________________
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 : 07-04-2005 alle 21:15. |
![]() |
![]() |
![]() |
#178 | ||
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11782
|
Re: in poche parole
Quote:
Qunado si ha un problema da risolvere e non si conosce la soluzione, si puo' iniziare a buttare giu' un po' di codice esplorando una serie di possibili soluzioni per capirne le loro implicazioni, i problemi che potrebbero emergere, eventuali strade chiuse. Affinche' il prototipo sia utile, dev'essere molto veloce da scrivere, non e' importante che sia performante, stabile o sicuro, l'importante e' che dia un'idea della soluzione migliore per il problema. Un prototipo e' tale nel momento in cui viene abbandonato quando ha raggiunto il suo scopo, e la soluzione scelta e' implementata in maniera propria. Se non viene abbandonato, non e' un prototipo per definizione. Il Tracer Development Bullet invece e' una metodologia di sviluppo che deriva il nome dai proiettili "traccianti". Per mirare a qualcosa si spara con un proiettile tracciante nella direzione generale del bersaglio e poi si aggiusta man mano il tiro usando le informazioni del tracciante. Nel software significa implementare velocemente una soluzione approssimativa al problema e poi raffinarla man mano che il problema diventa piu' chiaro. E' simile all'idea di Design Evolutivo, utile quando il problema da risolvere non e' perfettamente chiaro e i requisiti non sono stabili e immutabili (nel 99% dei casi quindi), dove il design del software evolve man mano che viene scritto e man mano che sia il problema sia la soluzione diventano piu' chiari. Sono i concetti alla base delle metodologie di sviluppo agili. La differenza con il Prototipo consiste nel fatto che la prima soluzione approssimativa non viene abbandonata e riscritta ma raffinata man mano durante lo sviluppo. In entrambi i casi usare un linguaggio ad alto livello puo' rivelarsi utile, decisivo nel caso del Prototipo. Quote:
![]() In teoria Refactoring e Design Pattern non sono strettamente legati, almeno cosi' si pensava fino a qualche anno fa. Adesso con l'affermarsi di metodologie di sviluppo "agili", si tende a non implementare i Design Pattern fin da subito, ma a evolvere il Design del software verso l'uso dei Design Patter dove e quando fosse necessario. Il cardine di questo processo di evoluzione e' il Refactoring del codice. Secondo la definizione di Martin Fowler, Refactoring e' "il processo di miglioramento della struttra del codice mantenendo invariato il suo comportamento osservabile". In altre parole si tratta di rendere migliore la struttura interna del software, eliminando le duplicazioni, semplificandolo, eliminando i "code smell" (i cattivi odori nel codice ![]() Se sei interessato a questi argomenti ti consiglio i seguenti libri: Il "classico" Design Patterns: http://www.amazon.co.uk/exec/obidos/...611787-4794840 La Bibbia del Refactoring, questo non deve mancare in nessuna biblioteca di un programmatore: http://www.amazon.co.uk/exec/obidos/...611787-4794840 Refactoring To Patterns, che stabilisce un collegamento fra i Design Pattern ed il processo di Refactoring: http://www.amazon.co.uk/exec/obidos/...611787-4794840 A questi, secondo me, va aggiunto assolutamente questo libro di Kent Beck: http://www.amazon.co.uk/exec/obidos/...611787-4794840 Quando avrai finito questi libri, il mondo non sara' piu' lo stesso e capirai di non aver mai imparato a programmare ![]() A me e' successo cosi'.
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
||
![]() |
![]() |
![]() |
#179 | |
Senior Member
Iscritto dal: Apr 2003
Città: Genova
Messaggi: 4741
|
grazie...
e della spiegazione (chiarezza esemplare, molto professionale)
![]() e delle "letture consigliate" che appena sto meglio (attualmente sto uscendo da un' "influenza" che mi ha distrutto) cerco in libreria ![]() Quote:
![]() dev' essere colpa del mio tipico "timore reverenziale" nei confronti del mezzo che mi ha un po' trattenuto dal fare pratica ed esperienza su problemi reali... mea culpa mea culpa mi sa che mi conviene darmi una mossa in fretta, prima che cambi troppo anche il mondo intorno a me... ![]()
__________________
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
|
|
![]() |
![]() |
![]() |
#180 | |
Senior Member
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11782
|
Re: grazie...
Quote:
Se conosci bene la teoria, non hai ancora imparato tutte le pratiche "sbagliate" che chi ha anni di esperienza deve invece dimenticare e puoi concentrarti sulle pratiche che oggi si sa danno i migliori risultati. Io, ad esempio, sono passato attraverso la programmazione procedurale quindici anni fa, che poi ho dovuto dimentcare per imparare un approccio ad oggetti al design. E sono passato attraverso i classici errori della programmazione ad oggetti, come l'abuso dell'ereditarieta', le classi troppo grandi, i metodi troppo lunghi. Poi ho dovuto dimenticare l'abitudine ad ottimizzare prematuramente. Ed ora sto dimenticando l'approccio alla programmazione classico (scrivi prima il codice e poi vedi se funziona), per passare ad un approccio totalmente nuovo e piu' produttivo: scrivi prima i test per vedere se il codice che stai scriverai funziona. Come dice Kent Beck nel suo libro: "Ho insegnato a mia figlia di 8 anni a programmare e per lei e' inconcepibile che si possa scrivere una riga di codice senza avere un test che fallisce". Sua figlia di 8 anni e' un programmatore migliore di me. Certo, pero', ti mancano anni di esperienza, ma partendo da basi piu' solide non ti sara' difficile recuperarli in fretta ed avere un approccio alla costruzione del codice piu' pulito e meno contaminato da abitudini sbagliate.
__________________
"We in the game industry are lucky enough to be able to create our visions" @ NVIDIA |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:05.