SlideShare uma empresa Scribd logo
1 de 34
Baixar para ler offline
Ferramentas livres para desenvolvimento com PHP




           2º ESLIF
Encontro de Software Livre do
  Instituto Superior Fátima
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 T echnologies
Auto didata, sempre presente em eventos sobre PHP e
Software Livre
Membro da equipe de coordenação do Grupo de Usuários
PHP do Distrito Federal

Website - http://www.neshertech.net/adler
E-mail - adler@neshertech.net
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.
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: Wikipedia
Normalmente é 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.
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.
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.
Ferramentas livres para desenvolvimento com PHP




IDEs e Editores – PDT – PHP Development Tool




                    Demonstração
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
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
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.
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.
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.
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
Ferramentas livres para desenvolvimento com PHP




Frameworks e Repositórios de Classes

PEAR – Estatísticas
Atualmente, 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
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
Ferramentas livres para desenvolvimento com PHP




Frameworks e Repositórios de Classes

PRADO

É um framework para PHP 5 baseado em componente e
                                               s
eventos o que o torna similar ao ASP.NET

Criado por Qiang Xue, o PRADO foi inicialmente inspirado no
projeto Apache T apestry

Foi vendedor de um concurso realizado pela Zend Technologies
na época do lançamento do PHP 5
Ferramentas livres para desenvolvimento com PHP




Frameworks e Repositórios de Classes

PRADO

                     Demonstração
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.
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.
Ferramentas livres para desenvolvimento com PHP




Frameworks e Repositórios de Classes

Zend Framework

                     Demonstração
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.
Ferramentas livres para desenvolvimento com PHP




Debbugers

PHP - Dbg
Teve 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.
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.
Ferramentas livres para desenvolvimento com PHP




Debbugers

XDebug


                      Demonstração
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.
Ferramentas livres para desenvolvimento com PHP




Debbugers – Profiling




                     Demonstração
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).
Ferramentas livres para desenvolvimento com PHP




Controle de versão - SVN

