La mia domanda JavaScript OOP è in fondo se vuoi saltare la mia introduzione.
In una risposta a la domanda Accesso alle variabili da altre funzioni senza utilizzare le variabili globali , c'è un commento su OOP che dice:
If there's a chance that you will reuse this code, then I would probably make the effort to go with an object-oriented perspective. Using the global namespace can be dangerous -- you run the risk of hard to find bugs due to variable names that get reused. Typically I start by using an object-oriented approach for anything more than a simple callback so that I don't have to do the re-write thing. Any time that you have a group of related functions in javascript, I think, it's a candidate for an object-oriented approach.
Mi suona sincera per quello che ho visto alcuni dei miei vecchi colleghi OOP. Ci sono molti approcci diversi e diverse voci che portano in direzioni diverse. Dato che sono uno sviluppatore front-end e un designer dell'interfaccia utente, sono un po 'confuso.
Sviluppa la domanda Ho sentito da una varietà di luoghi che le variabili globali sono intrinsecamente cattive e cattive, quando si fa un Javascript non orientato agli oggetti, e che ci sono tre scelte disponibili per rendere una variabile da una funzione, visibile e utilizzabile da un'altra funzione, ad esempio , la funzione A per essere visibile alla funzione B; oppure, una variabile della Funzione A da passare e utilizzabile nella funzione B.
- renderlo globale
- trasformalo in proprietà dell'oggetto o
- passalo come parametro quando chiami B da A.
Ho letto di spazi dei nomi, curriculum e altri approcci ...
Domanda: Detto ciò, mi chiedevo quale sia la migliore struttura OOP o la migliore pratica di codice in JavaScript che mantenga le cose incapsulate e offra maggiore sicurezza dall'avere esposto le vostre variabili alla manipolazione?