0
votes

Le contexte est-il dans Android une mise en œuvre d'un modèle de conception de stratégie complexe?

Je lisais plusieurs guides et un livre sur la stratégie modèle. J'ai remarqué que dans tous les guides, il y a une référence à une classe qui favorise la délégation par rapport à la mise en œuvre décider de certains comportements spécifiques.
Comme je gère dans Android la classe, Objet Contexte Le quotidien, j'aimerais savoir si les ingénieurs SDK ont appris au contexte android comme une implémentation concrète (complexe) de le modèle de stratégie.


0 commentaires

3 Réponses :


0
votes

Fondamentalement, Context est référence qui détient des informations globales sur un environnement d'application " ".

C'est une classe abstraite dont la mise en œuvre est fournie par le système Android .

Il permet d'accéder aux ressources et aux classes spécifiques à l'application, ainsi que des appels en hausse des opérations au niveau des applications telles que le lancement des activités, des inventations de diffusion et de réception, etc.

En bref, il est fait référence à propos des choses à l'intérieur de l'application (vous pouvez le supposer en tant que pointeur global au registre de processus d'application à utiliser dans l'environnement d'application, * à mon avis) .

Vous pouvez consulter plus ici .


3 commentaires

ok merci bien de savoir, mais je ne m'attendais pas à un lien avec le Guide officiel, mais une réponse claire de mes questions sur mes questions a) Oui / Non est un modèle de stratégie et B) Pourquoi? Pourquoi? Je suppose que vous disiez implicitement non, n'est pas un modèle de stratégie, mais une simple classe abstraite, correcte?


Ouais, Selon mes connaissances , il est lié à une application spécifique. Donc, oui, c'est un modèle de stratégie mais c'est la mise en œuvre car une simple classe abstraite est également vraie. Parce que, presque tous les composants SDK sont un enfant direct ou indirect à cette classe.


ok merci beaucoup pour votre explication, je vais attendre des réponses afin d'accepter le seul plus près de ma question



2
votes

comme Wikipedia dit , le modèle de conception de stratégie permet de sélectionner un algorithme au moment de l'exécution (où plusieurs Des implémentations possibles existent). La classe Context n'envoie pas d'algorithme unique. Et pour les services qu'il permet d'accéder, il n'y a pas de multiples implémentations possibles sélectionnées au moment de l'exécution; Il n'y a qu'une seule implémentation fournie par le système d'exploitation.

Par conséquent, non, la classe Context n'a rien en commun avec la stratégie modèle.


1 commentaires

Donc, la sélection d'un algorithme au moment de l'exécution, car la composition est meilleur que l'héritage mantra, cela justifie Kotlin vient avec un intégré par délégué à Kotlin. Vous dites contexte n'encapule pas certains algorithmes, cela me suggère que l'encapsulation est pour quels changements, cela devrait être une preuve ultérieure que nous sommes hors de portée de l'application d'une stratégie > motif !. Merci beaucoup, réponse acceptée && upvoted



1
votes

Les modèles de conception représentent les meilleures pratiques utilisées par les développeurs de logiciels axés sur des objets expérimentés. Il est naïf de croire en une plate-forme comme Android Ceci n'est pas appliqué. Par exemple, un modèle de conception lors de la conception de contexte Android serait lorsqu'il s'agirait de différentes tailles d'écran. Le contexte a une instruction basée sur un modèle de conception de stratégie pour traiter de nombreuses tailles d'écran différentes. J'ai trouvé que ceci soit le tutoriel le plus simple et le plus utile pour les modèles de conception avec l'exemple d'utilisation de la classe de contexte.

https://www.tutorialspoint.com/design_pattern/index.htm


1 commentaires

Oui, la source que vous avez mentionnée est l'une d'entre elles que j'ai étudié, une réponse intéressante concernant la taille de l'écran différente, je vais vous uppoter, merci