ferramentas livres para desenvolvimento com php
DESCRIPTION
Palestras ministrada no FLISOL 2007TRANSCRIPT
![Page 1: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/1.jpg)
Ferramentas livres para desenvolvimento com PHP
2º ESLIFEncontro de Software Livre do
Instituto Superior Fátima
![Page 2: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/2.jpg)
Ferramentas livres para desenvolvimento com PHP
Apresentação
Adler Medrado, programador/analista, atualmente prestando serviços no Ministério do Desenvolvimento, Indústria e Comércio Exterior – MDIC.Proprietário e consultor da empresa Nesher TechnologiesAuto didata, sempre presente em eventos sobre PHP e Software LivreMembro da equipe de coordenação do Grupo de Usuários PHP do Distrito Federal
Website - http://www.neshertech.net/adlerE-mail - [email protected]
![Page 3: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/3.jpg)
Ferramentas livres para desenvolvimento com PHP
Introdução
Esta palestra tem por objetivo demonstrar ferramentas úteis para desenvolvimento de software com PHP. As ferramentas nem sempre são desenvolvidas usando PHP mas foram feitas exclusivamente para uso com PHP e / ou são totalmente apropriadas para isso.Após esta palestra, o participante ampliará seu leque de opções que facilitam o dia-a-dia de um desenvolvedor ou uma equipe de desenvolvimento.
![Page 4: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/4.jpg)
Ferramentas livres para desenvolvimento com PHP
IDEs e Editores
IDE , do inglês Integrated Development Environment ou Ambiente Integrado de Desenvolvimento, é um programa de computador que reúne características e ferramentas de apoio ao desenvolvimento de software com o objetivo de agilizar este processo. Fonte: WikipediaNormalmente é composto basicamente das seguintes funcionalidades:● Editor (com realce de sintaxe, auto-complete, etc)● Debugger (Depurador)● Gerenciador de projetos (Dos arquivos que compõem o projeto e não gerencia de projetos em si)● Suporte a Softwares de controle de versão● Refactoring● Deploy, Unit Tests, Ferramentas Case embutidas, etc.
![Page 5: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/5.jpg)
Ferramentas livres para desenvolvimento com PHP
IDEs e Editores
Diferente dos IDEs, os editores normalmente possuem suporte a realce de sintaxe e auto-complete apenas, dependendo do editor, pode-se habilitar módulos (plugins) que torna-os tão completos como IDEs.
Muitos programadores preferem usar editores em vez de IDEs devido ao fato de os editores consumirem menos recursos de hardware do equipamento utilizado.
![Page 6: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/6.jpg)
Ferramentas livres para desenvolvimento com PHP
IDEs e Editores – PDT – PHP Development Tool
Os princípios do PDT são:aprendizado fácil e intuitivo; Integração sem remendos com o WTP; Aderência ao padrão Eclipse; Capacidade de extensão; Apoio contínuo de desenvolvedores PHP. Baseado no eclipse, é um projeto apoiado pela Zend Technologies e IBM. Atualmente, é o IDE Open-Source para PHP mais completo, estável e funcional. A versão atual é a PDT 1.0 M1 e está previsto o lançamento da release 1.0 estável em Setembro de 2007.
![Page 7: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/7.jpg)
Ferramentas livres para desenvolvimento com PHP
Demonstração
IDEs e Editores – PDT – PHP Development Tool
![Page 8: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/8.jpg)
Ferramentas livres para desenvolvimento com PHP
IDEs e Editores – PHP Eclipse
Primeiro grande projeto baseado no eclipse voltado ao PHP Período longo entre as releases
![Page 9: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/9.jpg)
Ferramentas livres para desenvolvimento com PHP
IDEs e Editores – gPHPEdit
Simples editor baseado no gedit, comum em distribuições linux que utilizam o gerenciador de janelas GNOME.
Demonstração
![Page 10: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/10.jpg)
Ferramentas livres para desenvolvimento com PHP
IDEs e Editores – jEdit
Editor inicialmente criado para desenvolver em JAVA, porém, por ser de fácil extensão, diversos plugins foram criados para ele, inclusive um plugin para PHP que permite realce de sintaxe e autocomplete.É possível utilizar um plugin para CVS no jEdit. Ainda não foi desenvolvido um plugin para jEdit que permita o uso do subversion.
![Page 11: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/11.jpg)
Ferramentas livres para desenvolvimento com PHP
Frameworks e Repositórios de Classes
Programadores PHP possuem diversas opções de framework e bibliotecas de classes livres para utilizarem em seus projetos.Falaremos sobre os principais projetos.
![Page 12: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/12.jpg)
Ferramentas livres para desenvolvimento com PHP
Frameworks e Repositórios de Classes
FrameworkÉ um conjunto de classes com objetivo de reutilização de um design, provendo um guia para uma solução de arquitetura em um domínio específico de software. Qual a diferença entre biblioteca de classes e framework?Biblioteca de classe apenas oferece uma implementação de funcionalidades.
![Page 13: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/13.jpg)
Ferramentas livres para desenvolvimento com PHP
Frameworks e Repositórios de Classes
PEAR – PHP Extension and Application RepositoryÉ o repositório de classes mais popular atualmente. Neste repositório pode-se encontrar classes com funcionalidades diversas. Algumas classes possuem dependências de outras classes que compõem o PEAR. ● O Instalador do PEAR vem no pacote do PHP● Instalação simples● Interfaces em linha de comando, Web e PHP-GTK
![Page 14: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/14.jpg)
Ferramentas livres para desenvolvimento com PHP
Frameworks e Repositórios de Classes
PEAR – EstatísticasAtualmente, o PEAR conta com 453 pacotes de bibliotecas em 45 categorias, já foram lançadas 3227 releases desses pacotes, possui 349 mantenedores desses pacotes e já foram realizados cerca de 30,036,033 downloads.● Desenvolvedores podem propor novos pacotes● Desenvolvedores podem participar do desenvolvimento de pacotes já existentes
![Page 15: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/15.jpg)
Ferramentas livres para desenvolvimento com PHP
Frameworks e Repositórios de Classes
PEAR – Estatísticas – Pacotes mais populares
XML_RPC PEAR DB Net_Socket Mail Net_SMTP XML_Parser Archive_Tar Console_Getopt Log
![Page 16: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/16.jpg)
Ferramentas livres para desenvolvimento com PHP
Frameworks e Repositórios de Classes
PRADO
É um framework para PHP 5 baseado em componentes e eventos o que o torna similar ao ASP.NET
Criado por Qiang Xue, o PRADO foi inicialmente inspirado no projeto Apache Tapestry
Foi vendedor de um concurso realizado pela Zend Technologies na época do lançamento do PHP 5
![Page 17: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/17.jpg)
Ferramentas livres para desenvolvimento com PHP
Frameworks e Repositórios de Classes
PRADO
Demonstração
![Page 18: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/18.jpg)
Ferramentas livres para desenvolvimento com PHP
Frameworks e Repositórios de Classes
Symfony
É um framework para desenvolvimento com PHP5.
Possue uma estrutura que lembra o Ruby on Rails.
Utiliza diversos componentes que já são conhecidos no mundo PHP como Creole, Propel e etc.
![Page 19: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/19.jpg)
Ferramentas livres para desenvolvimento com PHP
Frameworks e Repositórios de Classes
Zend FrameworkÉ aposta da Zend em conjunto com diversas empresas e programadores de vários locais do mundo.
Baseado em componentes
A Princípio permite que os componentes sejam utilizados em conjunto ou separados.
Implementa diversos padrões de projetos e visa a simplicidade e produtividade.
![Page 20: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/20.jpg)
Ferramentas livres para desenvolvimento com PHP
Frameworks e Repositórios de Classes
Zend Framework
Demonstração
![Page 21: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/21.jpg)
Ferramentas livres para desenvolvimento com PHP
Debbugers
APD – Advanced PHP DebuggerÉ uma 'Zend Extension' ou seja, permite modificar a maneira com a qual as funções internas do PHP são manipuladas.Com isso nem sempre é compatível com outras Zend Extensions, por exemplo, Zend Optimizer e Xdebug.
Desenvolvido para prover a capacidade de realizar profiling e debug de códigos PHP.
Permite o debug iterativo porém por padrão ele gera arquivos que permite-se rastrear gargalos no código.
![Page 22: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/22.jpg)
Ferramentas livres para desenvolvimento com PHP
Debbugers
PHP - DbgTeve sua primeira Build no ano 2000 e já foi o mais popular debbuger para PHP.
Atualmente possui uma versão Open Source e uma versão comercial, sendo que a versão comercial é bem mais completa que a versão open-source.
A funcionalidade de profiling é exclusiva da versão comercial, que já vem embutida no IDE PhpED da empresa NuSphere.
![Page 23: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/23.jpg)
Ferramentas livres para desenvolvimento com PHP
Debbugers
XDebug
É o Debugger para PHP que mais se populariza atualmente.
É uma Zend Extension e permite o debug interativo, profiling e integração com diversos Editores e IDES comerciais ou free software.
![Page 24: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/24.jpg)
Ferramentas livres para desenvolvimento com PHP
Debbugers
XDebug
Demonstração
![Page 25: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/25.jpg)
Ferramentas livres para desenvolvimento com PHP
Debbugers - Profiling
Alguns debugger para PHP geram arquivos de profiling, ou seja, nos permite visualizar o fluxo de um código PHP a ponto de identificarmos os possíveis gargalos destes.
Para visualizarmos graficamente todo esse fluxo, necessitamos utilizar um programa que interprete estes arquivos.
Em ambiente windows, pode-se utilizar o WinCacheGrind e para ambientes linux, pode-se utilizar o KCacheGrind.
Apesar de terem funcionamento semelhante, o KCacheGrind possui algumas funcionalidades a mais.
![Page 26: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/26.jpg)
Ferramentas livres para desenvolvimento com PHP
Debbugers – Profiling
Demonstração
![Page 27: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/27.jpg)
Ferramentas livres para desenvolvimento com PHP
Controle de versão - CVS
CVS ou Concurrent Version System É especialmente útil para se controlar versões de um software durante seu desenvolvimento, ou para composição colaborativa de um documento.Lançado como código aberto em 1986 e atualmente é mantido por um grupo de voluntários.Possui plugins que permitem a integração com a maioria das IDEs e Editores disponíveis atualmente.É o sistema de controle de versão mais usado atualmente mas tem perdido espaço para o Subversion (SVN).
![Page 28: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/28.jpg)
Ferramentas livres para desenvolvimento com PHP
Controle de versão - SVN
SubversionSubversion (também conhecido por svn ou SVN, o nome da sua ferramenta de linha de comando) é um sistema de controle de versão desenhado especificamente para ser um substituto moderno do CVSFoi desenvolvido com a intenção de implementar algumas deficiências encontradas no CVS porém tendo em mente que a migração fosse menos traumática possível, por isso a maioria dos comandos são bastante similares aos do CVS.Da mesma forma que o CVS, possui diversos plugins que permitem a integração com a maioria dos Editores e IDEs disponíveis no mercado.
![Page 29: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/29.jpg)
Ferramentas livres para desenvolvimento com PHP
Bug Tracking / Issue Tracker
Ferramentas que permitem gerenciar problemas com o desenvolvimento como bugs, etc.
TracFerramenta que permite integração com o subversion e com o servidor web apache.Possui wiki interno que permite um melhor gerenciamento do projeto.Esta ferramenta é uma das mais utilizadas atualmente.
![Page 30: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/30.jpg)
Ferramentas livres para desenvolvimento com PHP
Bug Tracking / Issue Tracker
Outros sistemas de bug tracking- Eventum- Mantis- Gforge
![Page 31: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/31.jpg)
Demonstração
Ferramentas livres para desenvolvimento com PHP
Bug Tracking / Issue Tracker
Trac
![Page 32: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/32.jpg)
Ferramentas livres para desenvolvimento com PHP
Considerações finais
![Page 33: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/33.jpg)
Ferramentas livres para desenvolvimento com PHP
Perguntas ?
![Page 34: Ferramentas Livres Para Desenvolvimento com PHP](https://reader031.vdocuments.pub/reader031/viewer/2022020122/5564520dd8b42a9f128b57a8/html5/thumbnails/34.jpg)
Ferramentas livres para desenvolvimento com PHP
Obrigado pela atenção!
http://www.neshertech.net/adlerhttp://www.neshertech.net
http://www.phpdf.org.brhttp://www.x25.com.br