SlideShare une entreprise Scribd logo
1  sur  19
Télécharger pour lire hors ligne
Frameworks – Usar ou não
        Usar?



         Laerte Guedes
Frameworks - Conceito
Framework – Conceito
•             É uma estrutura de suporte definida em que um
     outro projeto de software pode ser organizado e
     desenvolvido. Um framework pode incluir programas de
     suporte, bibliotecas de código, linguagens de script e
     outros softwares para auxiliar no desenvolvimento e unir
     diferentes componentes de um projeto de software.
     Grosseiramente, o framework é um monte de arquivos
     organizados, com um monte de funções, rotinas e
     variáveis inclusas.
E então usar ou não usar?
E então usar ou não usar?
•  É necessário uma análise a respeito dos
   pontos positivos e de que maneira deve-
   se / ou não se deve utilizar o framework,
   para respondermos essa pergunta.
Frameworks – Vantagens
•  Utilidade. O objetivo principal é auxiliar no
   desenvolvimento de aplicações e
   softwares. Para tal, eles têm
   funcionalidades nativas das mais
   variadas, que ajudam você a resolver as
   questões de programação com mais
   eficiência.
Frameworks - Vantagens
•  Segurança. Os bons frameworks são
   projetados de modo a garantir a
   segurança de quem programa e,
   principalmente, de quem usa o que foi
   feito a partir dele. Com frameworks, a
   parte de segurança já “vem de fábrica”.
Frameworks – Vantagens
•  Extensibilidade. Os frame works permitem
   que você extenda suas funcionalidades
   nativas. Se aquela biblioteca de envio de
   e-mails por SMTP não contempla todas as
   possibilidades que você gostaria,
   simplesmente extenda suas
   funcionalidades e as use como se fossem
   parte do framework (na verdade, elas
   serão).
Frameworks - Vantagens
•  Economia de tempo. O que você
   demoraria algumas horas ou alguns dias
   para fazer, você encontra pronto em um
   framework. Pense no quão trabalhosas
   aquelas funções de manipulação de
   imagens são; usando um framework que
   tenha isso, você só usa, e pronto.
Frameworks – Vantagens
•  Re-uso e “bom-cheiro” no código: Fica
   mais fácil para fazer um código de
   qualidade e fica bem mais difícil de termos
   repetições, devido ao fato de que
   podemos usar classes do próprio
   framework para diversas finalidades.
Então Frameworks são uma
          maravilha?
•  Resposta:
Frameworks - Desvantagens
•  Vício do programador: No geral vicia o
   programador a trabalhar somente com o
   framework, na maioria dos caso
   negligenciando o conhecimento da
   linguagem nativa em questão. O
   programador às vezes sabe como fazer
   apenas no framework, e não na linguagem
   em si.
Frameworks - Desvantagens
•  Programadores que aprendem framework
   antes de aprender a linguagem: Gera um
   desconhecimento grave com relação a
   linguagem de programação nativa do
   framework. O programador não saberá
   fazer de uma forma diferente a do referido
   framework, e não entenderá como o seu
   framework realiza suas funcionalidades.
Frameworks - Dicas
•  Se for usar um framework, tome os
   seguintes cuidados:
  – Domine a linguagem nativa antes de aprendê-
    lo.
  – Saiba programar com o framework, mas saiba
    fazer sem ele.
  – Se tiver uma equipe, certifique-se que a
    equipe já está em um nível técnico satisfatório
    para poder implantar um framework.
Frameworks – Dicas
•  Conhecer diferentes tipos de padrões de
   projeto.
•  Estudar o framework a fundo e entender a
   sua essência.
Exemplo – Zend Framework
Exemplo – Zend Framework
•  Framework com direitos de propriedade
   intelectual livres, sendo orientada a objetos e
   utilizando arquitetura MVC. Possui componentes
   que facilitam o uso de banco de dados,
   manipulação de PDF, Json, Logs, email, feed
   RSS, arrays como entrada de dados em um
   formulário, pedido HTTP, entre outros.
Referências

•  Http://www.tiselvagem.com.br
•  http://www.ibm.com/developerworks/br/
   library/os-php-zend1/
