Newsgroup: it.comp.www.php
Titolo: goto

http://php.net/manual/en/control-structures.goto.php
 
 
LOL (rido per non piangere)
 
-- 
g4b0, linux user n. 369000
http://brosulo.net
 

 LOL (rido per non piangere)
 
Quell'immagine è un classico dell'informatica
 
 


 
www.brosulo.net
 
 
ROTFL !!!
 
Impara a lavorare....meglio saper usare i goto e saper lavorare 
piuttosto che non saper usare i goto e non saper lavorare.
 
 
-- 
Quando la dittatura è un dato di fatto, la rivoluzione diventa un diritto.
(Victor Hugo)
 
“L’intelligenza sa di essere libera, quali che siano le coercizioni 
esteriori. Sa che la grandezza dell’Uomo è nel pensiero, e sa che c’è 
sempre almeno un altro uomo che lo afferra e lo trasmette.”
(Ida Magli, Omaggio agli Italiani)

 
 
Ho già plonkato tutti i tuoi pseudonomi su i.l.i., non mi ero accorto
che eri arrivato a trollare anche su i.c.w.p.
 
PLONK
 
P.S.
Io il mio sito lo pubblico, tu evidentemente ti vergoni.


 LOL (rido per non piangere)
 
Che cosa hai contro il buon vecchio goto ?
bye
 
-- 
Alex
 
--- news://
freenews.netfront.net/
 - complaints: 
ne...@netfront.net
 ---

 Che cosa hai contro il buon vecchio goto ?
 
Dovrei avere un linter in qualche cassetto... :P
 
Scherzi a parte, goto può essere utile. Speravo solo nacondessero meglio 
la pagina del manuale che ne parla. :D
 
Bye.
 


Secondo me può essere utile per un workaround quick&dirty se non hai
tempo per un refacor, ma alla fine hai comunque dello "spaghetti code"
con un flow che rimbalza a destra e manca.
 
Per esempio sto mettendo mano a del vecchio codice disseminato di goto e
mi sta facendo impazzire. (Tra l'altro è la prima volta che mi capita di
vedere il goto in del codice PHP, l'ultima volta che lo avevo visto era
un programma in BASIC su di un Commodore 64 :P)
 
In 15 anni di sviluppo non mi è mai capitata l'esigenza di usare un goto
se non giochicchiando con il commodore, e devo ammettere che ne vado
orgoglioso.



Accipicchia!
Vecchio per davvero :D
 
Bye


 orgoglioso.
 
Questo ti dimostra che il goto è assolutamente inutile.
 
 
 

 Questo ti dimostra che il goto è assolutamente inutile.
 
è presente in un discreto numero di linguaggi di programmazione, e 
seppur diciamo.... desueto, è sempre un'istruzione che permette 
facilmente di controllare il flusso del programma. Il fatto che esistano 
altri sistemi sicuramente migliori per programmare, non significa che 
sia il male usarlo.. Magari chi è esperto può farne facilmente a meno, 
ma per chi scrive semplici script per proprio uso senza nessuna pretesa 
di "perfezione stilistica", può ancora essere un modo di arrivare al 
proprio scopo senza dover studiare.
 
 
-- 
Fri(END), Boyfri(END), Girlfri(END), Bestfri(END). Everything has an END 
except...Fam(ILY)! It Has 3 Letters that say I LOVE YOU

 
 