Subversion
Subversion (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 CVS
Foi 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.
Ferramentas livres para desenvolvimento com PHP




Bug Tracking / Issue Tracker

Ferramentas que permitem gerenciar problemas com o
desenvolvimento como bugs, etc.

Trac
Ferramenta 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.
Ferramentas livres para desenvolvimento com PHP




Bug Tracking / Issue Tracker

Outros sistemas de bug tracking
- Eventum
- Mantis
- Gforge
Ferramentas livres para desenvolvimento com PHP




Bug Tracking / Issue Tracker

Trac




                      Demonstração
Ferramentas livres para desenvolvimento com PHP




        Considerações finais
Ferramentas livres para desenvolvimento com PHP




              Perguntas ?
Ferramentas livres para desenvolvimento com PHP




      Obrigado pela atenção!




    http://www.neshertech.net/adler
       http://www.neshertech.net
        http://www.phpdf.org.br
         http://www.x25.com.br

Mais conteúdo relacionado

Mais procurados

Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISC
Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISCCriando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISC
Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISCFlávio Lisboa
 
Framework PHP Zend e MVC
Framework PHP Zend e MVCFramework PHP Zend e MVC
Framework PHP Zend e MVCEduardo Greco
 
Zend Framework em Exemplos
Zend Framework em ExemplosZend Framework em Exemplos
Zend Framework em Exemplosxbacon
 
Uaijug ADF - spring boot - microservice - Introdução
Uaijug ADF - spring boot - microservice - IntroduçãoUaijug ADF - spring boot - microservice - Introdução
Uaijug ADF - spring boot - microservice - IntroduçãoRogerio Fontes
 
Conhecendo o Novo REST Framework
Conhecendo o Novo REST FrameworkConhecendo o Novo REST Framework
Conhecendo o Novo REST FrameworkMario Guedes
 
Javascript por debaixo dos panos
Javascript por debaixo dos panosJavascript por debaixo dos panos
Javascript por debaixo dos panosLaís Lima
 
Unit Test JavaScript
Unit Test JavaScriptUnit Test JavaScript
Unit Test JavaScriptDan Vitoriano
 
Prepare-se para o próximo estágio da evolução PHP
Prepare-se para o próximo estágio da evolução PHPPrepare-se para o próximo estágio da evolução PHP
Prepare-se para o próximo estágio da evolução PHPRaphael Almeida
 
.NET 6: O que há de novo e o que está por vir?
.NET 6: O que há de novo e o que está por vir?.NET 6: O que há de novo e o que está por vir?
.NET 6: O que há de novo e o que está por vir?akamud
 
Sobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis UberlândiaSobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis UberlândiaRogerio Fontes
 
Segurança em Aplicações Web com PHP
Segurança em Aplicações Web com PHPSegurança em Aplicações Web com PHP
Segurança em Aplicações Web com PHPGedvan Dias
 
DevPira Festival 21 - .NET6 Uma nova forma de construir apis MinimalAPIs
DevPira Festival 21 - .NET6 Uma nova forma de construir apis MinimalAPIsDevPira Festival 21 - .NET6 Uma nova forma de construir apis MinimalAPIs
DevPira Festival 21 - .NET6 Uma nova forma de construir apis MinimalAPIsJúnior Porfirio
 
Desenvolvimento Mobile Multiplataforma: Uma abordagem ágil e de alto desempen...
Desenvolvimento Mobile Multiplataforma: Uma abordagem ágil e de alto desempen...Desenvolvimento Mobile Multiplataforma: Uma abordagem ágil e de alto desempen...
Desenvolvimento Mobile Multiplataforma: Uma abordagem ágil e de alto desempen...Criciúma Dev
 
Performance de verdade com Phalcon Framework
Performance de verdade com Phalcon FrameworkPerformance de verdade com Phalcon Framework
Performance de verdade com Phalcon FrameworkJaime Neto
 
Boas práticas no desenvolvimento de uma RESTful API
Boas práticas no desenvolvimento de uma RESTful APIBoas práticas no desenvolvimento de uma RESTful API
Boas práticas no desenvolvimento de uma RESTful APIFernando Camargo
 
Drupal Performance - Dicas e técnicas para levar seu Drupal às nuvens
Drupal Performance - Dicas e técnicas para levar seu Drupal às nuvensDrupal Performance - Dicas e técnicas para levar seu Drupal às nuvens
Drupal Performance - Dicas e técnicas para levar seu Drupal às nuvensPaulino Michelazzo
 

Mais procurados (20)

Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISC
Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISCCriando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISC
Criando Aplicações PHP Poderosas com Zend Framework 2 - 8º SOLISC
 
Framework PHP Zend e MVC
Framework PHP Zend e MVCFramework PHP Zend e MVC
Framework PHP Zend e MVC
 
Zend Framework em Exemplos
Zend Framework em ExemplosZend Framework em Exemplos
Zend Framework em Exemplos
 
Uaijug ADF - spring boot - microservice - Introdução
Uaijug ADF - spring boot - microservice - IntroduçãoUaijug ADF - spring boot - microservice - Introdução
Uaijug ADF - spring boot - microservice - Introdução
 
Webinar php extreme 5.3
Webinar php extreme 5.3Webinar php extreme 5.3
Webinar php extreme 5.3
 
Conhecendo o Novo REST Framework
Conhecendo o Novo REST FrameworkConhecendo o Novo REST Framework
Conhecendo o Novo REST Framework
 
Javascript por debaixo dos panos
Javascript por debaixo dos panosJavascript por debaixo dos panos
Javascript por debaixo dos panos
 
Jugvale
JugvaleJugvale
Jugvale
 
Unit Test JavaScript
Unit Test JavaScriptUnit Test JavaScript
Unit Test JavaScript
 
Prepare-se para o próximo estágio da evolução PHP
Prepare-se para o próximo estágio da evolução PHPPrepare-se para o próximo estágio da evolução PHP
Prepare-se para o próximo estágio da evolução PHP
 
Frameworks PHP
Frameworks PHPFrameworks PHP
Frameworks PHP
 
.NET 6: O que há de novo e o que está por vir?
.NET 6: O que há de novo e o que está por vir?.NET 6: O que há de novo e o que está por vir?
.NET 6: O que há de novo e o que está por vir?
 
JEE nas nuvens: uma introdução ao openshift
JEE nas nuvens:  uma introdução ao openshiftJEE nas nuvens:  uma introdução ao openshift
JEE nas nuvens: uma introdução ao openshift
 
Sobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis UberlândiaSobre TDD - Tech Friday da Everis Uberlândia
Sobre TDD - Tech Friday da Everis Uberlândia
 
Segurança em Aplicações Web com PHP
Segurança em Aplicações Web com PHPSegurança em Aplicações Web com PHP
Segurança em Aplicações Web com PHP
 
DevPira Festival 21 - .NET6 Uma nova forma de construir apis MinimalAPIs
DevPira Festival 21 - .NET6 Uma nova forma de construir apis MinimalAPIsDevPira Festival 21 - .NET6 Uma nova forma de construir apis MinimalAPIs
DevPira Festival 21 - .NET6 Uma nova forma de construir apis MinimalAPIs
 
Desenvolvimento Mobile Multiplataforma: Uma abordagem ágil e de alto desempen...
Desenvolvimento Mobile Multiplataforma: Uma abordagem ágil e de alto desempen...Desenvolvimento Mobile Multiplataforma: Uma abordagem ágil e de alto desempen...
Desenvolvimento Mobile Multiplataforma: Uma abordagem ágil e de alto desempen...
 
Performance de verdade com Phalcon Framework
Performance de verdade com Phalcon FrameworkPerformance de verdade com Phalcon Framework
Performance de verdade com Phalcon Framework
 
Boas práticas no desenvolvimento de uma RESTful API
Boas práticas no desenvolvimento de uma RESTful APIBoas práticas no desenvolvimento de uma RESTful API
Boas práticas no desenvolvimento de uma RESTful API
 
Drupal Performance - Dicas e técnicas para levar seu Drupal às nuvens
Drupal Performance - Dicas e técnicas para levar seu Drupal às nuvensDrupal Performance - Dicas e técnicas para levar seu Drupal às nuvens
Drupal Performance - Dicas e técnicas para levar seu Drupal às nuvens
 

Destaque

Desenvolvimento Mobile Web usando PHP e Software Livre
Desenvolvimento Mobile Web usando PHP e Software LivreDesenvolvimento Mobile Web usando PHP e Software Livre
Desenvolvimento Mobile Web usando PHP e Software LivreBruno Fernandes "PorKaria"
 
PHP e componentes reutilizáveis
PHP e componentes reutilizáveisPHP e componentes reutilizáveis
PHP e componentes reutilizáveiselliando dias
 
Minicurso de PHP Com Ajax
Minicurso de PHP Com AjaxMinicurso de PHP Com Ajax
Minicurso de PHP Com AjaxAdler Medrado
 
Web 2.0 e RIA com PHP
Web 2.0 e RIA com PHPWeb 2.0 e RIA com PHP
Web 2.0 e RIA com PHPAdler Medrado
 
Não é Feitiçaria, é Tecnologia
Não é Feitiçaria, é TecnologiaNão é Feitiçaria, é Tecnologia
Não é Feitiçaria, é TecnologiaAdler Medrado
 
SOLID - Teoria e Prática
SOLID - Teoria e PráticaSOLID - Teoria e Prática
SOLID - Teoria e PráticaEduardo Pires
 

Destaque (8)

Desenvolvimento Mobile Web usando PHP e Software Livre
Desenvolvimento Mobile Web usando PHP e Software LivreDesenvolvimento Mobile Web usando PHP e Software Livre
Desenvolvimento Mobile Web usando PHP e Software Livre
 
PHP e componentes reutilizáveis
PHP e componentes reutilizáveisPHP e componentes reutilizáveis
PHP e componentes reutilizáveis
 
Minicurso de PHP Com Ajax
Minicurso de PHP Com AjaxMinicurso de PHP Com Ajax
Minicurso de PHP Com Ajax
 
Tales of the Crypto
Tales of the CryptoTales of the Crypto
Tales of the Crypto
 
Web 2.0 e RIA com PHP
Web 2.0 e RIA com PHPWeb 2.0 e RIA com PHP
Web 2.0 e RIA com PHP
 
Não é Feitiçaria, é Tecnologia
Não é Feitiçaria, é TecnologiaNão é Feitiçaria, é Tecnologia
Não é Feitiçaria, é Tecnologia
 
Mercado de Trabalho
Mercado de TrabalhoMercado de Trabalho
Mercado de Trabalho
 
SOLID - Teoria e Prática
SOLID - Teoria e PráticaSOLID - Teoria e Prática
SOLID - Teoria e Prática
 

Semelhante a Ferramentas Livres Para Desenvolvimento com PHP

Como contribuir-com-open-source-php conference-2016
Como contribuir-com-open-source-php conference-2016Como contribuir-com-open-source-php conference-2016
Como contribuir-com-open-source-php conference-2016Marcos Paulo
 
Gt 10 FCSI- ambiente de desenvolvimento
Gt 10  FCSI- ambiente de desenvolvimentoGt 10  FCSI- ambiente de desenvolvimento
Gt 10 FCSI- ambiente de desenvolvimentoMax_Antonelli
 
Apresentação da Linguagem de Programação PHP
Apresentação da Linguagem de Programação PHPApresentação da Linguagem de Programação PHP
Apresentação da Linguagem de Programação PHPLorranna Machado
 
Aula 01 introdução ao php
Aula 01   introdução ao phpAula 01   introdução ao php
Aula 01 introdução ao phpAdriano Castro
 
Zend Framework 2 - Desenvolvimento Ágil Competente
Zend Framework 2 - Desenvolvimento Ágil CompetenteZend Framework 2 - Desenvolvimento Ágil Competente
Zend Framework 2 - Desenvolvimento Ágil CompetenteMichael Cardoso
 
CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1Norivan Oliveira
 
Introdução a programação em python d3
Introdução a programação em python d3Introdução a programação em python d3
Introdução a programação em python d3Moises de Paula
 
Artigo de php
Artigo de phpArtigo de php
Artigo de phprobson
 
Desenvolvendo Aplicações com Software Livre
Desenvolvendo Aplicações com Software LivreDesenvolvendo Aplicações com Software Livre
Desenvolvendo Aplicações com Software Livreelliando dias
 
Introdução a programação em python d3 ides
Introdução a programação em python d3  idesIntrodução a programação em python d3  ides
Introdução a programação em python d3 idesMoises de Paula
 
WebVibe Barueri 2011 - "PHP por quê ?"
WebVibe Barueri 2011 - "PHP por quê ?"WebVibe Barueri 2011 - "PHP por quê ?"
WebVibe Barueri 2011 - "PHP por quê ?"Hélio Costa e Silva
 

Semelhante a Ferramentas Livres Para Desenvolvimento com PHP (20)

Como contribuir-com-open-source-php conference-2016
Como contribuir-com-open-source-php conference-2016Como contribuir-com-open-source-php conference-2016
Como contribuir-com-open-source-php conference-2016
 
Comparativo do uso de linguagens de programação e geradores de código no dese...
Comparativo do uso de linguagens de programação e geradores de código no dese...Comparativo do uso de linguagens de programação e geradores de código no dese...
Comparativo do uso de linguagens de programação e geradores de código no dese...
 
Manual PHP
Manual PHPManual PHP
Manual PHP
 
Gt 10 FCSI- ambiente de desenvolvimento
Gt 10  FCSI- ambiente de desenvolvimentoGt 10  FCSI- ambiente de desenvolvimento
Gt 10 FCSI- ambiente de desenvolvimento
 
Introducao ao PHP @edgarsandi
Introducao ao PHP @edgarsandiIntroducao ao PHP @edgarsandi
Introducao ao PHP @edgarsandi
 
Apresentação da Linguagem de Programação PHP
Apresentação da Linguagem de Programação PHPApresentação da Linguagem de Programação PHP
Apresentação da Linguagem de Programação PHP
 
WP Composer
WP ComposerWP Composer
WP Composer
 
Aula 01 introdução ao php
Aula 01   introdução ao phpAula 01   introdução ao php
Aula 01 introdução ao php
 
A Linguagem Php
A Linguagem PhpA Linguagem Php
A Linguagem Php
 
Zend Framework 2 - Desenvolvimento Ágil Competente
Zend Framework 2 - Desenvolvimento Ágil CompetenteZend Framework 2 - Desenvolvimento Ágil Competente
Zend Framework 2 - Desenvolvimento Ágil Competente
 
Delphi6bd
Delphi6bdDelphi6bd
Delphi6bd
 
CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1
 
PHP para iniciantes - Boas Práticas
PHP para iniciantes - Boas PráticasPHP para iniciantes - Boas Práticas
PHP para iniciantes - Boas Práticas
 
Fundamentos Java - 01
Fundamentos Java - 01Fundamentos Java - 01
Fundamentos Java - 01
 
Aula 1a.ppt
Aula 1a.pptAula 1a.ppt
Aula 1a.ppt
 
Introdução a programação em python d3
Introdução a programação em python d3Introdução a programação em python d3
Introdução a programação em python d3
 
Artigo de php
Artigo de phpArtigo de php
Artigo de php
 
Desenvolvendo Aplicações com Software Livre
Desenvolvendo Aplicações com Software LivreDesenvolvendo Aplicações com Software Livre
Desenvolvendo Aplicações com Software Livre
 
Introdução a programação em python d3 ides
Introdução a programação em python d3  idesIntrodução a programação em python d3  ides
Introdução a programação em python d3 ides
 
WebVibe Barueri 2011 - "PHP por quê ?"
WebVibe Barueri 2011 - "PHP por quê ?"WebVibe Barueri 2011 - "PHP por quê ?"
WebVibe Barueri 2011 - "PHP por quê ?"
 

Ferramentas Livres Para Desenvolvimento com PHP

  • 1. Ferramentas livres para desenvolvimento com PHP 2º ESLIF Encontro de Software Livre do Instituto Superior Fátima
  • 2. 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 T echnologies Auto didata, sempre presente em eventos sobre PHP e Software Livre Membro da equipe de coordenação do Grupo de Usuários PHP do Distrito Federal Website - http://www.neshertech.net/adler E-mail - adler@neshertech.net
  • 3. 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.
  • 4. 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: Wikipedia Normalmente é 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.
  • 5. 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.
  • 6. 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.
  • 7. Ferramentas livres para desenvolvimento com PHP IDEs e Editores – PDT – PHP Development Tool Demonstração
  • 8. 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
  • 9. 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
  • 10. 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.
  • 11. 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.
  • 12. 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.
  • 13. 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
  • 14. Ferramentas livres para desenvolvimento com PHP Frameworks e Repositórios de Classes PEAR – Estatísticas Atualmente, 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
  • 15. 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
  • 16. Ferramentas livres para desenvolvimento com PHP Frameworks e Repositórios de Classes PRADO É um framework para PHP 5 baseado em componente e s eventos o que o torna similar ao ASP.NET Criado por Qiang Xue, o PRADO foi inicialmente inspirado no projeto Apache T apestry Foi vendedor de um concurso realizado pela Zend Technologies na época do lançamento do PHP 5
  • 17. Ferramentas livres para desenvolvimento com PHP Frameworks e Repositórios de Classes PRADO Demonstração
  • 18. 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.
  • 19. 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.
  • 20. Ferramentas livres para desenvolvimento com PHP Frameworks e Repositórios de Classes Zend Framework Demonstração
  • 21. 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.
  • 22. Ferramentas livres para desenvolvimento com PHP Debbugers PHP - Dbg Teve 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.
  • 23. 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.
  • 24. Ferramentas livres para desenvolvimento com PHP Debbugers XDebug Demonstração
  • 25. 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.
  • 26. Ferramentas livres para desenvolvimento com PHP Debbugers – Profiling Demonstração
  • 27. 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).
  • 28. Ferramentas livres para desenvolvimento com PHP Controle de versão - SVN Subversion Subversion (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 CVS Foi 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.
  • 29. Ferramentas livres para desenvolvimento com PHP Bug Tracking / Issue Tracker Ferramentas que permitem gerenciar problemas com o desenvolvimento como bugs, etc. Trac Ferramenta 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.
  • 30. Ferramentas livres para desenvolvimento com PHP Bug Tracking / Issue Tracker Outros sistemas de bug tracking - Eventum - Mantis - Gforge
  • 31. Ferramentas livres para desenvolvimento com PHP Bug Tracking / Issue Tracker Trac Demonstração
  • 32. Ferramentas livres para desenvolvimento com PHP Considerações finais
  • 33. Ferramentas livres para desenvolvimento com PHP Perguntas ?
  • 34. Ferramentas livres para desenvolvimento com PHP Obrigado pela atenção! http://www.neshertech.net/adler http://www.neshertech.net http://www.phpdf.org.br http://www.x25.com.br