Obrigado!

Contenu connexe

Tendances

Introdução ao Web Design: Aula 1 - Imersão ao Web Design
Introdução ao Web Design: Aula 1 - Imersão ao Web DesignIntrodução ao Web Design: Aula 1 - Imersão ao Web Design
Introdução ao Web Design: Aula 1 - Imersão ao Web DesignGustavo Zimmermann
 
Apresentação do Modelo de Negócios Canvas
Apresentação do Modelo de Negócios CanvasApresentação do Modelo de Negócios Canvas
Apresentação do Modelo de Negócios CanvasThiago Paiva
 
Jogos empresariais apresentação
Jogos empresariais apresentaçãoJogos empresariais apresentação
Jogos empresariais apresentaçãoElielba Chapermann
 
Gestão de documentos: Classificação, Ordenação e Protocolo, Tipos de Arquivo:...
Gestão de documentos: Classificação, Ordenação e Protocolo, Tipos de Arquivo:...Gestão de documentos: Classificação, Ordenação e Protocolo, Tipos de Arquivo:...
Gestão de documentos: Classificação, Ordenação e Protocolo, Tipos de Arquivo:...Jader Windson
 
Estruturas organizacionais
Estruturas organizacionaisEstruturas organizacionais
Estruturas organizacionaisLuis Cunha
 
Noções de Arquivologia
Noções de ArquivologiaNoções de Arquivologia
Noções de ArquivologiaCharlley Luz
 
Análise e Modelagem de Software
Análise e Modelagem de SoftwareAnálise e Modelagem de Software
Análise e Modelagem de SoftwareMarcelo Yamaguti
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de RequisitosCloves da Rocha
 
Ciclo de vida de um produto
Ciclo de vida de um produtoCiclo de vida de um produto
Ciclo de vida de um produtoVasco Andorinha
 
Organização da Rotina de Trabalho
Organização da Rotina de TrabalhoOrganização da Rotina de Trabalho
Organização da Rotina de TrabalhoGrupo E. Fabris
 
Apostila Aplicativos informatizados
Apostila Aplicativos informatizadosApostila Aplicativos informatizados
Apostila Aplicativos informatizadosAndréia Santos
 

Tendances (20)

Introdução ao Web Design: Aula 1 - Imersão ao Web Design
Introdução ao Web Design: Aula 1 - Imersão ao Web DesignIntrodução ao Web Design: Aula 1 - Imersão ao Web Design
Introdução ao Web Design: Aula 1 - Imersão ao Web Design
 
Apresentação do Modelo de Negócios Canvas
Apresentação do Modelo de Negócios CanvasApresentação do Modelo de Negócios Canvas
Apresentação do Modelo de Negócios Canvas
 
Introdução à linguagem UML
Introdução à linguagem UMLIntrodução à linguagem UML
Introdução à linguagem UML
 
Jogos empresariais apresentação
Jogos empresariais apresentaçãoJogos empresariais apresentação
Jogos empresariais apresentação
 
Capitulo 02 sommerville
Capitulo 02 sommervilleCapitulo 02 sommerville
Capitulo 02 sommerville
 
Gestão de documentos: Classificação, Ordenação e Protocolo, Tipos de Arquivo:...
Gestão de documentos: Classificação, Ordenação e Protocolo, Tipos de Arquivo:...Gestão de documentos: Classificação, Ordenação e Protocolo, Tipos de Arquivo:...
Gestão de documentos: Classificação, Ordenação e Protocolo, Tipos de Arquivo:...
 
Web Design Responsivo
Web Design ResponsivoWeb Design Responsivo
Web Design Responsivo
 
Estruturas organizacionais
Estruturas organizacionaisEstruturas organizacionais
Estruturas organizacionais
 
Técnica SMART
Técnica SMARTTécnica SMART
Técnica SMART
 
Noções de Arquivologia
Noções de ArquivologiaNoções de Arquivologia
Noções de Arquivologia
 
14 Princípios de Deming
14 Princípios de Deming14 Princípios de Deming
14 Princípios de Deming
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de Requisitos
 