Questo.


 
ancora una volta, la vignetta di Randall è ironica... Perché nessuno la
capisce? :(
 
"goto" è un'istruzione come un altra, è a disposizione tua, poi vedi te come e
quando usarla.
 
A quelli che dicono che non bisognerebbe usare mai goto, in nessun caso, farei
scrivere un parser L(AL)R, poi vediamo. Ma tanto 'sta gente neppure saprebbe
di cosa stiamo parlando.. :(
 
Ciao!

 di cosa stiamo parlando.. :(
 
Perchè tu hai mai scritto un parser LR in PHP? Non credo.
 
Comunque non ho detto che non bisognerebbe mai usare il goto, ho detto
(nel contesto del linguaggio PHP):
 
g4b0said: "può essere utile per un workaround quick&dirty se non hai
tempo per un refacor, ma alla fine hai comunque dello "spaghetti code"
con un flow che rimbalza a destra e manca."
 
L'unico utilizzo "sano" del goto che mi viene in mente è per sostituire
un multi-level break (come suggerito dal manuale di PHP), ma secondo me
se ti trovi in quella situazione è ora di un bel refactoring. Se non hai
tempo allora goto g4b0said;
 
Se mi linki una pagina di ghitub di un qualche famoso Framework, CMS o
dir si voglia che usa il goto sono disposto a ricredermi. Così come se
mi linki un riferimento ad un tuo parser LR, naturalmente :)
 
Detto questo, utile o no, il goto rende il codice illeggibile, e su
questo non puoi che concordare. Altrimenti significa che non hai mai
messo mano a codice altrui disseminato di goto.


 Vecchio per davvero :D
 
Neanche tanto, se consideri che il goto è stato inserito nel PHP a
partire dalla versione 5.3


 proprio scopo senza dover studiare.
 
Il punto è che solo gli esperti dovrebbero usarlo, e solo in casi molto 
particolari.
 
Arrivare allo scopo senza studiare può essere allettante, ma genera 
codice pericoloso, e stiamo parlando di un linguaggio fatto per servire 
siti su server pubblici, non per scrivere script che girano sul tuo PC e 
basta.
 
Per quello speravo lo nascondessero meglio.
 
Bye.
 
 

 basta.
 
Io ho per questo accennato a "semplici script per proprio uso", e in 
definitiva se chi programma non sa farlo in maniera corretta, non è 
certo l'uso di un goto che pregiudica la sicurezza di uno script, anche 
se su un server pubblico.
 
Sul fatto di studiare è chiaro che un minimo serve, ma non è che per 
metterti un cerotto devi studiare tutti i testi universitari di medicina...


scrivere un parser L(AL)R, poi vediamo.
 
	while ($this->running()) {
		switch($status) {
			...
		}
	}
 
I goto ci sono, ma li mette il compilatore che c'ha esperienza ;-D
 
Leonardo
-- 
 
A terrible beauty is born.
                                     - W. B. Yeats, Easter 1916

 se su un server pubblico.
 
Beh, dipende.
 
Se per uscire da un ciclo di controllo della password, magari 
intervallato da controlli ACL, uno usa un goto, ci sono buone 
probabilità che esca nel posto sbagliato e dia accesso a certi utenti, 
con comportamenti difficili da debuggare.
 
Bye.
 
 

 con comportamenti difficili da debuggare.
 
si certo ma... se io non sono buono a programmare lo sono col goto o 
senza. Lo stesso errore lo posso fare con qualunque tipo di controllo. 
Se parliamo di "incasinamento" del software  concordo, per il resto no, 
il problema non è l'istruzione, ma come la si usa.


 senza.
 
è un po' come dire: il bravo dentista può usare tranquillamente un martello pneumatico per l'igiene dentale altrimenti è un disastro con qualsiasi altro strumento. Se ti accorgi che il tuo dentista usa strumenti di fine settecento o da cantiere, può essere bravo quanto vuoi, ma io non starei lì ad appurarlo.
 
Forse il bravo dentista lo vedi anche dagli strumenti che usa e da quelli che evita e come gli strumenti del dentista cambiano così i costrutti e i paradigmi dei programmatori.
 
Condivido in pieno l'opinione di chi considera l'uso del goto sia da usare solo sotto tortura (psicologia e non), quando ripristinare lo stato di servizio è fondamentale per non intaccare l'uptime, non per il normale sviluppo.

 sviluppo.
 
Io continuo a non capire questo astio verso un'istruzione. Si può 
parlare di eleganza, di efficienza, di chiarezza, ma alla fine cosa 
cambia veramente?
 
$i = 1;
while ($i <= 10):
     echo $i;
     $i++;
endwhile;
 
se da qua si toglie il while e l'endwhile e si sostituiscono con un:
 
if ($1 <= 10)
ecc.  ecc.
 
e si aggiunge un goto alla fine il codice diventa veramente illeggibile? 
insicuro? inelegante? Alla fine il goto anche se invisibile nel codice 
del while c'è lo stesso...
 
Bha.. io sono l'ultima persona che può insegnare a programmare, ma 
veramente sono perplesso. Il goto è (IMHO) un'ulteriore possibilità di 
realizzare un qualcosa. Se fosse veramente il "male" perchè non 
eliminarlo tout court da tutti i linguaggi?


 Seguando il ragionamento "attrezzatura figa = mostro di bravura"
 
Non era questo il ragionamento, il ragionamento era "persona competente 
=> sceglie gli strumenti adeguati" dove "=>" è l'implicazione logica 
(alias "se, allora", alias modus ponens).
L'espressione di uguaglianza che scrivi tu invece presuppone anche il 
verso contrario, che non è necessariamente vero.
 
Per assurdo io potrei trovarmi per combinazione a possedere i migliori 
strumenti dell'odontoiatria, ma ti sconsiglierei caldamente di farti 
trapanare un dente da me.
 
-- 
Andrea
 

eliminarlo tout court da tutti i linguaggi? 
 
Infatti fa incupire che lo abbiano introdotto in php, speravo nel 
sovraccarico dei metodi e invece che ti fanno? il goto!
 

 sovraccarico dei metodi e invece che ti fanno? il goto!
 
praticamente un involuzione del linguaggio :-)


 trapanare un dente da me.
 
se mai dovessi vedere una targhetta fuori da un palazzo "Andrea D'Amore 
odontoiatra", passerò certamente oltre :-D


>>eh... questo era un sadico e comunque non usava attrezzature "Hilti"
 
ma gli sarebbe piaciuto


Ovviamente non n'ho mai scritto uno in PHP, si sono iniziati a generare
automaticamente a partire dalle grammatiche BNF molto prima che PHP esistesse,
figuriamoci quando era stabile per essere usato (il parser per PHP stesso, che
usa lo Zend engine, ad esempio, è generato con yacc) :)
 
