Dica 15: Equipe ÁGIL!

Na live sobre o futuro da carreira de desenvolvimento, Luiz Duarte Jr. definiu uma equipe ágil como aquela que pode garantir uma entrega de um produto de ponta a ponta, em um número que gire em torno de dez pessoas. O fundamental é ter interdisciplinaridade: diferentes habilidades necessárias para garantir a entrega. Não existe como pré-definir quais são essas competências, pois cada produto tem suas especificidades, suas próprias demandas.
De forma geral, a metodologia ágil contribui para que as equipes desenvolvam soluções mais eficientes e dinâmicas, baseadas em seus princípios e valores, que incluem entregas no menor tempo possível, eficiência na comunicação e equipes auto-organizáveis.
Diversos são os métodos que se utilizam de processos ágeis para otimizar seus procedimentos, como Kaban, Scrum e Lean. A proposta é que cada interação é como um mini-projeto, que dura em torno de 1 a 4 semanas. Ao final desse período, deve ser realizada a entrega de uma nova versão do software ao cliente. Então, haverá um novo processo de comunicação, no qual serão estabelecidas quais deverão ser as novas entregas.
Assunto estudado hoje: MVC
O Model View Controller (MVC) é um padrão arquitetural de sistemas de informação que separa a lógica de programação em camadas, de modo que cada uma terá responsabilidades distintas para proporcionar a informação requisitada pelo usuário de maneira organizada e sem conflitos.
De maneira bem resumida:
- Camada Modelo encapsula todo o estado e comportamento da aplicação, faz uma conexão praticamente direta com a fonte de dados da aplicação, em geral, o banco de dados. O modelo é a junção dos dados e dos métodos que os manipulam. Com isso, o reuso provido pelo MVC se dá, principalmente, na camada Modelo, sendo este o núcleo funcional da aplicação (aqui está a lógica de negócio).
- Camada Visão é a representação de dados, onde um usuário pode observar estes dados presentes na aplicação ou inserir dados que serão utilizados por essa camada.
- Camada Controle controla a comunicação entre a camada Visão e a camada Modelo. Os controladores são responsáveis por validar requisições e direcionar a logística para a camada de Modelo responsável em lidar com a intenção do usuário.