Análise e Modelagem de Software
Análise e Modelagem de SoftwareAnálise e Modelagem de Software
Análise e Modelagem de Software
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de Requisitos
 
Kanban
KanbanKanban
Kanban
 
Ciclo de vida de um produto
Ciclo de vida de um produtoCiclo de vida de um produto
Ciclo de vida de um produto
 
Metodologia Ágil
Metodologia ÁgilMetodologia Ágil
Metodologia Ágil
 
Organização da Rotina de Trabalho
Organização da Rotina de TrabalhoOrganização da Rotina de Trabalho
Organização da Rotina de Trabalho
 
Desafios para gestão de Rh.
Desafios para gestão de Rh.Desafios para gestão de Rh.
Desafios para gestão de Rh.
 
Apostila Aplicativos informatizados
Apostila Aplicativos informatizadosApostila Aplicativos informatizados
Apostila Aplicativos informatizados
 

Similaire à Framework usar ou não usar

O que é framework
O que é frameworkO que é framework
O que é frameworkfcdigital
 
Curso PHP UNIFACS 2014.1 – Frameworks
Curso PHP UNIFACS 2014.1 – FrameworksCurso PHP UNIFACS 2014.1 – Frameworks
Curso PHP UNIFACS 2014.1 – FrameworksJonata Weber
 
Frameworks da web - Uma ferramenta de reutilização de software
Frameworks da web - Uma ferramenta de reutilização de softwareFrameworks da web - Uma ferramenta de reutilização de software
Frameworks da web - Uma ferramenta de reutilização de softwareThomas Kanzig
 
Reutilização
ReutilizaçãoReutilização
Reutilizaçãoemjorge
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHPRangel Javier
 
Frameworks de desenvolvimento web
Frameworks de desenvolvimento webFrameworks de desenvolvimento web
Frameworks de desenvolvimento webArlindo Santos
 
Informática para Internet - Aula 03
Informática para Internet - Aula 03Informática para Internet - Aula 03
Informática para Internet - Aula 03Anderson Andrade
 
Desenvolvimento web com (cms) Drupal
Desenvolvimento web com (cms) DrupalDesenvolvimento web com (cms) Drupal
Desenvolvimento web com (cms) DrupalEmerson Barros
 
PHP Turbinado com CodeIgniter - Conisli 2011
PHP Turbinado com CodeIgniter - Conisli 2011PHP Turbinado com CodeIgniter - Conisli 2011
PHP Turbinado com CodeIgniter - Conisli 2011Evaldo Junior
 
Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011Flávio Lisboa
 
Curso de CVS - Parte 0 - Sobre o curso
Curso de CVS - Parte 0 - Sobre o cursoCurso de CVS - Parte 0 - Sobre o curso
Curso de CVS - Parte 0 - Sobre o cursoMarden Neubert
 
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendAnálise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendThiago Sinésio
 
DDD e PHP - TDC 2012
DDD e PHP - TDC 2012DDD e PHP - TDC 2012
DDD e PHP - TDC 2012Luís Cobucci
 
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks Adriano Teixeira de Souza
 

Similaire à Framework usar ou não usar (20)

O que é framework
O que é frameworkO que é framework
O que é framework
 
Curso PHP UNIFACS 2014.1 – Frameworks
Curso PHP UNIFACS 2014.1 – FrameworksCurso PHP UNIFACS 2014.1 – Frameworks
Curso PHP UNIFACS 2014.1 – Frameworks
 
Frameworks em Java
Frameworks em JavaFrameworks em Java
Frameworks em Java
 
Frameworks PHP @edgarsandi
Frameworks PHP @edgarsandiFrameworks PHP @edgarsandi
Frameworks PHP @edgarsandi
 
Frameworks da web - Uma ferramenta de reutilização de software
Frameworks da web - Uma ferramenta de reutilização de softwareFrameworks da web - Uma ferramenta de reutilização de software
Frameworks da web - Uma ferramenta de reutilização de software
 
Reutilização
ReutilizaçãoReutilização
Reutilização
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHP
 
Frameworks de desenvolvimento web
Frameworks de desenvolvimento webFrameworks de desenvolvimento web
Frameworks de desenvolvimento web
 
