Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    gli oggetti non mi entrano in testa

    Ho sempre sviluppato (per hobby) in maniera procedurale, adesso, con PHP5, voglio immergermi nell'oscuro mondo della programmazione OOP anche se faccio fatica ad infilarmela in testa. Vi spiego i mie dubbi. Prendiamo ad esempio una versione semplificatissima della gestione delle paghe, alla vecchia maniera fare i così:

    - creo una tabella nel mio DB contenente per ogni impiegato matricola, nome, cognome, stipendio
    - mi creo delle funzioni che effettuano le varie operazioni sulla tabella (stampa elenco dipendenti, modifica stipendio, ecc..)
    - creo la mia bella interfaccia dove l'utente può effettuare le varie operazioni sui dipendenti.

    In poche parole se l'utente dice che il fortunato dipendente Mario Rossi matricola 1234 riceve un aumento di 1000 euro, il mio programma cercherà nella tabella la matricola 1234 e aggiungerà 100 euro alla colonna dello stipendio.

    Passiamo alla nuova maniera:

    - creo la classe Dipendente che avrà come proprietà matricola, nome cognome e stipendio
    - mi creo i vari metodi, modifica stipendio, modifica anagrafica, ma quando devo fare la stampa elenco dipendenti mi perdo già...

    ma perché mi perdo? Perché io gli oggetti Dipendenti li voglio salvare, e come li salvo? Oppure quando faccio il metodo che aumenta lo stipendio faccio una select sul db per la matricola ed incremento il campo stipedio? E per la stampa dipendenti? Leggo tutta la tabella e poi stampo i dati? Così non diventerebbe molto simile a come facevo prima?

    Chiedo scusa per la mia ignoranza in materia e per il post un po' lungo!

  2. #2
    Quando hai a che fare come in questo caso con oggetti e database normalmente ci sono due ruoli.
    L'oggetto ed il gestore.

    Ad esempio, l'oggetto Dipendente normalmente è un oggetto che integra all'interno tutte le classiche funzioni per lavorare sull'oggetto in sè: salva, modifica, copia, incolla etc.
    Poi c'è una classe "esterna" che ha il compito di interagire con i dipendenti.

    La classe, ad esempio, potrebbe avere un metodo find_by_name() che restituisce un array di oggetti Dipendente.
    Per il tuo caso specifico dai uno sguardo a Propel (http://propel.phpdb.org/trac/)

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