2010-06-16 10 views
10

Sono uno sviluppatore di plugin wordpress. Ho visto la fonte di molti plugin e molti plugin usano "classi" in loro e alcuni senza classi.Quando è necessario utilizzare le classi in PHP

Molti plug-in codificati come "wp-postratings" non utilizzano Classi e alcuni piccoli plug-in utilizzano Classi.

modifica: Dato che le classi hanno parametri di accesso privati, pubblici e protetti, mi sento un assaggio di sicurezza

Diverso da PHP, altre lingue richiedono le classi?

È obbligatorio utilizzare le lezioni?

Ho bisogno di alcuni suggerimenti.

+2

verrà un giorno, nella tua vita di sviluppo quando avrai bisogno di qualcosa di più complesso delle funzioni, il suo nome sarà classi! –

risposta

17

No, non è obbligatorio, né aumenta la sicurezza di per sé. è solo un different style di programmazione.

La maggior parte dei programmatori concorda sul fatto che la programmazione orientata agli oggetti (classi) presenta molti vantaggi rispetto alla programmazione modulare (funzioni). Ma è più un dibattito religioso che preferirei non entrare :)

+0

erm, in realtà non ** bisogno ** di classi per implementare OO - semplifica semplicemente – symcbean

+0

@symcbean: ho sempre pensato che le lezioni siano una parte fondamentale di OOP. Puoi dare un esempio di OOP senza classi? –

+1

@Felix - È possibile simulare molti aspetti delle classi in una lingua come C utilizzando le strutture e i puntatori di funzione.Puoi perfino simulare l'ereditarietà in una certa misura usando i sindacati o l'allineamento intelligente nelle tue stese. Vedete anche cose che assomigliano a OO in molte API C. Come l'utilizzo di handle nell'API WIN32 in cui si hanno diversi tipi di handle, operazioni che funzionano solo su determinati tipi e operazioni che funzionano su tutti i tipi di handle, ecc. –

2

Ovviamente non è un requisito tecnico, ma se la struttura del codice del tuo plugin può essere descritta in 2 o più classi, direi OO. Non ha nulla a che fare con la sicurezza ma potrebbe rendere il tuo codice più pulito e più facile da mantenere.

1

A meno che non si abbia una buona ragione per non farlo, consiglio sempre di usare le lezioni. Non c'è un vero svantaggio nell'usarli.

5

Si dovrebbe leggere su Object Oriented Programming. Non è obbligatorio utilizzare le classi, ma può semplificare l'organizzazione del codice e la manutenzione del codice.

+0

Recentemente ho visto un tutorial nello sviluppo di un'applicazione web. Usa le classi per il login e il sistema di registrazione. Quindi le classi aumentano la sicurezza? –

+0

@Aakash Chakravarthy: No, non aumentare la sicurezza. Ma rendono più facile tenere traccia degli stati e delle funzionalità di gruppo. Ad esempio, è molto più semplice avere una classe 'User' che contenga tutte le informazioni dell'utente corrente in modo da utilizzare molte variabili globali. –

+3

L'uso delle classi (o meno) non ha nulla a che fare con la sicurezza e tutto ciò che riguarda l'organizzazione del programma in blocchi di codice riutilizzabile e facile da capire. –

1

L'utilizzo delle classi non è obbligatorio ma aiuta solo te e altri sviluppatori a modificare il tuo codice per comprenderlo meglio.
Secondo me dovresti usare le lezioni ogni volta che è necessario.

2

Come già detto, non è obbligatorio, né aumenta la sicurezza di per sé.

Un vantaggio enorme, tuttavia, è che semplifica il prefisso e riduce il rischio di causare accidentalmente un errore nella ridichiarazione di una funzione.

Uso sempre OOP quando posso.

0

Non si scrivere codice in un modo orientato agli oggetti. Puoi anche scrivere codice procedurale in PHP. Molti progetti fanno, Drupal, se non sbaglio è uno di loro.

Alla fine della giornata. Utilizza il paradigma di programmazione più adatto all'attività in corso, che sia procedurale, funzionale o OOP.

Problemi correlati