Visualizzazione dei risultati da 1 a 8 su 8

Discussione: [oop]teoria...

  1. #1

    [oop]teoria...

    Chi mi spiega ben bene come faccio a decidere io che variabili mettere qui:

    class qualcosa {
    var .......
    var ,......


    Da cosa decido cosa mettere... uffff ho letto listati e classi ma non ci capisco na mazza...

    Qualche anima piaaaaa????
    Questa volta, più che un voto.. è favoreggiamento.

  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    Hai letto qualche articolo sulla programmazione a oggetti, e non solo listati?

    La teoria è semplice, devi vedere i problemi come se fossero una serie di oggetti che hanno delle caratteristiche e delle interazioni tra loro.

    Ad esempio l'oggetto utente probabilmente avrà un id e un nome, quindi la classe potrebbe essere qualcosa del genere:

    codice:
    class User {
    
      var $id;
      var $nome;
      var $tabella;
    
      // costruttore eseguito all'istanziazione
      function User($tabella) {
         $this->tabella = $tabella;
      }
    
      function getById($id)  {
         $query = "SELECT * FROM ".$this->tabella." WHERE id=".$id;
    
         $result = mysql_query($query);
         $row = mysql_fetch_array($result);
         $this->id = $row['id'];
         $this->nome = $row['nome'];
      }
    Poi quando userai la classe :

    codice:
    // istanzio la classe
    $user = new User('tabella_utenti');
    // prelevo da db l'utente con id 2
    $user->getById(2);
    // stampo la proprietà nome
    echo $user->nome;
    spero di averti chiarito un po' il concetto...


  3. #3
    OK FIN QUI CI SONO.. Anzi forse sono anche un pò piu avanti..
    Quello che non capisco è come faccio a decidere quali sono le

    var ...
    var ...

    X esempio tu dici..
    Ad esempio l'oggetto utente probabilmente avrà un id e un nome
    xò poi metti anche la var $tabella;

    è lì che non capisco piu niente... abbi pazienza va...
    Questa volta, più che un voto.. è favoreggiamento.

  4. #4
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    Tutto ciò che fa parte delle proprietà descrittive dell'oggetto va messo li.

    Quindi in effetti l'utente ha una id e una pass, e sono le vere proprietà dell'oggetto, ma la tabella ad esempio è comunque una proprietà dell'oggetto.

    Un'altro ragionamento che puoi fare è che li ci vanno le variabili che devono essere condivise da diversi metodi, e per cui vuoi tenere "una memoria".

  5. #5
    BENE OTTIMO GRAZIE..

    Sfrutto un'altro pò il momento..
    Non è detto che una classe abbia un metodo che fà funzionare tutto..

    x esempio in una classe x un database io posso avere il metodo che mi dà una riga di una tabella, il metodo che mi fa l'update di un campo.. e a seconda dell'esigenza richiamo il metodo che mi serve giusto..

    Xke ho creato una classe del genere xò non riesco ad ottenere risultati..
    Questa volta, più che un voto.. è favoreggiamento.

  6. #6
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    Non ho capito bene cosa intendi con questa frase:

    Non è detto che una classe abbia un metodo che fà funzionare tutto..
    Sinceramente non so se il mio metodo di lavorare sia il più corretto (mi sono ripromesso di studiare meglio la cosa), ma in genere i miei oggetti hanno un certo numero di metodi che mi servono sempre (insert, update, delete, getById, getlist), e con questi riesco a fare il 90% delle cose che mi servono...

    Ciao

  7. #7
    Quel che voglio dire io è che la classe ha svariati metodi che comunicano tra loro.. poi a seconda dell'esigenza che ho richiamo il metodo ke mi serve.. e questo sfruttando anche altri metodi mi darà il risultato che necessito..

    Mariii che paroloni...
    La ringrazio cmq..
    Questa volta, più che un voto.. è favoreggiamento.

  8. #8
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    Si esatto.

    Prima ti ho chiesto se avevi letto qualche articolo a riguardo perchè spesso vengono fatti degli esempi per semplificare quello che ci siamo detti..

    Ad esempio per semplificare (o spiegare meglio quello che hai detto) c'è il seguente esempio:

    Immagina che l'oggetto che stai scrivendo descriva un oggetto Mezzo di trasporto.

    L'oggetto Mezzo avrà diverse proprietà ( quantita_ruote, cilindrata, colore ecc ecc) e diversi metodi (innesta marcia, accelera, frena).

    Poi potresti scrivere un metodo parcheggia, composto da diversi accelera frena e innesta marcia, proprio come dici tu, un metodo che si avvale di altri metodi per fare quello che deve fare.

    Ciao

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 © 2024 vBulletin Solutions, Inc. All rights reserved.