Description du mode monobloc
1. Description: Le mode monobile est un objet qui a été instancié dans l'accès statique. Cet objet ne peut être accessible que via une entrée unique, un objet qui a été instancié ou pour être instancié; Dans les langages dynamiques côté serveur tels que Java et .NET C #, il peut garantir que les opérations de classe sont effectuées en douceur et éviter les opérations parallèles provoquant une confusion dans les données;
2. Avantages du mode monobile:
1>. Réduire les nouvelles opérations pour éviter d'accélérer les opérations de mémoire fréquentes et d'occuper la mémoire;
2>. Minimiser les frais généraux des objets dans les grands systèmes;
3>. Comme mentionné ci-dessus, il peut garantir que certains types d'opérations ont des séquences et des opérations précises pour éviter les anomalies de données causées par le traitement parallèle;
Bien sûr, les avantages mentionnés ci-dessus sont tous dans le langage du serveur. Dans une langue faible comme JavaScript, ne vous inquiétez pas tellement, car les scripts sont opérés sur votre propre client, et il n'y a pas de problème de conflits d'opération; Il équivaut à utiliser seul le serveur entier, alors ne vous inquiétez pas de savoir qui fera fonctionner vos données;
Code source d'instance
La copie de code est la suivante:
var singleton = {
Instance: null,
MailSender: function () {
var self = this;
self.to = '';
self.title = '';
self.Content = '';
self.send = function () {
// Envoi du corps
}
},
getInstance: function () {
if (this.instance == null) {
this.instance = new singleton.mailSender ();
}
Renvoyez ceci.instance;
}
}
Comment utiliser:
La copie de code est la suivante:
var mail = singleton.getInstance ();
mail.to = 'toname # mail.com';
Mail.title = 'Mode unique Send';
Mail.Content = 'Envoyer du contenu';
Mail.Send ();
Lorsque certains frameworks mondiaux, tels que des cadres d'interface utilisateur riches comme DWZ, créent un Singleton mondial, et que le Singleton.Instance a une valeur, il n'est pas nécessaire de le créer à nouveau;
Bien sûr, s'il est écrit comme celui-ci, il sera plus clair et le même que le langage du serveur:
La copie de code est la suivante:
Singleton.getInstance (). To = 'toname # mail.com';
Singleton.getInstance (). Title = 'mode unique Send';
Singleton.getInstance (). Content = 'Send Content';
Singleton.getInstance (). Send ();
Autres instructions réelles
Où le mode monobloc est-il plus utile? Par exemple, lorsqu'il y a un fichier de configuration unifié sur un serveur d'opération, comme des opérations simultanées à grande échelle, vous devez prêter attention à la situation où d'abord arrive et arrive, tels que les enregistrements du processus d'opération de l'échange, etc., ils peuvent être utilisés en mode unique;
Aussi: Méthode en mode monobile:
1. Le chemin ci-dessus est appelé paresseux
2. Comment faire des bâtons affamés:
La copie de code est la suivante:
var singleton = {
Instance: new singleton.mailsender (),
MailSender: function () {
var self = this;
self.to = '';
self.title = '';
self.Content = '';
self.send = function () {
// Envoi du corps
}
},
getInstance: function () {
Renvoyez ceci.instance;
}
}
La même façon d'utiliser;
Utilisez la fermeture pour créer un motif unique et masquer l'objet d'instance
1. Code:
La copie de code est la suivante:
var singleton = (function () {
var instance = null;
fonction MailSender () {
this.to = '';
this.title = '';
this.Content = '';
}
MailSender.prototype.Send = function () {
// Envoi du corps
}
retour {
getInstance: function () {
if (instance == null) {
instance = new MailSender ();
}
retour d'instance;
}
}
}) ();
2. Comment utiliser:
La copie de code est la suivante:
// même utilisation
var mail = singleton.getInstance ();
mail.to = 'toname # mail.com';
Mail.title = 'Mode monobile fermé Send';
Mail.Content = 'Envoyer du contenu';
Mail.Send ();