Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it L'avatar di gaten
    Registrato dal
    Jul 2007
    Messaggi
    1,269

    Object Oriented configurazione attributi

    Ragazzi volevo fare una domanda, in base a cosa, scegliamo di settare gli attributi di una classe a: private, protected e public ?

    (Premetto che non sò se sia giusto postare qui, ma stò programmando in php . Qualora avessi sbagliato chiedo scusa ).
    Con i sogni possiamo conoscere il futuro...

  2. #2
    Risposta veloce che meriterebbe approfindimenti o esempi:

    - private: visibili solamente all'interno della classe stessa.
    - public: visibili a tutti.
    - protected: visibili solamente alle sottoclassi.

    Ovviamente dipende dalle situazioni, ma gli attributi in genere dovrebbero essere tutti o private o protected ed accessibili solamente tramite eventuali metodi pubblici
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Utente di HTML.it L'avatar di _debo
    Registrato dal
    Mar 2012
    residenza
    London, UK
    Messaggi
    858
    Se si parla semplicemente di attributi non si definiscono mai come pubblici, ma sempre come protected o private e si forniscono poi metodi pubblici che li espongono esternamente.

    Per quanto riguarda i metodi come giustamente ha fatto notare satifal dipende molto dal contesto in cui ti trovi. Sono decisioni di software design dettate dalle specifiche funzionali che hai. Diciamo che in linea generale va definito pubblica la serie di metodi che definisce il behaviour dell'oggetto all'interno del "mondo" in cui si trova.

    Rende l'idea?

  4. #4
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    beh per velocita' a volte li lasci pubblici

    cmq ne parlavamo anche qui : http://forum.html.it/forum/showthrea...6#post13599466

  5. #5
    Utente di HTML.it L'avatar di _debo
    Registrato dal
    Mar 2012
    residenza
    London, UK
    Messaggi
    858
    Originariamente inviato da Virus_101
    beh per velocita' a volte li lasci pubblici
    Al massimo poi vieni sul forum a chiedere aiuto quando non capisci più come mai non va

  6. #6
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    Muahahahahahah.

    se devo fare oggetti al volo per descrivere dati ... metto attr pubblici se faccio classi con metori sono sempre privati con getters and setters

  7. #7
    Utente di HTML.it L'avatar di _debo
    Registrato dal
    Mar 2012
    residenza
    London, UK
    Messaggi
    858
    Se devo fare oggetti al volo uso la StdClass di SPL non perdo nemmeno tempo a scrivere.

  8. #8
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    si e quegli oggetti hanno attr pubblici o privati ?

  9. #9
    Utente di HTML.it L'avatar di _debo
    Registrato dal
    Mar 2012
    residenza
    London, UK
    Messaggi
    858
    Pubblici ma a dirla tutta non li usi nemmeno come oggetti ma come strutture dati visto che comunque non puoi aggiungere metodi. Oddio non è vero puoi farlo con le lambda function ma non utilizzerei mai un stdClass per quello.

    Di solito le StdClass le usi nei mapper o per serializzare valori in modo strutturato e li butti via immediatamente.

  10. #10
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    ad esmpio soap quando completa le request genera tutte std class e per quello si anche io li uso cosi'

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.