Precedente :: Successivo |
Autore |
Messaggio |
Zeus News Ospite
|
Inviato: 09 Lug 2008 22:48 Oggetto: Corso base di Php - Lezione 1 |
|
|
Commenti all'articolo Corso base di Php - Lezione 1
La prima lezione del corso per l'apprendimento del linguaggio di scripting Php. L'ambiente di sviluppo, il nostro primo programma in Php, le variabili. |
|
Top |
|
|
Magic Alex Eroe
Registrato: 22/08/06 11:10 Messaggi: 74 Residenza: Varese
|
Inviato: 30 Lug 2008 22:14 Oggetto: |
|
|
Bello!
Alex |
|
Top |
|
|
{Mario} Ospite
|
Inviato: 31 Lug 2008 07:17 Oggetto: Prima lezione fatta |
|
|
a quando la seconda ???? |
|
Top |
|
|
umbertknot Comune mortale
Registrato: 28/09/05 07:18 Messaggi: 1
|
Inviato: 31 Lug 2008 08:33 Oggetto: |
|
|
complimenti, ottimo corso!!! continuate così |
|
Top |
|
|
heba Mortale devoto
Registrato: 15/06/06 10:54 Messaggi: 5
|
Inviato: 31 Lug 2008 11:59 Oggetto: Re: Impariamo il PHP: corso base |
|
|
freemind ha scritto: |
Noi con php possiamo inizializzare una variabile ad un certo valore, esempio 5, senza averla prima dichiarata e poi sbatterci dentro la stringa "pippo" e poi riusarla come vettore. |
vero, ma c'è un problema facendo questo. Qualunque programmatore sa perfettamente che una variabile deve essere utilizzata solo ed esclusivamente per un utilizzo proprio.
cioè, se scrivo che la variabile a è numerica, essa dovrà contenere solo ed esclusivamente valori numerici, se la indico come portatrice di età di certo non potrò metterci i cavoli con patate mangiati stamattina.
Se si utilizza una variabile per più usi, il programma (perchè anche se si utilizza php per i siti si parla di programma) subisce uno stato confusioanle.
Mettiamo caso che su una pagina la variabile a venga utilizzata per contenere il count degli utenti che entrano nel sito, in un'altra pagina la stessa variabile viene utilizzata per contare gli elementi di un array.
Fisicamente cosa succederebbe in una situazione del genere?
Mettiamo caso di avere due utenti, b e c, il primo entra nella home e vede il count attivo con una certa navigazione di utenti lo stesso cambia pagina e il count non vi è più ma il server elabora le richieste del programma, nello stesso tempo entra c e si ritrova a far elaborare allo stesso server una richiesta diversa con la stessa variabile, il server non sa più che richiesta eseguire e che calcolo fare, crash del programma e baco nel sito.
Insomma, è come mettere un chiodo in un vedro, non mi sembra una buona idea...
freemind ha scritto: |
Faccio un'ultima nota sui tipi di variabili in php prima di chiudere questa lezione introduttiva.
Esistono linguaggi a tipizzazione forte e linguaggi a tipizzazione debole.
I primi prevedono che le veriabili vengano definite e in questa fase venga definito il tipo: tentare di modificare una variabile appartenente ad un tipo con dati di altro genere provocherebbe un errore di compulazione oppure un risultato scorretto; php invece rientra nel secondo tipo: possiamo gestire insieme variabili di tipi diversi ma possiamo anche forzare per un breve periodo una variabile di un tipo ad esserlo di un altro e possiamo in ogni momento recuperare il tipo di dato che la var contiene in quel dato istante. |
in realtà anche in altri linguaggi è permesso utilizzare variabili di diversa tipologia, quindi stringa insieme ai numerici, all'interno della stessa procedura informatica, il problema è per php quello che ho specificato prima che è ben diverso da quello ipotizzato da lei nel periodo precedente. |
|
Top |
|
|
Puppybarf Semidio
Registrato: 17/10/05 10:22 Messaggi: 206 Residenza: Benevento
|
Inviato: 31 Lug 2008 13:36 Oggetto: |
|
|
Buona iniziativa... spero di riuscire ad imparare qualcosa. |
|
Top |
|
|
freemind Supervisor sezione Programmazione
Registrato: 04/04/07 20:28 Messaggi: 4643 Residenza: Internet
|
Inviato: 31 Lug 2008 19:15 Oggetto: Re: Impariamo il PHP: corso base |
|
|
heba ha scritto: | freemind ha scritto: |
Noi con php possiamo inizializzare una variabile ad un certo valore, esempio 5, senza averla prima dichiarata e poi sbatterci dentro la stringa "pippo" e poi riusarla come vettore. |
vero, ma c'è un problema facendo questo. Qualunque programmatore sa perfettamente che una variabile deve essere utilizzata solo ed esclusivamente per un utilizzo proprio.
cioè, se scrivo che la variabile a è numerica, essa dovrà contenere solo ed esclusivamente valori numerici, se la indico come portatrice di età di certo non potrò metterci i cavoli con patate mangiati stamattina.
Se si utilizza una variabile per più usi, il programma (perchè anche se si utilizza php per i siti si parla di programma) subisce uno stato confusioanle. |
Vero ma se php prevede questa cosa mi sembra lecito dirlo.
heba ha scritto: |
Mettiamo caso che su una pagina la variabile a venga utilizzata per contenere il count degli utenti che entrano nel sito, in un'altra pagina la stessa variabile viene utilizzata per contare gli elementi di un array.
Fisicamente cosa succederebbe in una situazione del genere?
Mettiamo caso di avere due utenti, b e c, il primo entra nella home e vede il count attivo con una certa navigazione di utenti lo stesso cambia pagina e il count non vi è più ma il server elabora le richieste del programma, nello stesso tempo entra c e si ritrova a far elaborare allo stesso server una richiesta diversa con la stessa variabile, il server non sa più che richiesta eseguire e che calcolo fare, crash del programma e baco nel sito.
Insomma, è come mettere un chiodo in un vedro, non mi sembra una buona idea...
|
La variabile "a" in una pagina non è la variabile "a" di un'altra. Se in una pagina rappresenta un contatore di utenti e in altra è l'indice di un vettore, non ci sono problemi.
Inoltre per contare il numero di utenti connessi si usano altri metodi.
Comunque se b entra nella home e vede il count attivo con un certo valore e si sposta nell'altra pagina dove "a" è un indice e c nel frattempo fa elaborare al server qualche richiesta che implica l'uso di una var "a" in qualche pagine, non succede nulla, due pagine diverse di fatto sono due programmi diversi. Se ti riferisci a giochi con variabili statiche oppure singleton di classi (in questi caso allora bisognerebbe stare un po' più attenti) ti prego dimmelo perchè non ho capito quello che vuoi dire.
heba ha scritto: |
freemind ha scritto: |
Faccio un'ultima nota sui tipi di variabili in php prima di chiudere questa lezione introduttiva.
Esistono linguaggi a tipizzazione forte e linguaggi a tipizzazione debole.
I primi prevedono che le veriabili vengano definite e in questa fase venga definito il tipo: tentare di modificare una variabile appartenente ad un tipo con dati di altro genere provocherebbe un errore di compulazione oppure un risultato scorretto; php invece rientra nel secondo tipo: possiamo gestire insieme variabili di tipi diversi ma possiamo anche forzare per un breve periodo una variabile di un tipo ad esserlo di un altro e possiamo in ogni momento recuperare il tipo di dato che la var contiene in quel dato istante. |
in realtà anche in altri linguaggi è permesso utilizzare variabili di diversa tipologia, quindi stringa insieme ai numerici, all'interno della stessa procedura informatica, il problema è per php quello che ho specificato prima che è ben diverso da quello ipotizzato da lei nel periodo precedente. |
Infatti non ho detto che solo php prevede questa cosa ma di fatto ho scritto che php rientra nei linguaggi con questa carateristica.
Poi sul fatto che se uso "x" come contatore è giusto che in quella pagina "x" resti un contatore per evitare confusione ma come ho fatto notare prima php permette queste cose e io lo faccio notare. |
|
Top |
|
|
{ken} Ospite
|
Inviato: 01 Ago 2008 02:22 Oggetto: :) |
|
|
Ottima idea questo corso, grazie. |
|
Top |
|
|
{enzo} Ospite
|
Inviato: 04 Ago 2008 22:03 Oggetto: Esempi, esempi,... |
|
|
Grazie, ho capito qualcosa ...
Sono fermo al Basic del Commodore 64.
Se fate tanti esempi e mi (ci) mettete anche in condizioni di esercitarci, vi daremo il Nobel per la diffusione scientifica. |
|
Top |
|
|
heba Mortale devoto
Registrato: 15/06/06 10:54 Messaggi: 5
|
Inviato: 15 Ago 2008 13:59 Oggetto: Re: Impariamo il PHP: corso base |
|
|
freemind ha scritto: |
Vero ma se php prevede questa cosa mi sembra lecito dirlo. |
scusa, nel forum entro poco e non ho visto che avevi risposto...
sì, è giusto, forse un po' poco sviluppato come punto, anche se si può fare non è detto che sia la tecnica migliore per poter sviluppare un qualcosa, quindi sarebbe anche corretto dire e spiegare meglio che è una tecnica che porta ad un certo tipo di conseguenze, tutto qui.
Cioè se dici solo una versione senza dire l'altra, qualcuno che non conosce bene la programmazione e che non conosce bene il linguaggio può pensare che sia tutto lì.
freemind ha scritto: |
La variabile "a" in una pagina non è la variabile "a" di un'altra. Se in una pagina rappresenta un contatore di utenti e in altra è l'indice di un vettore, non ci sono problemi.
Inoltre per contare il numero di utenti connessi si usano altri metodi.
Comunque se b entra nella home e vede il count attivo con un certo valore e si sposta nell'altra pagina dove "a" è un indice e c nel frattempo fa elaborare al server qualche richiesta che implica l'uso di una var "a" in qualche pagine, non succede nulla, due pagine diverse di fatto sono due programmi diversi. Se ti riferisci a giochi con variabili statiche oppure singleton di classi (in questi caso allora bisognerebbe stare un po' più attenti) ti prego dimmelo perchè non ho capito quello che vuoi dire. |
il mio era solo un esempio semplice semplice per far capire meglio non era un esempio pratico perchè altrimenti avrei utilizzato altri esempi più eclatanti addirittura.
poi io ho avuto questi problemi ed ha sempre creato casino e si impallava poi tutto il programma quindi l'ho detto per questo, poi se a te non ha mai creato problemi meglio per te e per i tuoi programmi...
In ultimo, penso che usare php nei siti solo ed esclusivamente per far vedere l'ip e il browser di navigazione all'utente sia sprecato (è un esempio per far capire non è un esempio pratico sia chiaro).
Per quanto mi riguarda uso php per appunto programmare i giochi (che sono un po' più complessi) e programmi contabili o similari, comunque non cose semplicissime, per quelli uso altri linguaggi più abbordabili.
Cioè se lo devo usare per fare scemate allora è meglio continuare ad usare javascript che certe cose le permette di fare con tranquillità, il senso di quelloc che ho detto è questo.
freemind ha scritto: |
Infatti non ho detto che solo php prevede questa cosa ma di fatto ho scritto che php rientra nei linguaggi con questa carateristica.
Poi sul fatto che se uso "x" come contatore è giusto che in quella pagina "x" resti un contatore per evitare confusione ma come ho fatto notare prima php permette queste cose e io lo faccio notare. |
non ti mettere sulla difensiva per cortesia, non ti ho squartato come un capretto...
poi per me non ci sono problemi di sorta, io certe cose le so, era per chi non le sapeva che le ho scritto. |
|
Top |
|
|
freemind Supervisor sezione Programmazione
Registrato: 04/04/07 20:28 Messaggi: 4643 Residenza: Internet
|
Inviato: 20 Ago 2008 00:33 Oggetto: |
|
|
Ciao, pure io ultimamente non guardo molto i post perchè tra il lavoro fino a pochi giorni fa e tra le ferie ora, faccio un po' lo scappato di casa...
Io non volevo mettermi sulla difensiva anche perchè come hai detto non mi hai squartato...
Io non uso php per far vedere gli ip, io ci mando avanti cose complesse, anche le gare alle olimpiadi (non le gare di nuoto percui basta prendere i tempi) e il mio appunto era dovuto al fatto che non mi era chiara la critica che avevi fatto. Non sto e non ho detto che hai/avevi torto tu e ragione io, non mi è ancora chiara però una cosa. Ora dici che l'esempio era per dire e non era un esempio pratico, però avevi contestualizzato la cosa e io non avevo chiaro quali problemi tu possa aver avuto.
Per me possiamo anche aprire un thread apposta se vuoi così ne parliamo li; non è una gara, siamo in un forum di programmazione e parliamo di programmazione.
Se tu mi dici: "freemind, sei un coglione, la tal cosa falla così perchè vedrai che tutto è più semplice". Oppure: "freemind sei un coglione, la tal cosa falla così perchè non ti creerà bug futuri come nel modo che hai fatto tu". Io, se mi fai vedere che hai ragione, sono felice perchè ho imparato una cosa nuova; ovviamente anche il reciproco vale.
Dato che mi dici che sviluppi giochi, sicuramente dovrai gestire gli oggetti (variabili, oggetti veri, etc...) in memoria in modo diverso da come lo devo fare io quindi magari nelle tue situazioni potresti avere problemi.
Il fatto è che questo corso non vuole sostituire un manuale scritto da gente con le palle più grandi delle mie,sarei veramente un coglione se dicessi questo. Purtroppo non posso puntualizzare tutto perchè se no non arriveremo mai a pubblicare le lezioni un po' più interessanti.
Spero che le tue critiche e i nostri discorsi vengano letti da chi legge le lezioni così giustamente queste persone avranno anche altri punti di vista, leggeranno le tue puntualizzazioni e sperimentando in prima persona capiranno cosa si riesce fare con php e cosa no.
Pure io certe cose le so e così anche tutti gli altri che scrivono sul forum. Forse ho frainteso i toni però...
Per quel che riguarda:
heba ha scritto: |
sì, è giusto, forse un po' poco sviluppato come punto, anche se si può fare non è detto che sia la tecnica migliore per poter sviluppare un qualcosa, quindi sarebbe anche corretto dire e spiegare meglio che è una tecnica che porta ad un certo tipo di conseguenze, tutto qui.
Cioè se dici solo una versione senza dire l'altra, qualcuno che non conosce bene la programmazione e che non conosce bene il linguaggio può pensare che sia tutto lì.
|
hai ragione. Le lezioni pubblicate seguono una cadenza ma io ne ho pronte sempre qualcuna in più; le lezioni che scriverò dopo questo post pignoleranno meglio questi aspetti perchè effettivamente certe affermazioni potrebbero trarre in inganno chi ha incominciato da poco.
Non sono bravo a giocare con le faccine percui affermo qui la segunte cosa: non ti odio e il tono del post voleva essere del tutto neutrale, come in una discussione a quattr'occhi tra 2 persone civili.
Ho esplicitato perchè non vorrei esser frainteso. |
|
Top |
|
|
|
|
Non puoi inserire nuovi argomenti Non puoi rispondere a nessun argomento Non puoi modificare i tuoi messaggi Non puoi cancellare i tuoi messaggi Non puoi votare nei sondaggi
|
|