O documento discute os frameworks de software, definindo-os como estruturas que auxiliam no desenvolvimento de projetos de software. Apresenta vantagens como utilidade, segurança, extensibilidade e economia de tempo, mas também desvantagens como vício do programador e falta de conhecimento da linguagem nativa. Fornece dicas como dominar a linguagem antes do framework e estudá-lo a fundo.
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.
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.
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.
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.