b'\n_START_ARTICLE_\nStrategy\n_START_SECTION_\nMotiva\xc3\xa7\xc3\xa3o\n_START_PARAGRAPH_\nO maior incentivo para uso do padr\xc3\xa3o \xc3\xa9 a melhoria da manuten\xc3\xa7\xc3\xa3o do c\xc3\xb3digo o qual \xc3\xa9 frequentemente usado durante o desenvolvimento de uma aplica\xc3\xa7\xc3\xa3o. Para tanto, h\xc3\xa1 a necessidade de definir um conjunto de classes para que possam ser alteradas em tempo de execu\xc3\xa7\xc3\xa3o. Assim os objetos trabalham de forma independente para os poss\xc3\xadveis clientes realizarem opera\xc3\xa7\xc3\xb5es diferentes, sem a depend\xc3\xaancia de implementa\xc3\xa7\xc3\xa3o do comportamento de outra classe.\n_START_SECTION_\nAplica\xc3\xa7\xc3\xa3o\n_START_PARAGRAPH_\nO padr\xc3\xa3o \xc3\xa9 aplicado em situa\xc3\xa7\xc3\xb5es em que muitas classes se relacionam e diferem apenas no modo de atua\xc3\xa7\xc3\xa3o, com isso o Strategy ir\xc3\xa1 configurar a classe que tenha um dentre muitos comportamentos fornecidos. Tamb\xc3\xa9m pode ser usado quando h\xc3\xa1 a necessidade da varia\xc3\xa7\xc3\xa3o de um algoritmo, ou seja, pode-se implementar diferentes c\xc3\xb3digos que chegam no mesmo objetivo, mas que possuem em determinadas situa\xc3\xa7\xc3\xb5es mais vantagens do que os demais._NEWLINE_Outra situa\xc3\xa7\xc3\xa3o oportuna para o uso do padr\xc3\xa3o \xc3\xa9 em uma aplica\xc3\xa7\xc3\xa3o na qual se tem um cliente e este n\xc3\xa3o pode ficar exposto a estrutura de dados do algoritmo. Al\xc3\xa9m disso, quando uma classe tem muitos comportamentos e usam v\xc3\xa1rios comandos condicionais, o desempenho do algoritmo poder\xc3\xa1 ficar insatisfat\xc3\xb3rio, pois h\xc3\xa1 a possibilidade de existir uma quantidade grande de condi\xc3\xa7\xc3\xb5es, podendo deixar o c\xc3\xb3digo mais lento. Com o padr\xc3\xa3o pode-se retirar as condi\xc3\xa7\xc3\xb5es, criando novas classes com estas estrat\xc3\xa9gias, portanto melhorando desempenho.\xc2\xa0'