Pagina 2 di 6 primaprima 1 2 3 4 ... ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 59
  1. #11
    ehm ho scritto male!
    class prova2 extends prova
    ovviamente!

  2. #12
    Utente di HTML.it
    Registrato dal
    May 2001
    Messaggi
    3
    Posso fare un po' di "critica costruttiva"? Non per sminuire il lavoro fatto, però una pagina che inizia così:

    Programmazione ad oggetti o programmazione strutturale?
    La risposta è semplice: programmazione ad oggetti...il problema è che la programmazione ad oggetti (OOP d'ora in avanti) non è supportata in modo molto "convincente" dalla versione attuale di PHP, e soprattutto sembra essere una rgomento ostico per molti.
    Mi fa un po' sorridere!

    Del tipo: "Cara, stasera si va al ristorante o in pizzeria?"
    Lei: "Preferisco il ristorante".
    "Bene, eccoci arrivati, peccato che qui facciano solo pizze e, se proprio rompi le scatole, un paio di primi"!



    Poi, se posso aggiungere altre "opinioni personali in ordine sparso", sperando possano essere di aiuto a qualcuno e creare ulteriori argomenti di discussione:
    - la programmazione OO è utilizzata per gestire soprattutto progetti di una certa dimensione, dove servono spesso elementi riutilizzabili e modificabili senza la riscrittura di linee e linee di codice (da qui l' "extends")
    - la programmazione procedurale è più pratica, veloce, se volete anche meno "cervellotica"!!
    - al momento, come detto in testa alla pillola, gli oggetti sono supportati in una maniera che definirei "provvisoria"! Non che non funzionino, anzi, solo che un programmatore magari esperto di Java si potrebbe chiedere che razza di "cosa" sia PHP che non supporta alcune delle caratteristiche che lui è abituato ad utilizzare! Pare che nelle prossime release di PHP il sopporto OO verrà migliorato ... Personalmente, spero che che non venga sottovalutato il metodo procedurale a favore del metodo OO o viceversa ... Vedremo, fin'ora il team di sviluppo non ha mai scontentato nessuno!!

    Ultimissima cosa (giuro!). Mi pare, e qui parlo per pura esperienza personale, che per un programmatore abituato alla programmazione procedurale trovi gli oggetti un qualche tipo di "entità indefinibile" della quel si chiede l'utilità, e che un programmatore abituato a lavorare ad oggetti consideri il metodo procedurale come un qualcosa di adatto agli "script kiddies" ...
    Personalmente, li uso entrambi, dando quasi sempre la precedenza al procedurale (ho sempre guardato male anche gli oggetti in Perl, sarà deformazione professionale ma continuo a preferire le buone e vecchie subroutines!!), anche se spesso mi è capitato di scegliere il metodo OO per una serie di motivi, in primis la riutilizzabiltà e l'estendibilità in progetto complessi ...
    Altre impressioni in merito?

    Bene, tedio terminato!

  3. #13
    Utente di HTML.it L'avatar di M4rko
    Registrato dal
    Dec 2000
    Messaggi
    619
    mi sono rimasti solo un paio di quesiti
    quando crei un'istanza della classe figlia, NON viene eseguito il costruttore della classe padre, per cui nel costruttore della figlia dovresti inserire esplicitamente il richiamo al costruttore della classe padre

    esempi:
    codice:
    class Padre {
      function Padre() {
        echo 'costruttore padre';
      }
    }
    class Figlia {
      function Figlia() {
        echo 'costruttore figlia';
      }
    }
    
    // creo un'istanza di Figlia:
    $var = new Figlia;
    // cosi viene eseguito solo il costruttore di Figlia
    se volessi chiamare anche il costruttore di padre, lo dovrei richiamare esplicitamente:
    codice:
    class Figlia extends Padre {
      function Figlia() {
        $this->Padre();
        echo 'costruttore figlia';
      }
    }
    nel caso in cui le due classi abbiano due funzioni (una a testa) con lo stesso nome, la scrittura $this->funzione(); richiama la funzione della classe, mentre la scrittura Classe::funzione(); richiama la funzione della classe appropriata.
    esempio
    codice:
    class Padre {
      function pippo() {
        echo 'pippo dentro a padre';
      }
    }
    class Figlia extends Padre {
      function pippo() {
        echo 'pippo dentro a figlia';
      }
    }
    
    // creo un oggetto Figlia
    $var = new Figlia;
    
    // pippo() della classe Figlia
    $var->pippo();
    
    // pippo() della classe Padre
    Padre::pippo();
    spero di essere stato chiaro e soprattutto di non aver scritto castronerie :D
    Tutti hanno bisogno di credere in qualcosa.
    Io credo che mi farò un'altra birra.


  4. #14
    Utente di HTML.it L'avatar di M4rko
    Registrato dal
    Dec 2000
    Messaggi
    619
    Posso fare un po' di "critica costruttiva"?
    sono d'accordo un po su tutto


    ah dimenticavo... complimenti per il pillolone
    Tutti hanno bisogno di credere in qualcosa.
    Io credo che mi farò un'altra birra.


  5. #15

    Re: [PILLOLA] Programmare ad oggetti in PHP4

    Originariamente inviato da Dark Bard
    come potete notare, non è obbligatorio che una classe abbia una superclasse, ma in caso succeda, a superclasse può essere una sola. Infatti PHP non supporta l'ereditarietà multipla (punto di forza di C++ e Python), che permette di ereditare metodi e proprietà da più genitori, come il più blasonato Java.
    Solo una cosa...anche il Java non supporta l'ereditarietà multipla.

  6. #16
    Originariamente inviato da saibal
    ok...facciamo così: io la inserisco la settimana prossima. se vuoi fare qualche correzione hai tempo.

    come autore dell'articolo che metto? il tuo nick o il tuo nome (che neanche so?)
    levo il paio di stronzate e metto a posto due cosucce, poi ti faccio sapere tutto...se vuoi ti invio il TXT formattato in VBcode...
    eXtending-Php.net coming soon ...

  7. #17

    Re: Re: [PILLOLA] Programmare ad oggetti in PHP4

    Originariamente inviato da Kylnas
    Solo una cosa...anche il Java non supporta l'ereditarietà multipla.
    di fatti ho scritto:

    Infatti PHP non supporta l'ereditarietà multipla ... come il più blasonato Java.
    eXtending-Php.net coming soon ...

  8. #18
    Originariamente inviato da ev
    Posso fare un po' di "critica costruttiva"? ...
    rileggendo il tutto sono d'accordo con te per quanto riguarda l'introduzione...io, abituato a programmare ad oggetti, consiglio questo tipo di programmazione...non volevo sminuire la procedurale...era solo un'intro generale...

    comunque la pillola era sulla programmazione ad oggetti in PHP, non sul fatto che convenga o no utilizzarla...infatti ho evitato di esplicare i soliti "punti forti" della OOP...

    ognuno è libero di programmare come vuole, ma ti voglio vedere a gestire un programmone scritto in Pascal oppure uno scritto in Python...a parte la differenza tra i tempi di sviluppo,anche tra quelli di ottimizzazione e di revisione del codice c'è un abisso...non per nulla gli ultimi linguaggi usciti supportano appieno la OOP (non tralasciando comunque il procedurale).

    A quanto la penso io, in caso dobbiate scrivere uno stupidissimo guestbook, non ve ne dovrebbe fregare molto degli oggetti, mentre in caso di sviluppi di progetti più grandi, che magari richiedono una collaborazione, è un mio consiglio (ma nessuno vi obbliga a farlo...vBulletin è scritto in procedurale ed è un ottimo forum) usare la OOP...

    Comunque grazie della critica

    se ci sono problemi dite pure...ciao
    eXtending-Php.net coming soon ...

  9. #19
    Utente di HTML.it
    Registrato dal
    May 2001
    Messaggi
    3
    comunque la pillola era sulla programmazione ad oggetti in PHP, non sul fatto che convenga o no utilizzarla...infatti ho evitato di esplicare i soliti "punti forti" della OOP...
    Certo, non per niente avevo premesso che i miei erano "pensieri in libertà"! Non credo che in un forum come questo stonino discussioni di "stile" o di "metodo" oltre alle classiche domande-risposte!
    Se poi sia meglio iniziare un thread proprio per questi motivi, nulla in contrario!

    ognuno è libero di programmare come vuole, ma ti voglio vedere a gestire un programmone scritto in Pascal oppure uno scritto in Python
    Guarda, a parte la gran mano che danno gli oggetti anche per un discorso di ordine (e qui torno sul discorso di una classe che ne estende un'altra ... Vai al punto senza dover riscrivere righe e righe ogni volta), c'è da considerare (soprattutto?) la mano che scrive il codice! Sarà che sono un precisino da fare spavento (ho sempre le mie directory lib/ config/ e altre "standard"!), ma spesso si trova nel codice un tal caos che oggetti o non oggetti perdi le ore (se non le giornate!) solo per capire la logica del codice! Ma quello della "cura" del/i programmatore/i è un discorso trito e ritrito!

    Ciao!
    ev che spera di non essere OT!

  10. #20
    Utente di HTML.it L'avatar di M4rko
    Registrato dal
    Dec 2000
    Messaggi
    619
    A quanto la penso io, in caso dobbiate scrivere uno stupidissimo guestbook, non ve ne dovrebbe fregare molto degli oggetti, mentre in caso di sviluppi di progetti più grandi, che magari richiedono una collaborazione, è un mio consiglio (ma nessuno vi obbliga a farlo...vBulletin è scritto in procedurale ed è un ottimo forum) usare la OOP...
    in effetti il "problema" puo` essere il riuscire a capire quando realmente programmare ad oggetti in php puo` essere piu` utile della strategia procedurale. programmare ad oggetti porta a soluzioni eleganti e pulite, tuttavia spesso per progetti medio-piccoli l'impressione che ho avuto (personalissima) e` che l'utilizzo della oop era quasi piu un esercizio di stile che non una reale necessita`.

    attendiamo con ansia i nuovi sviluppi per la versione 5
    Tutti hanno bisogno di credere in qualcosa.
    Io credo che mi farò un'altra birra.


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.