avant-propos
Le modèle de conception de stratégie fait référence à un problème qui correspond à plusieurs solutions, dont une n'est pas nécessairement utilisée, et il est possible d'ajouter plusieurs solutions à tout moment
Par exemple, lorsque nous allons acheter des livres, la librairie organisera des activités promotionnelles, telles que 20 sur 100, 50 sur 200, 20% de réduction, etc., mais il y a plus que ces promotions, et des promotions seront ajoutées dans le à l'avenir, comme 30 % de réduction sur Double 11. Une fois l'événement Double 11 terminé, l'événement de réduction de 30 % doit être annulé.
Tout d'abord, nous n'utilisons pas le modèle de conception de stratégie pour implémenter le calcul du prix réduit. Nous déclarons une méthode qui accepte deux paramètres. L'un de ces deux paramètres est le prix et l'autre est le type de remise. Ensuite, utilisez l'instruction if dans la méthode pour déterminer le type de remise et calculer le prix. Si Pas de remise correspond au prix d'origine, puis renvoie le prix réduit calculé
1 2 3 4 5 6 7 8 9 dix 11 12 13 |
|
Cette méthode convient s'il y a relativement peu d'activités de remise, mais chaque fois que vous ajoutez une nouvelle activité de remise, vous devez ajouter l'instruction if de l'activité de remise à la méthode pour juger et mémoriser le champ du nouveau type de remise pour éviter le activité de remise précédente. Le nom est répété et l'instruction if doit être supprimée manuellement lorsque l'activité de remise expire. À long terme, le code est non seulement redondant mais également très facile à gérer
Implémenté à l'aide du modèle de conception de stratégie :
Nous déclarons une fonction de fermeture. Il y a un centre de type de remise dans la fonction de fermeture, qui contient plusieurs types de remise par défaut et une méthode pour calculer le prix de remise. Dans la méthode, nous définissons deux méthodes pour lui, l'une consiste à ajouter Le type de remise méthode, l'une consiste à supprimer la méthode de type de remise, puis à exposer la méthode de calcul de remise
1 2 3 4 5 6 7 8 9 dix 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
|
Le modèle de conception de la stratégie est facile à maintenir, facile à comprendre et facile à développer