Ad essere sincero non so se esista un generatore per PHP (tipo GOLD o yacc),
ma se esiste probabilmente genererà codice che ne fa gran uso.
 
In PHP non ne hai bisogno soprattutto perché hai le eccezioni, e quindi puoi
spezzare il flow in maniera leggibile, ma ci sono vari casi in cui non lo
vuoi fare, come interrompere un blocco di cicli annidati, una serie di
chiamate a funzione senza usare eccezioni, nei casi un cui vuoi fare un unroll
a mano, e altri ancora.
 
Detto questo, in PHP non ho mai usato un goto in vita mia. :D
Semplicemente per quello per cui si usa non serve mai.
 
Ciao!

 
 
LOL
 
Ciao!

 Io il mio sito lo pubblico, tu evidentemente ti vergoni.
 
Mentre c'ero gli ho dato un'occhiata: carino! :-)
Ho notato che il copyright e` fermo al 2015. E` un'inezia, pero` visto
che e` in PHP, potresti scrivere nel footer cosi`:
 
&copy; 2015-<?php echo date("Y"); ?>
 
e te lo ritrovi sempre aggiornato senza dover agire manualmente.
 

 Ho notato che il copyright e` fermo al 2015.
 
Grazie per il suggerimento, già che c'ero l'ho modificato da copyright a
copyleft, sono un po' allergico al copyright e sul sito era un refuso :D
 
Tra l'altro ho scoperto che con il mio il mio template engine ho a
disposizione di default la variabile $Now, quindi ho risolto con un
$Now.Year



BELLISSIMO, e quel cerchietto che gira che cazzo è?
Per uno che si propone come sviluppatore siti web fare un sito col 
cerchietto....è certamente professionale!
 
BAMBOCCIONI DELL'OSTIA!
 
-- 
Quando la dittatura è un dato di fatto, la rivoluzione diventa un diritto.
(Victor Hugo)
 
“L’intelligenza sa di essere libera, quali che siano le coercizioni 
esteriori. Sa che la grandezza dell’Uomo è nel pensiero, e sa che c’è 
sempre almeno un altro uomo che lo afferra e lo trasmette.”
(Ida Magli, Omaggio agli Italiani)

cerchietto....è certamente professionale!
 
Boh, a me il sito è piaciuto.


 Boh, a me il sito è piaciuto.
 
È un troll, è inutile rispondergli. Don't feed the troll.
