Domanda

C'è un modo per creare un metodo privato in XBL ?

- update

L'unica documentazione su MDN non dice nulla circa i metodi privati, ma è un wiki non è sempre completa ..

È stato utile?

Soluzione

La risposta alla tua domanda è che XBL non supporta i metodi privati. Tuttavia, questo non significa che è sufficiente per lasciare i vostri metodi pubblici apertamente a vista e solo accettare questa situazione senza combattere. Ci sono alcune opzioni che avete a vostra disposizione che possono aiutare a comunicare che un metodo è privato o aiuto scoraggiare l'uso o la modifica:

Usa una sottolineatura nei nomi dei metodi :

Mozilla consiglia di utilizzare una sottolineatura ai metodi marchio e campi come privato. Inoltre, molte librerie JavaScript usano sottolineature nei metodi che gli sviluppatori desiderano marchio come private. Anche se uno sviluppatore novizio poteva ignorare questo e ancora invocare il metodo, la maggior parte delle persone che hanno una certa esperienza di base con librerie JavaScript, Firefox lo sviluppo di estensione, o JavaScript, in generale, dovrebbe sapere cosa si intende quando si dispone di un metodo preceduto da un trattino basso.

Usa eredità ai metodi privati ??nascondere :

Lontano dagli occhi, lontano dal cuore.

In alcune lingue, funzionalità che è comune a una serie di sottoclassi è spesso spostato in una classe astratta di base. Nella sottoclasse, i metodi ereditati non saranno visibili nel codice sottoclasse.

Anche se questo non è sicuramente "privato", si potrebbe incapsulare i vostri metodi "privati" in un XBL rilegatura e inserire i vostri metodi pubblici in un XBL vincolante che estende il legame genitore. L'ereditarietà è uno dei più potenti funzionalità di XBL, e questo potrebbe aiutare a proteggere i vostri metodi privati ??vengano utilizzati semplicemente perché non appariranno nel XBL binding lo sviluppatore è direttamente interagendo con.

Si potrebbe quindi mettere ampi commenti nel genitore che descrive lo scopo della funzionalità "privato" e che non è destinata ad essere pubblico.

Tieni presente che, anche se si potrebbe segnare un metodo come privata, questo ancora non si fermerà qualcuno che è determinato. Si potrebbe ancora sufficiente contrassegnare il metodo come "pubblico" e usarlo comunque.

Ecco documentazione su XBL, che afferma che i metodi sono privati, e discute anche l'eredità: https://developer.mozilla.org/en/XUL_School/Custom_XUL_Elements_with_XBL

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top