Sto lavorando con AngularJS su un browser game e ho un sacco di costanti "business".
Queste costanti verranno spesso aggiornate durante i test di gioco (bilanciamento del gioco) e utilizzate da diversi moduli / funzionalità.
Attualmente li gestisco in un singolo file del genere:
constants.js
var gameConstants = {
BASE_COST: 100,
MULTIPLIER_COST: 1.07
};
myFactory.js
app.factory('MyFactory', function () {
return {
getRealCost: function() {
return gameConstants.BASE_COST * gameConstants.MULTIPLIER_COST;
}
}
});
Ma sto pensando a un fornitore di servizi per le costanti del gioco. Qualcosa come:
constantServices.js
app.factory('ConstantServices', function () {
var baseCost: 100, //Should I use UPPER_SNAKECASE here too?
multiplierCost: 1.07
return {
getCost: function() {
return baseCost;
}
getMultiplierCost: function() {
return multiplierCost;
}
}
});
myFactory.js
app.factory('MyFactory', ['ConstantServices' function (ConstantServices) {
return {
getRealCost: function() {
return ConstantServices.getCost() * ConstantServices.getMultiplierCost();
}
}
});
Cosa ne pensi? È una buona idea creare un fornitore di servizi solo per le costanti (ad esempio, chiamare un servizio senza alcuna logica)? Pensi a un modo migliore per gestire queste costanti?