Informática para Internet - Aula 03
Informática para Internet - Aula 03Informática para Internet - Aula 03
Informática para Internet - Aula 03
 
Desenvolvimento web com (cms) Drupal
Desenvolvimento web com (cms) DrupalDesenvolvimento web com (cms) Drupal
Desenvolvimento web com (cms) Drupal
 
Aula05 frameworks
Aula05 frameworksAula05 frameworks
Aula05 frameworks
 
PHP Turbinado com CodeIgniter - Conisli 2011
PHP Turbinado com CodeIgniter - Conisli 2011PHP Turbinado com CodeIgniter - Conisli 2011
PHP Turbinado com CodeIgniter - Conisli 2011
 
Começando errado com php
Começando errado com phpComeçando errado com php
Começando errado com php
 
Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011Palestra Zend Framework na Campus Party 2011
Palestra Zend Framework na Campus Party 2011
 
Curso de CVS - Parte 0 - Sobre o curso
Curso de CVS - Parte 0 - Sobre o cursoCurso de CVS - Parte 0 - Sobre o curso
Curso de CVS - Parte 0 - Sobre o curso
 
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e ZendAnálise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
 
Escalando apps com React e Type Script e SOLID
Escalando apps com React e Type Script e SOLIDEscalando apps com React e Type Script e SOLID
Escalando apps com React e Type Script e SOLID
 
01 aula1 habib
01 aula1 habib01 aula1 habib
01 aula1 habib
 
DDD e PHP - TDC 2012
DDD e PHP - TDC 2012DDD e PHP - TDC 2012
DDD e PHP - TDC 2012
 
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
Paradigmas de Linguagens de Programação - Biblioteca de Classes e Frameworks
 

Plus de COTIC-PROEG (UFPA) (20)

LT - Redis
LT - RedisLT - Redis
LT - Redis
 
LT Ansible
LT AnsibleLT Ansible
LT Ansible
 
Testes automatizados com Cypress
Testes automatizados com CypressTestes automatizados com Cypress
Testes automatizados com Cypress
 
Loop back
Loop backLoop back
Loop back
 
METEOR
METEORMETEOR
METEOR
 
Desenvolvimento de software tradicional vs ágil
Desenvolvimento de software tradicional vs ágilDesenvolvimento de software tradicional vs ágil
Desenvolvimento de software tradicional vs ágil
 
Canva
CanvaCanva
Canva
 
Git v2
Git v2Git v2
Git v2
 
Atitudes que levam ao Fracasso profissional
Atitudes que levam ao Fracasso profissionalAtitudes que levam ao Fracasso profissional
Atitudes que levam ao Fracasso profissional
 
Os 5 Sensos da Qualidade
Os 5 Sensos da QualidadeOs 5 Sensos da Qualidade
Os 5 Sensos da Qualidade
 
WATSON - O Fascinante Computador da IBM
WATSON - O Fascinante Computador da IBMWATSON - O Fascinante Computador da IBM
WATSON - O Fascinante Computador da IBM
 
Produtividade sem enrrolação
Produtividade sem enrrolaçãoProdutividade sem enrrolação
Produtividade sem enrrolação
 
LAB JavaScript
LAB JavaScriptLAB JavaScript
LAB JavaScript
 
Principios e Valores Ágeis
Principios e Valores ÁgeisPrincipios e Valores Ágeis
Principios e Valores Ágeis
 
Big data
Big dataBig data
Big data
 
Metricas para Times Ágeis
Metricas para Times ÁgeisMetricas para Times Ágeis
Metricas para Times Ágeis
 
Aplicação de Abordagens Ágeis: Estudo de Caso de utlização do SCRUM – PROEG/UFPA
Aplicação de Abordagens Ágeis: Estudo de Caso de utlização do SCRUM – PROEG/UFPAAplicação de Abordagens Ágeis: Estudo de Caso de utlização do SCRUM – PROEG/UFPA
Aplicação de Abordagens Ágeis: Estudo de Caso de utlização do SCRUM – PROEG/UFPA
 
