RAPPEL JAVASCRIPT

ANGULARJS EST UN FRAMEWORK JAVASCRIPT, IL EST DONC BASÉ SUR LES OBJETS. IL FAUT SAVOIR QU’EN JAVASCRIPT TOUT EST OBJET.
LE JS EST UN LANGUAGE TYPÉ DYNAMIQUEMENT.

EXEMPLE AVEC LE REVEALING MODULE DESIGN PATTER

Avec le module pattern, on peut encapsuler son code et prévenir son accès depuis l’extérieur.

var Exposer = (function() {
    var privateVariable = 10;

    var privateMethod = function() {
        console.log('Inside a private method!');
        privateVariable++;
    }

    var methodToExpose = function() {
        console.log('This is a method I want to expose!');
    }
    var otherMethodIWantToExpose = function() {
        privateMethod();
    }

    return {
        first: methodToExpose,
        second: otherMethodIWantToExpose
    };
})();

Exposer.first();        // Output: This is a method I want to expose!
Exposer.second();       // Output: Inside a private method!
Exposer.methodToExpose; // undefined

En savoir plus : https://scotch.io/bar-talk/4-javascript-design-patterns-you-should-know