um desenvolvedor com princípios solid

Post on 24-Dec-2014

170 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Requisitos sempre mudam, e um projeto ágil tem que evoluir enquanto se trabalha para entregar valor ao cliente, com entregas tão curtas quanto o máximo deste valor que se pode entregar. O que precisamos considerar enquanto damos nossos passos a iluminação?

TRANSCRIPT

CONTRA1a jornada de um desenvolvedor de princípios SOLID

contra o impulso de usar muitos padrões ou não pensar sobre elesUM@helmedeiros

senta que lá vem história…

framework MV* princípios

design patterns

a-gi-li-ty |əˈjilitē|

Consiste em criar software em incrementos minúsculos.

como projetar um…

Software que tenha boa estrutura?

Software que seja flexível?

Software passível de manutenção?

Software que seja reutilizável?

who knows who knows who knows who knows

Se você cria em incrementos minúsculos, não vai perder a visão global?

projeto ágil

maus cheiros

princípios

projeto de software um conceito abstrato

software project |ˈsôftˌwe(ə)r ˈpräjˌekt, -ikt|

Relacionado à forma e estrutura global do programa, assim como o detalhe de cada módulo, classe e método.

Se tiver sorte, você começa um projeto com uma ideia clara de como deseja que o sistema seja. Se tiver mais sorte ainda, a primeira versão reflete a imagem do projeto.

projeto ágil

maus cheiros

princípios

algo dá errado o software começa a apodrecer

como podemos detectar…

os problemas antes ou no último momento responsável?

sem exagerar nas precauções?

permitindo mudar?

RIGIDEZ: É difícil de alterar o projeto.1

FRAGILIDADE: O projeto (design) é fácil de estragar.2

IMOBILIDADE: É difícil reutilizar o projeto.3

VISCOSIDADE: É difícil fazer a coisa certa.4

COMPLEXIDADE DESNECESSÁRIA: Projeto excessivo.5

REPETIÇÃO DESNECESSÁRIA: Abuso do mouse.6

OPACIDADE: Expressão desorganizada.7

por que o software apodrece…

mudanças não previstas

mudanças para ontem

desenvolvedor desconhece a filosofia inicial do projeto

requisitos sempre mudam nossos projetos e práticas estão errados

projeto ágil

maus cheiros

princípios

aplicação continuapara melhorar a estrutura e legibilidade do software

iterativamente visando…

simplicidade no código

limpeza do código

expressividade do código

moderado moderado moderado

SRP: Princípio da responsabilidade únicaS

OCP: Princípio do Aberto/FechadoO

LSP: Princípio de substituição de LiskovL

ISP: Princípio da Segregação de InterfaceI

DIP: Princípio da inversão de DependênciaD

“  as  equipes  ágeis  aplicam  os  princípios  apenas  para  

resolver  maus  cheiros.  Eles  não  são  um  perf9me  que  

deve  ser  bor<ifado  por  todo  o  sistema.  “  

- Robert C. Martin

CONTRA1a jornada de um desenvolvedor de princípios SOLID

contra seu impulso de usar muitos padrões ou não pensar sobre elesUM@helmedeiros

top related