33
{ Não deixe seu projeto só nas mãos do framework Giuseppe Lopes Desenvolvedor Backend SaaS Kinghost

Não deixe seu projeto só nas mãos do framework

Embed Size (px)

DESCRIPTION

Não deixe seu projeto somente nas mãos do Framework

Citation preview

Page 1: Não deixe seu projeto só nas mãos do framework

{

Não  deixe  seu  projeto  só  nas  mãos  do  framework

Giuseppe  Lopes Desenvolvedor  Back-­‐‑end  SaaS  -­‐‑  Kinghost

Page 2: Não deixe seu projeto só nas mãos do framework

Ñ  Giuseppe  Lopes Ñ Mais  de  6  anos  de  experiência  com  desenvolvimento  de  aplicações  de  acesso  crítico;

Ñ  Especialista  em  MVC,  Webservices  e  Core  de  aplicações  críticas;

Ñ  Consultor  de  TI; Ñ  ZCE  (Zend  Certified  Engineer) Ñ  Apaixonado  por  tecnologia; Ñ  Curioso  por  natureza; Ñ  Interesses  em:  Cloud  Computing,  SaaS,  Agile,  SOA,  Mobile  e  Back-­‐‑end!

Quem  sou

Page 3: Não deixe seu projeto só nas mãos do framework

Ñ  Introdução Ñ  Back-­‐‑end; Ñ  Frameworks; Ñ  Exemplos; Ñ  Case; Ñ  Conclusões; Ñ  Referências; Ñ  Dúvidas  e  contatos;

Agenda

Page 4: Não deixe seu projeto só nas mãos do framework

Ñ  Foco  da  palestra: Ñ  A  importância  do  Back-­‐‑end  e  da  escolha  do  Framework  para  o  desenvolvimento  de  sua  aplicação;

Introdução

Page 5: Não deixe seu projeto só nas mãos do framework

Ñ  Back-­‐‑end?? Ñ  Framework???

Introdução

WTF?!?!?!

Page 6: Não deixe seu projeto só nas mãos do framework

Ñ  Linguagens: Ó  Php,  Java,  .NET,  Obj-­‐‑C,  Python..

Ñ  Orientadas  a  objetos; Ñ  Padrões  de  Projeto; Ñ  Técnicas  de  otimização;

Ñ Desenvolver  é  aprender;

Introdução

Page 7: Não deixe seu projeto só nas mãos do framework

E  o  Back-­‐‑end?

Page 8: Não deixe seu projeto só nas mãos do framework

Ñ  Camada  de  nível  mais  baixo; Ñ  Não  interage  com  o  usuário; Ñ  Tem  seu  alicerce  nos  Padrões  de  Projetos:

Ó  MVC; Ó  Singleton; Ó  Factory; Ó  Adapter; Ó  Proxy; Ó  Minimizar  o  acoplamento; Ó  E  mais  outros  479872343

Back-­‐‑end

Page 9: Não deixe seu projeto só nas mãos do framework

Ñ  Conjunto  de  artefatos; Ñ  Interage  com  outros  “atores”:

Ó  Banco  de  dados; Ó  Serviços; Ó  Sistema  de  Arquivos; Ó  Webservices;

Ñ  Faz  a  mágica  acontecer; Ñ  O  Back-­‐‑end  precisa  estar  preparado  para  mudanças;

Back-­‐‑end

Page 10: Não deixe seu projeto só nas mãos do framework

Ñ  Cérebro  da  aplicação; Ñ  Falhas  impactam  diretamente  na  aplicação; Ñ  Precisa  ser:  

Ó  Consistente; Ó  Rastreável; Ó  Testável  (foi  feito  para  falhar); Ó  De  fácil  manutenção;

Ñ  “Só”  isso!

Back-­‐‑end

Page 11: Não deixe seu projeto só nas mãos do framework

Tantos  padrões..   Tantas  preocupações..

Tantas  responsabilidades..

Page 12: Não deixe seu projeto só nas mãos do framework

Frameworks!

Page 13: Não deixe seu projeto só nas mãos do framework

Vieram  para  resolver    tudo  então?!

Page 14: Não deixe seu projeto só nas mãos do framework

NÃO!

K

Page 15: Não deixe seu projeto só nas mãos do framework

Mas  ajudam  bastante!

J

Page 16: Não deixe seu projeto só nas mãos do framework

“A  framework  is  not  absolutely  necessary:  it  is  just  one  of  the  tools  that  is  

available  to  help  you  develop  beVer  and  

faster” @Symfony

Frameworks

Page 17: Não deixe seu projeto só nas mãos do framework

Melhor,  porque  um  framework  fornece  a  certeza  de  que  você  está  desenvolvendo  um  aplicativo  que  está  em  total  conformidade  com  as  regras  de  negócios,  que  está  estruturado,  e  que  é  

ao  mesmo  tempo  sustentável  e  atualizável.

Frameworks

Page 18: Não deixe seu projeto só nas mãos do framework

Mais  rápido,  porque  permite  que  os  desenvolvedores  economizem  tempo  

através  da  reutilização  de  módulos  genéricos,  a  fim  de  se  concentrar  em  outras  áreas.

Frameworks

Page 19: Não deixe seu projeto só nas mãos do framework

Ñ TOOLBOX Ó Conjunto  de  componentes  de  SW  pré-­‐‑fabricados  que  se  integram  facilmente;

Ñ METHODOLOGY Ó Fornece  uma  linha  de  desenvolvimento  sustentável  e  escalável  de  software;

Ñ Provê  uma  solução  genérica  para  uma  família  de  problemas  semelhantes;

Frameworks

Page 20: Não deixe seu projeto só nas mãos do framework

Foco  na  tarefa  a  se  desenvolver  e  não  na  tecnologia  adotada!

Frameworks

Page 21: Não deixe seu projeto só nas mãos do framework

Ó Aí  que  mora  o  perigo.. Ó Frameworks  fornecem  muitas  opções.. Ó Opções  genéricas.. Ó FOCO  deve  se  MANTER  NO  PRODUTO  DE  SW  que  estamos  desenvolvendo  e  NÃO  em  usar  tudo  o  que  o  framework  oferece;

Ó TESTAR  é  ESSENCIAL!

Frameworks

Page 22: Não deixe seu projeto só nas mãos do framework

Ó A  escolha  de  um  framework  implica  estar  de  acordo  com  a  metodologia  e  os  padrões  adotados  pelo  framework.

Frameworks

Page 23: Não deixe seu projeto só nas mãos do framework

Atualmente  temos  muitos  frameworks..

Exemplos

Page 24: Não deixe seu projeto só nas mãos do framework

Ñ Mas  qual  é  o  melhor? Ñ No  Silver  Bullet! Ñ O  que  é  bom  para  uns  não  quer  dizer  que  seja  o  melhor  para  o  seu  time!

Ñ Encontre  o  melhor  para  o  seu  time!

Exemplos

Page 25: Não deixe seu projeto só nas mãos do framework

É  possivel  desenvolver  algo  legal,  sem  experiência  em  back-­‐‑

end,  de  forma  que  possa  suportar  bastante  acesso?

Case

Page 26: Não deixe seu projeto só nas mãos do framework

Case

Esses  caras  dizem  que  sim!

Mike  Krieger

Kevin  Systrom

Page 27: Não deixe seu projeto só nas mãos do framework

Case

Ñ  Dois  caras  de  produtos; Ñ  Uma  ideia  e  a  vontade  de  criar  algo  legal; Ñ  Sem  experiência  real  em  Back-­‐‑end; Ñ  Escolheram  a  linguagem  que  tinham  experiência;

Ñ  Adotaram  algunS  frameworkS  que  estavam  de  acordo  com  o  foco  deles;

Ñ  Simplicidade; Ñ  Otimizado  para  uma  carga  operacional  mínima;

Page 28: Não deixe seu projeto só nas mãos do framework

Case

Ñ 2010  –  2  Engenheiros  de  Software   Ñ 2011  –  3  Engenheiros  de  Software   Ñ 2012  –  5  Engenheiros  de  Software Ñ 30  milhões  de  usuários   Ñ Lançaram  para  Android; Ñ 1  milhão  de  novos  usuários  em  12  horas; Ñ 83.333,33  novos  usuários  por  hora   Ñ 1388,88  novos  usuários  por  segundo!

Page 29: Não deixe seu projeto só nas mãos do framework

Ñ  O  Back-­‐‑end  precisa  ser  bem  elaborado! Ñ  Adotar  padrões  e  seguir  boas  práticas  é  essencial;

Ñ  Reutilizável; Ñ  De  fácil  manutenção; Ñ  ESCALÁVEL; Ñ  Sutileza  em  tornar  simples  e  bem  estruturado;

Conclusões

Page 30: Não deixe seu projeto só nas mãos do framework

Ñ  Frameworks  não  são  balas  de  prata! Ñ  A  escolha  de  um  framework  é  essencial  para  o  sucesso  do  projeto;

Ñ  Foco  em  gerar  valor! Ñ  Redução  no  time-­‐‑to-­‐‑market  >  MVP  (Minimun  Viable  Product)

Ñ  Maior  consistência  e  compatibilidade  entre  aplicações;

Ñ  Curva  de  aprendizado;

Conclusões

Page 31: Não deixe seu projeto só nas mãos do framework

Ñ  Existe  muito  material  atualmente; Ñ  Muita  coisa  ruim  também! Ñ  Saber  filtrar  pode  exigir  atenção  redobrada; Ñ  Procurar  em  Papers,  publicações  acadêmicas  e  artigos  também!

Ñ  Estudar  x  Estudar  x  Estudar Ñ  Testar  x  Testar  x  Testar

Conclusões

Page 32: Não deixe seu projeto só nas mãos do framework

Ñ  Dr.  Jacques  Philippe  Sauvé  -­‐‑  Associate  Professor  of  Computer  Science  Federal  University  of  Campina  Grande  

Ñ  Cristian  Reis  -­‐‑  No  Silver  Bullet:  essence  and  accidents  of  software  engineering

Ñ  Martin  Fowler  Site Ñ  hxp://framework.zend.com Ñ  hxp://symfony.com/ Ñ  hxp://cakephp.org/ Ñ  hxp://ellislab.com/codeigniter

Bibliografia  Recomendada

Page 33: Não deixe seu projeto só nas mãos do framework

Ñ  Dúvidas?

Ñ  E-­‐‑mail:  [email protected] Ñ  Twixer:  @giuseppe_lopes Ñ  SlideShare:  slideshare.net/giuseppelopes

Obrigado!  =)