View Single Post
Old 03-10-2007, 15:40   #3
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da mad_hhatter Guarda i messaggi
esempio stupidissimo, scambio di due valori:
abc = 1;
def = 2;
tmp = abc;
abbc = def; // errore di battitura
def = tmp;

perché il sintax checker dovrebbe incazzarsi? il codice è perfettamente lecito... eppure contiene un errore rispetto alle intenzioni del programmatore.
Codice:
int abc, def, tmp;
abc = 1;
def = 2;
tmp = abc;
abc = def;
def = abc;
Anche questo è lecito e il compilatore non s'incazza, ma non funziona.

Gli errori di semantica esistono per tutti i linguaggi: li chiamano bug.
Quote:
si va beh, io parlo di situazioni reali, non di esempi così
Anch'io.
Quote:
java prima che un linguaggio è una piattaforma... non esiste senza la libreria standard, che quindi è a tutti gli effetti nativa in ogni ambiente java... poi se vogliamo fare di queste sottigliezze...
Non mi sembrano siano soltanto sottigliezze. Quando abbiamo parlato di C, C++, Pascal, Basic, ecc., nessuno ha tirato in ballo le loro librerie standard mi pare.

Stavamo confrontando il linguaggio, ed è innegabile che Python sia particolarmente ricco.

Poi anche Python ha una buona libreria, ma non è questo il punto.
Quote:
per chi legge potrebbe esserlo...
Potrebbe... ma dipende sempre da chi ha scritto il codice: il cattivo codice lo ritrovi a prescindere dal linguaggio di programmazione.
Quote:
e comunque il fatto che il tipo non sia esplicitamente dichiarato rende più difficile la comprensione del ruolo di una variabile
Per questo esistono i nomi autoesplicativi per le variabili.
__________________
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