Técnicas para Programação em Par
Técnicas para Programação em ParTécnicas para Programação em Par
Técnicas para Programação em Par
 
Feedback Canvas
Feedback CanvasFeedback Canvas
Feedback Canvas
 
5 Doenças do Gerenciamento de Projetos
5 Doenças do Gerenciamento de Projetos5 Doenças do Gerenciamento de Projetos
5 Doenças do Gerenciamento de Projetos
 

Framework usar ou não usar

  • 1. Frameworks – Usar ou não Usar? Laerte Guedes
  • 3. Framework – Conceito •  É uma estrutura de suporte definida em que um outro projeto de software pode ser organizado e desenvolvido. Um framework pode incluir programas de suporte, bibliotecas de código, linguagens de script e outros softwares para auxiliar no desenvolvimento e unir diferentes componentes de um projeto de software. Grosseiramente, o framework é um monte de arquivos organizados, com um monte de funções, rotinas e variáveis inclusas.
  • 4. E então usar ou não usar?
  • 5. E então usar ou não usar? •  É necessário uma análise a respeito dos pontos positivos e de que maneira deve- se / ou não se deve utilizar o framework, para respondermos essa pergunta.
  • 6. Frameworks – Vantagens •  Utilidade. O objetivo principal é auxiliar no desenvolvimento de aplicações e softwares. Para tal, eles têm funcionalidades nativas das mais variadas, que ajudam você a resolver as questões de programação com mais eficiência.
  • 7. Frameworks - Vantagens •  Segurança. Os bons frameworks são projetados de modo a garantir a segurança de quem programa e, principalmente, de quem usa o que foi feito a partir dele. Com frameworks, a parte de segurança já “vem de fábrica”.
  • 8. Frameworks – Vantagens •  Extensibilidade. Os frame works permitem que você extenda suas funcionalidades nativas. Se aquela biblioteca de envio de e-mails por SMTP não contempla todas as possibilidades que você gostaria, simplesmente extenda suas funcionalidades e as use como se fossem parte do framework (na verdade, elas serão).
  • 9. Frameworks - Vantagens •  Economia de tempo. O que você demoraria algumas horas ou alguns dias para fazer, você encontra pronto em um framework. Pense no quão trabalhosas aquelas funções de manipulação de imagens são; usando um framework que tenha isso, você só usa, e pronto.
  • 10. Frameworks – Vantagens •  Re-uso e “bom-cheiro” no código: Fica mais fácil para fazer um código de qualidade e fica bem mais difícil de termos repetições, devido ao fato de que podemos usar classes do próprio framework para diversas finalidades.
  • 11. Então Frameworks são uma maravilha? •  Resposta:
  • 12. Frameworks - Desvantagens •  Vício do programador: No geral vicia o programador a trabalhar somente com o framework, na maioria dos caso negligenciando o conhecimento da linguagem nativa em questão. O programador às vezes sabe como fazer apenas no framework, e não na linguagem em si.
  • 13. Frameworks - Desvantagens •  Programadores que aprendem framework antes de aprender a linguagem: Gera um desconhecimento grave com relação a linguagem de programação nativa do framework. O programador não saberá fazer de uma forma diferente a do referido framework, e não entenderá como o seu framework realiza suas funcionalidades.
  • 14. Frameworks - Dicas •  Se for usar um framework, tome os seguintes cuidados: – Domine a linguagem nativa antes de aprendê- lo. – Saiba programar com o framework, mas saiba fazer sem ele. – Se tiver uma equipe, certifique-se que a equipe já está em um nível técnico satisfatório para poder implantar um framework.
  • 15. Frameworks – Dicas •  Conhecer diferentes tipos de padrões de projeto. •  Estudar o framework a fundo e entender a sua essência.
  • 16. Exemplo – Zend Framework
  • 17. Exemplo – Zend Framework •  Framework com direitos de propriedade intelectual livres, sendo orientada a objetos e utilizando arquitetura MVC. Possui componentes que facilitam o uso de banco de dados, manipulação de PDF, Json, Logs, email, feed RSS, arrays como entrada de dados em um formulário, pedido HTTP, entre outros.