A Arte do Desenvolvimento PHP - 1.1
-
Upload
anderson-casimiro -
Category
Technology
-
view
637 -
download
3
description
Transcript of A Arte do Desenvolvimento PHP - 1.1
![Page 1: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/1.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
A Arte do Desenvolvimento PHPA Arte do Desenvolvimento PHPFISL 11FISL 11
![Page 2: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/2.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Anderson Anderson DuodracoDuodraco Casimiro Casimiro
● Zend Certified Engineer - 2007Zend Certified Engineer - 2007● Coordenação do PHPSPCoordenação do PHPSP● Desenvolvedor Web desde 2002Desenvolvedor Web desde 2002
● Atuando em diversas áreasAtuando em diversas áreas
● Analista PHP - TiqueImóveisAnalista PHP - TiqueImóveis
![Page 3: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/3.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
ObjetivosObjetivos● Ferramentas built-inFerramentas built-in● Fontes ExternasFontes Externas
● PEAR / PECL, Frameworks, Recursos externosPEAR / PECL, Frameworks, Recursos externos
● AplicaçãoAplicação● Ciclo de desenvolvimentoCiclo de desenvolvimento
● ConclusãoConclusão
Agenda
![Page 4: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/4.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Objetivos
![Page 5: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/5.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Somos Artesãos
![Page 6: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/6.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
precisamos de ferramentas
![Page 7: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/7.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
O que temos à mão?
![Page 8: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/8.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
PHPPHP
● Por si só já é uma toolboxPor si só já é uma toolbox● Nativamente suporta a maioria dos SGDBsNativamente suporta a maioria dos SGDBs
● Via correta compilação/instalaçãoVia correta compilação/instalação
● SQLiteSQLite● Suporte a Orientação a ObjetosSuporte a Orientação a Objetos
● Design PatternsDesign Patterns
● StreamsStreams● Controle sobre o HTTPControle sobre o HTTP● XML, JSON, WSDL ...XML, JSON, WSDL ...
![Page 9: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/9.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Namespaces
![Page 10: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/10.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
● PHP5.3+PHP5.3+
● OrganizaçãoOrganização
● PacotesPacotes
● Evita conflitos de nomeEvita conflitos de nome
● namespacenamespace Framework Framework \\ DB; DB;
● useuse Framework Framework \\ DB; DB;
● InstanceInstance::::conn(conn($dsn$dsn,,$user$user,,$secret$secret););
● Framework Framework \\ DB DB \\ Instance Instance::::conn(...);conn(...);
NamespacesNamespaces
![Page 11: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/11.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
SPL: Standard PHP Library
![Page 12: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/12.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
SPLSPL
● Classes, Interfaces e funçõesClasses, Interfaces e funções● Funções para Autoload e outrasFunções para Autoload e outras● IteratorsIterators● Estruturas de DadosEstruturas de Dados● ObserverObserver● Array ObjectArray Object● SPLTypesSPLTypes
![Page 13: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/13.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
PDO: PHP Data Objects
![Page 14: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/14.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
PDOPDO
● Interface padrão para acesso a BDInterface padrão para acesso a BD● $pdo->query$pdo->query ao invés de ao invés de mysql_querymysql_query ou ou pg_querypg_query
● DriversDrivers● MSSql, MySQL, PostgreSQL, Firebird, Oracle, etcMSSql, MySQL, PostgreSQL, Firebird, Oracle, etc● PDO 4D (experimental)PDO 4D (experimental)● ODBCODBC
● Utiliza-se da SPLUtiliza-se da SPL● Iterators reduzem a carga Iterators reduzem a carga
● ProcessamentoProcessamento● Transporte de dadosTransporte de dados
![Page 15: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/15.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Datetime
![Page 16: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/16.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
DatetimeDatetime
● PHP 5.2+PHP 5.2+● Conjunto de classes para manipulação de Conjunto de classes para manipulação de
tempo.tempo.● TimezoneTimezone● Interval / PeriodInterval / Period
![Page 17: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/17.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Command Line Interface
![Page 18: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/18.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Buscando recursos externos
![Page 19: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/19.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Google Code
![Page 20: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/20.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Source Forge
![Page 21: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/21.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
PEAR e PECL
![Page 22: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/22.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
PEAR e PECLPEAR e PECL
● PEAR – Classes e bibliotecas (PHP)PEAR – Classes e bibliotecas (PHP)● PECL – Extensões compiladasPECL – Extensões compiladas
● pear channel-discover pear.phpunit.depear channel-discover pear.phpunit.de
● pear install –all-deps phpunit/PHPUnit pear install –all-deps phpunit/PHPUnit
● pecl install xdebugpecl install xdebug
●
● Em breve PEAR2Em breve PEAR2
![Page 23: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/23.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Fazendo Arte
![Page 24: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/24.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Integração Contínua
![Page 25: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/25.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Integração ContínuaIntegração Contínua
● ““² Condição de constituir um todo pela adição ou ² Condição de constituir um todo pela adição ou combinação de partes ou elementos.” (Michaelis)combinação de partes ou elementos.” (Michaelis)
● Integração de uma mudançaIntegração de uma mudança● Sem que quebre seu projetoSem que quebre seu projeto● RegularmenteRegularmente
● Prática de engenharia de softwarePrática de engenharia de software● Metodologias ágeisMetodologias ágeis
● Produzir um sistema funcional quantas vezes Produzir um sistema funcional quantas vezes forem possíveisforem possíveis
![Page 26: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/26.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Integração ContínuaIntegração Contínua
● Hudson + PhingHudson + Phing● PHP Under Control [CruiseControl]PHP Under Control [CruiseControl]● ArbitArbit● SismoSismo● XINC – Xinc Is Not Cruise ControlXINC – Xinc Is Not Cruise Control
![Page 27: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/27.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Deployment com Phing
![Page 28: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/28.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
PhingPhing
● Phing Is Not GnumakePhing Is Not Gnumake● Ferramenta de building, realiza tarefas que Ferramenta de building, realiza tarefas que
auxiliam a aplicaçãoauxiliam a aplicação● ConfigurarConfigurar● EmpacotarEmpacotar● Transferir entre servidoresTransferir entre servidores● TestarTestar
– Testes unitários, padrões de código, documentaçãoTestes unitários, padrões de código, documentação● etcetc
![Page 29: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/29.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Testes Unitários
![Page 30: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/30.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Testes UnitáriosTestes Unitários
● Testes de Entrada e Saída para cada Testes de Entrada e Saída para cada unidade do projetounidade do projeto
● PHPUnitPHPUnit● LimeLime● SimpleTestSimpleTest
![Page 31: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/31.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Padrão de Codificação
![Page 32: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/32.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Padrão de CodificaçãoPadrão de Codificação
● OrganizaçãoOrganização● Consistência, todos programam do mesmo Consistência, todos programam do mesmo
jeitojeito● Zend, PEAR, PHPCS, Squiz e MySourceZend, PEAR, PHPCS, Squiz e MySource
● PHP_Codesniffer PHP_Codesniffer ● CodeBeautifier / PHP_BeautifierCodeBeautifier / PHP_Beautifier
![Page 33: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/33.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Documentação
![Page 34: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/34.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
DocumentaçãoDocumentação
● PHPDocumentorPHPDocumentor● DoxygenDoxygen
● PHP2UML / UML2PHPPHP2UML / UML2PHP● Dia2PHPDia2PHP● PHP2XMIPHP2XMI
![Page 35: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/35.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Replicação
![Page 36: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/36.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
ReplicaçãoReplicação
● Duplicação:Duplicação:● TextualmenteTextualmente● MarcaçãoMarcação● FuncionalidadeFuncionalidade
● Replicação != ReutilizaçãoReplicação != Reutilização● Código replicado “evolui” em separadoCódigo replicado “evolui” em separado
● PHPCPD – Copy & Paste DetectorPHPCPD – Copy & Paste Detector● Varre os arquivos PHP em busca de trechos duplicados Varre os arquivos PHP em busca de trechos duplicados
![Page 37: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/37.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Métricas de Software
![Page 38: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/38.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Métricas de SoftwareMétricas de Software
● PHP_DependPHP_Depend● Indetifica porções de código candidatas a Indetifica porções de código candidatas a
refatoração.refatoração.● CCN: Cyclomatic ComplexityCCN: Cyclomatic Complexity● LoC - > Linhas de CódigoLoC - > Linhas de Código
– TotaisTotais– Comentadas (CLoC) ou não (NCLoC)Comentadas (CLoC) ou não (NCLoC)– Executáveis (EloC)Executáveis (EloC)
● etc..etc..
![Page 39: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/39.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Acabando com os Bugs!
![Page 40: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/40.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Acabando com os Bugs! Acabando com os Bugs!
● NÃO “DEBUGUE” COM ECHO!!!NÃO “DEBUGUE” COM ECHO!!!● Utilize ferramentas que:Utilize ferramentas que:
● Param a execuçãoParam a execução● Permitem o avanço passo-a-passo da execuçãoPermitem o avanço passo-a-passo da execução● Mostram todas as variáveis ativas em qualquer Mostram todas as variáveis ativas em qualquer
pontoponto● Avaliam performanceAvaliam performance● Possibilitem que você faça tudo isso da sua IDEPossibilitem que você faça tudo isso da sua IDE
![Page 41: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/41.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
E o nosso repelente é ...E o nosso repelente é ...
![Page 42: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/42.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
XDebugXDebug
● PECL, Binários, código fontePECL, Binários, código fonte● DebuggingDebugging● TracingTracing● ProfillingProfilling
● CachegrindCachegrind
● Integração com as principais IDEsIntegração com as principais IDEs
![Page 43: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/43.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Além do XDebugAlém do XDebug
● WebgrindWebgrind● PHP_DebugPHP_Debug● DbugDbug● FirePHPFirePHP● *DBG**DBG*
![Page 44: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/44.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Frameworks
![Page 45: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/45.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
FrameworksFrameworks
● Vai te poupar tempo Vai te poupar tempo ● e evitar cabelos brancos precocese evitar cabelos brancos precoces
● O básico já está prontoO básico já está pronto● EstruturaEstrutura● Conexão com o BDConexão com o BD● SegurançaSegurança● Comuncação (API / Email / WS / etc)Comuncação (API / Email / WS / etc)
● Na maioria adotam o MVCNa maioria adotam o MVC
![Page 46: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/46.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
FrameworksFrameworks
● Zend FrameworkZend Framework● SymfonySymfony● CakePHPCakePHP● CodeIgniterCodeIgniter● KohanaKohana● SeagullSeagull● YiiYii
● PradoPrado● EzComponentsEzComponents● FuseBoxFuseBox● QCodoQCodo
![Page 47: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/47.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Manipulação de Dados
![Page 48: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/48.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Camada de AbstraçãoCamada de Abstração
● Provê uma interface unificada de comunicação Provê uma interface unificada de comunicação entre a aplicação e o Banco de Dados, seja qual entre a aplicação e o Banco de Dados, seja qual for.for.
● PDOPDO● MDB2MDB2● ADODBADODB● DbFacileDbFacile● DoctrineDoctrine
![Page 49: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/49.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
ORMORM
● Mapeamento Objeto-RelacionalMapeamento Objeto-Relacional● Objetos como entidadesObjetos como entidades●
● CreoleCreole● PropelPropel● DoctrineDoctrine● Outlet , RedBean Outlet , RedBean
![Page 50: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/50.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Gerenciando
![Page 51: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/51.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
GerenciandoGerenciando
● ProjetosProjetos● TarefasTarefas● BugsBugs● EquipeEquipe● WorkflowWorkflow● VersõesVersões● IntegraçãoIntegração
![Page 52: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/52.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Gerenciando ProjetosGerenciando Projetos
● PHProjektPHProjekt● PHP-CollabPHP-Collab● AchievoAchievo● ArbitArbit● MantisMantis
![Page 53: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/53.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Hora de codar
![Page 54: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/54.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
IDEIDE
● Integrated Development EnviromentIntegrated Development Enviroment● Ambiente integrado: Código, Debug, Profilling...Ambiente integrado: Código, Debug, Profilling...
● ZendStudio / PDTZendStudio / PDT● NetbeansNetbeans● KomodoKomodo● KdevelopKdevelop● GeanyGeany
![Page 55: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/55.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Objetivo e Criatividade
![Page 56: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/56.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Perguntas???
![Page 57: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/57.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
Obrigado!!!
![Page 58: A Arte do Desenvolvimento PHP - 1.1](https://reader031.fdocument.pub/reader031/viewer/2022020715/555a011fd8b42aa8098b4e92/html5/thumbnails/58.jpg)
duodraco.comduodraco.com @duodraco@duodracoFISL11FISL11
● [email protected]@duodraco.com● [email protected]@phpsp.org.br
● @duodraco@duodraco● duodraco.comduodraco.com● facebook.com/duodracofacebook.com/duodraco● linkedin.com/in/andersoncasimirolinkedin.com/in/andersoncasimiro