O documento discute estratégias e ferramentas para programar em PHP de forma rápida. Ele aborda o uso de IDEs como Eclipse PDT e PHPStorm, editores como Notepad++ e Sublime Text, microframeworks, plugins como Emmet e Gist, funções nativas do PHP e Composer.
Palestra na semana global do empreendedorismo na Plug and work
https://eventioz.com.br/e/desenvolvendo-prototipos-de-startups-em-python
Esta palestra tem a proposta de apresentar a linguagem Python como solução para o desenvolvimento de protótipos e MVP para startups. Mostrar como empreendedores podem desenvolver seus próprios protótipos sem dependender da contratação de desenvolvedores profissionais e ter seu MVP funcionando em poucos dias com a ajuda de Python e seus web frameworks.
Precisa aprender um pouco mais sobre PHP?
Conheça nossa formação: Cursos de php, crie aplicações WEB, passando pelo mundo da POO, entendendo o uso de Design Patterns, até chegar ao mundo enterprise, incluindo o desenvolvimento de aplicações dinâmicas de forma segura, com abordagens em XML, webservices, regex e configurações de ambiente e segurança.
Palestra na semana global do empreendedorismo na Plug and work
https://eventioz.com.br/e/desenvolvendo-prototipos-de-startups-em-python
Esta palestra tem a proposta de apresentar a linguagem Python como solução para o desenvolvimento de protótipos e MVP para startups. Mostrar como empreendedores podem desenvolver seus próprios protótipos sem dependender da contratação de desenvolvedores profissionais e ter seu MVP funcionando em poucos dias com a ajuda de Python e seus web frameworks.
Precisa aprender um pouco mais sobre PHP?
Conheça nossa formação: Cursos de php, crie aplicações WEB, passando pelo mundo da POO, entendendo o uso de Design Patterns, até chegar ao mundo enterprise, incluindo o desenvolvimento de aplicações dinâmicas de forma segura, com abordagens em XML, webservices, regex e configurações de ambiente e segurança.
Palestra apresentada na Semana Acadêmica Integrada 2009 do Centro de Ensino Superior de Foz do Iguaçu. O objetivo da palestra era de mostrar de modo geral a evolução da linguagem PHP, o mercado regional e também em companhias internacionais, perfis de profissionais e dicas para se tornar um profissional melhor e, por último mas não menos importante, as certificações disponíveis, tendo foco na certificação de PHP5.
Um estudo comparativo entre frameworks PHP, analisando as diferentes abordagens, vantagens e desvantagens de cada um deles, a fim de entender em que situações cada um deles é mais adequado para uma aplicação.
A importância de DDD e o Domain Model na construção de APIs!Isaac de Souza
É comum vermos APIs construídas a partir da visão do modelo do banco de dados ou da composição das UIs planejadas. Criar APIs dessa forma pode funcionar, porém normalmente geram contratos confusos, endpoints complexos e um conjunto de implementações e documentações que se referem muito mais aos detalhes de código do que ao negócio a qual atende. Venha ver nesta apresentação como DDD e o Domain Model podem fazer uma diferença importante para construir bons contratos e APIs maduras e sustentáveis.
Zend Framework 3 - porque só o que existe pode ser aprimoradoFlávio Lisboa
-Breve histórico do Zend Framework (15 anos em 5 minutos); -Melhorias de desempenho; -Suporte a PHP 7; -Aumento do desacoplamento de componentes; -Documentação; -Diactoros; -Stratigility; -Expressive; -Migração; -Possibilidades.
Xdebug seus problemas acabaram - tdc floripa 2017Vitor Mattos
Você leva horas, dias para encontrar um bug? Não conhece o framework que trabalha ou leva dias encontrando como implementar algo? Seus problemas acabaram! Aprenda a debugar suas aplicações com Xdebug!
BDD: Torne viva a documentação de seus sistemasVitor Mattos
Veremos um pouco de tudo, uma apresentação da importância de se fazer testes, testes unitários, testes funcionais, pirâmide de testes, como fazer com que os testes se tornem uma documentação viva de um sistema, como escrever testes com gherkin, a ferramenta behat para escrita de testes funcionais e uma pincelada rápida sobre CI, CD e como implementar a cultura de testes em ambientes hostis a testes.
Palestra apresentada no PHPRS 2017
Django para desenvolvimento web; porque ser repetitivo é chato.Arthur Furlan
Apresenta algumas das principais características do Django. Mostra os conceitos por trás do framework e ilusta como o desenvolvedor consegue utilizar suas funcionalidades para produzir código mais rápido porém sem abrir mão da qualidade.
Nessa palestra apresentarei o que mudou e por que mudou na nova major version do PHP. Grandes mudanças possibilitaram uma melhor padronização da linguagem, novas possibilidades e encorparam ainda mais esse universo que temos.
Novidades, mudanças, notícias e incompatibilidades do PHP7.
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018 Gabriel Machado
Slides da palestra apresentada na trilha PHP Essencial do TDC São Paulo de 2018 que fala sobre o case da migração do ecommerce da Leroy Merlin Brasil para PHP 7
Implementando PSR-3 com Monolog @ PHP Community Summit 2019Gabriel Machado
Acompanhe as atualizações desse workshop nos repositórios abaixo:
https://github.com/gmsantos/tdc-php-logs
https://github.com/gmsantos/url-shortener
Nesse workshop vamos entender importância dos logs e como eles podem ser utilizados além de uma forma de debug. Vamos conhecer níveis de criticidade definidos pela PSR-3, como funciona o Monolog e como podemos configurá-lo para permitir um melhor aproveitamento dos logs gerados pelas nossas aplicações.
Veremos tudo isso implementado em um projeto de exemplo onde esses logs serão enviados para uma cluster ELK (Elasticsearch, Logstash e Kibana) para analise através de dashboards do Kibana.
Programando para programadores: Desafios na evolução de um FrameworkPablo Dall'Oglio
Nesta palestra são abordados alguns desafios a serem enfrentados na criação de um Framework PHP open-source e também os obstáculos a serem superados para que o mesmo evolua tecnologicamente, mantendo a retrocompatibilidade e uma base de usuários ativa, fazendo o uso correto de seus conceitos.
Gravação (vídeo) da palestra: https://www.infoq.com/br/presentations/depurando-aplicacoes-php-like-a-boss
Palestra apresentada nos seguintes eventos:
- DrupalCamp Campinas, em 25/06/2016;
- The Developers Conference (TDC) São Paulo, em 09/07/2016;
- PHP Conference Brazil, em 09/12/2016;
- PHPSP + Locaweb #3, em 18/02/2017.
Palestra apresentada na Semana Acadêmica Integrada 2009 do Centro de Ensino Superior de Foz do Iguaçu. O objetivo da palestra era de mostrar de modo geral a evolução da linguagem PHP, o mercado regional e também em companhias internacionais, perfis de profissionais e dicas para se tornar um profissional melhor e, por último mas não menos importante, as certificações disponíveis, tendo foco na certificação de PHP5.
Um estudo comparativo entre frameworks PHP, analisando as diferentes abordagens, vantagens e desvantagens de cada um deles, a fim de entender em que situações cada um deles é mais adequado para uma aplicação.
A importância de DDD e o Domain Model na construção de APIs!Isaac de Souza
É comum vermos APIs construídas a partir da visão do modelo do banco de dados ou da composição das UIs planejadas. Criar APIs dessa forma pode funcionar, porém normalmente geram contratos confusos, endpoints complexos e um conjunto de implementações e documentações que se referem muito mais aos detalhes de código do que ao negócio a qual atende. Venha ver nesta apresentação como DDD e o Domain Model podem fazer uma diferença importante para construir bons contratos e APIs maduras e sustentáveis.
Zend Framework 3 - porque só o que existe pode ser aprimoradoFlávio Lisboa
-Breve histórico do Zend Framework (15 anos em 5 minutos); -Melhorias de desempenho; -Suporte a PHP 7; -Aumento do desacoplamento de componentes; -Documentação; -Diactoros; -Stratigility; -Expressive; -Migração; -Possibilidades.
Xdebug seus problemas acabaram - tdc floripa 2017Vitor Mattos
Você leva horas, dias para encontrar um bug? Não conhece o framework que trabalha ou leva dias encontrando como implementar algo? Seus problemas acabaram! Aprenda a debugar suas aplicações com Xdebug!
BDD: Torne viva a documentação de seus sistemasVitor Mattos
Veremos um pouco de tudo, uma apresentação da importância de se fazer testes, testes unitários, testes funcionais, pirâmide de testes, como fazer com que os testes se tornem uma documentação viva de um sistema, como escrever testes com gherkin, a ferramenta behat para escrita de testes funcionais e uma pincelada rápida sobre CI, CD e como implementar a cultura de testes em ambientes hostis a testes.
Palestra apresentada no PHPRS 2017
Django para desenvolvimento web; porque ser repetitivo é chato.Arthur Furlan
Apresenta algumas das principais características do Django. Mostra os conceitos por trás do framework e ilusta como o desenvolvedor consegue utilizar suas funcionalidades para produzir código mais rápido porém sem abrir mão da qualidade.
Nessa palestra apresentarei o que mudou e por que mudou na nova major version do PHP. Grandes mudanças possibilitaram uma melhor padronização da linguagem, novas possibilidades e encorparam ainda mais esse universo que temos.
Novidades, mudanças, notícias e incompatibilidades do PHP7.
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018 Gabriel Machado
Slides da palestra apresentada na trilha PHP Essencial do TDC São Paulo de 2018 que fala sobre o case da migração do ecommerce da Leroy Merlin Brasil para PHP 7
Implementando PSR-3 com Monolog @ PHP Community Summit 2019Gabriel Machado
Acompanhe as atualizações desse workshop nos repositórios abaixo:
https://github.com/gmsantos/tdc-php-logs
https://github.com/gmsantos/url-shortener
Nesse workshop vamos entender importância dos logs e como eles podem ser utilizados além de uma forma de debug. Vamos conhecer níveis de criticidade definidos pela PSR-3, como funciona o Monolog e como podemos configurá-lo para permitir um melhor aproveitamento dos logs gerados pelas nossas aplicações.
Veremos tudo isso implementado em um projeto de exemplo onde esses logs serão enviados para uma cluster ELK (Elasticsearch, Logstash e Kibana) para analise através de dashboards do Kibana.
Programando para programadores: Desafios na evolução de um FrameworkPablo Dall'Oglio
Nesta palestra são abordados alguns desafios a serem enfrentados na criação de um Framework PHP open-source e também os obstáculos a serem superados para que o mesmo evolua tecnologicamente, mantendo a retrocompatibilidade e uma base de usuários ativa, fazendo o uso correto de seus conceitos.
Gravação (vídeo) da palestra: https://www.infoq.com/br/presentations/depurando-aplicacoes-php-like-a-boss
Palestra apresentada nos seguintes eventos:
- DrupalCamp Campinas, em 25/06/2016;
- The Developers Conference (TDC) São Paulo, em 09/07/2016;
- PHP Conference Brazil, em 09/12/2016;
- PHPSP + Locaweb #3, em 18/02/2017.
A análise e modelagem de software não é uma atividade simples, quando o domínio do software não é algo trivial e mais complicado ainda. O Domain Driven Design sugere uma nova abordagem para resolver estas tarefas, criando uma linguagem única para todas as pessoas envolvidas no projeto.
Nesta palestra buscamos conhecer um pouco mais sobre essa abordagem e quais ferramentas temos para aplicá-la utilizando PHP.
Da introdução à prática com Drools Expert e Drools FlowRicardo Longa
As suas regras de negócio mudam constantemente? Que tal gerenciar suas regras sem a necessidade de um re-deploy? Nesta palestra serão apresentadas as introduções aos projetos JBoss Drools Expert e JBoss Drools Flow (atualmente jBPM 5). Indicada as pessoas com nenhum ou mínimo conhecimento sobre a plataforma Drools pois serão desenvolvidos exemplos de regras e fluxos básicos para uma melhor compreensão.
Toda empresa que tem um crescimento de forma consideravel em sua estrutura SharePoint, busca aluns pontos importantes: Alta disponibilidade (sistemas 100% no ar), Alta performance (rapidez de processamento) e grande poder de armazenamento. Com isto este webcasts vai falar sobre pontos cruciais para aumentar seu ambiente alcançando todos estes pontos.
Como usar o Tatu (web server) e tecnologias web (html5, css3 e javascript) para criar aplicações completas, usando o navegador como UI, e o javascript para "business logic". Os primeiros 17 slides mostram uma espécie de biogrtafia minha, portanto comece pulando estes, caso não lhe interesse. O restante dos 43 slides é a essencia do que queremos mostrar.
Aprenda mais sobre o conceito e a utilização de filas e mensagens para a comunicação entre sistemas. Utilizando ferramentas de mensageria, como o RabbitMQ, podemos reduzir complexidade e não se preocupar com o gerenciamento de mensagens e roteamento de informações. Apresentarei, também, alguns exemplos de implementação utilizando PHP para produzir e consumir mensagens de diversas filas.
O código da sua aplicação deve estar testado e funcionando, mas após o deploy é necessário acompanhar e monitorar a sua aplicação.
Nessa palestra eu abordo como configurar o ambiente, como funciona e como integrar o monitoramento à sua aplicação PHP utilizando o Prometheus
Com o grande crescimento dos micro-frameworks, estamos com muito mais liberdade para criamos a nossa própria estrutura. Porém com grandes poderes temos grandes... problemas. Sempre queremos resolver todos os problemas do mundo antes mesmo da aplicação nascer. Nessa palestra eu mostro um pouco dos grandes desafios de montar a própria estrutura baseada em MVC ou outros. Exemplos de como não cair nessas armadilhas de prever problemas que ainda não existem.
Case de sucesso que foi implementado na Kinghost, utilizando a tecnologia Docker + Elasticearch + RabbitMq. Um experiência bem legal que pode servir de exemplo a outras empresas que tem interesse em ingressar no mundo de BigData.
A nossa linguagem preferida evolui e o nosso código deve então seguir o mesmo passo. PHP 7 oferece novas funcionalidades que permitem simplificar, melhorar e aumentar o desempenho do seu código. Nessa palestra, apresentarei os conceitos SOLID e Object Calisthenics e como aplica-los e combina-los com as novas funcionalidades dessa sétima versão. Nossa atualização deve ser constante e do nosso código também.
Essa palestra aborda a necessidade e os desafios na hora de refatorar uma aplicação em PHP, vemos um pouco dos conhecimentos necessários para iniciar esse processo e como devemos arquitetar cada etapa do desenvolvimento. Cada aplicação possui uma realidade diferente por isso será passado um de forma breve os conceitos de SOLID, Design Petterns e Object Calisthenic para poder aplica-los na arquitetura de cada projeto. Além de exemplos de refatoração em pontos específicos da aplicação.
Temos muitas opções de desenvolvimento na Nuvem, mas cada uma possui particularidades. Aplicações hospedadas na nuvem da Amazon necessitam de configurações diferenciadas para que rodem normalmente. Algumas aplicações não estão preparadas para escalabilidade horizontal, isso pode ser um problema na hora de escolher um servidor cloud. Aprenda nessa palestra quais os requisitos da sua aplicação, de acordo com o servidor escolhido, seja ele AWS, DigitalOcean, Openshift e etc.
Resumo:
Uma abordagem prática de como refatorar aplicações legadas utilizando Clean Code e SOLID de forma gradual e documentada.
Descrição:
Essa palestra aborda a necessidade e os desafios na hora de refatorar uma aplicação em PHP, vemos um pouco dos conhecimentos necessários para iniciar esse processo e como devemos arquitetar cada etapa do desenvolvimento.
Cada aplicação possui uma realidade diferente por isso será passado um de forma breve os conceitos de SOLID, Design Petterns e Object Calisthenic para poder aplica-los na arquitetura de cada projeto. Além de exemplos de refatoração em pontos específicos da aplicação.
8. Root / Ferramentas
IDE
Ambiente de Desenvolvimento
Integrado
(Temos tudo que você irá precisa!)
PHP Conference 2013 - Fast Coding
9. Root / Ferramentas / IDE
Eclipse PDT
• Ambiente de Desenvolvimento Integrado
(Temos tudo que você irá precisa!)
PHP Conference 2013 - Fast Coding
10. Root / Ferramentas / IDE
Eclipse PDT
Funcionalidades
•
•
•
•
•
Coloração de Sintaxe
Autocompletar para Códigos (Variáveis, Classes, Funções, ...)
“Jump to Function”
Integração com PHP Unit
Integração com Controle de Versões (GIT, SVN, ...)
PHP Conference 2013 - Fast Coding
11. Root / Ferramentas / IDE
PhpStorm
• Ambiente de Desenvolvimento Integrado
(Temos tudo que você irá precisa!)
PHP Conference 2013 - Fast Coding
12. Root / Ferramentas / IDE
PhpStorm
Funcionalidades
•
•
•
•
•
Suporte PHP 5.5
Vagrant Nativo!
Correção de Sintaxe
“Jump to Function”
PHP Doc
•
•
•
•
•
GIT
SVN
Suporte a Frameworks
Namespaces
...
PHP Conference 2013 - Fast Coding
13. Root / Ferramentas / IDE
Procure na
documentação!
PHP Conference 2013 - Fast Coding
16. Root / Ferramentas / Editores
Notepad++
Prós
• Leve
• Multiuso
• Grande quantidade de
Plugins
• Customizável
• Macro códigos
•
•
•
•
Contras
Incompleto
Excesso de plugins pode
causar transtornos
Alguns plugins de má
qualidade.
Lento para procura de
arquivos/funções
PHP Conference 2013 - Fast Coding
17. Root / Ferramentas / Editores
Sublime Text 2 & 3
PHP Conference 2013 - Fast Coding
18. Root / Ferramentas / Editores
Sublime Text 2 & 3
Prós
•
•
•
•
Leve / Multiuso
Package Control
Command Control
Integração com diversas
tecnologias atuais como:
Contras
• Excesso de plugins pode
causar transtornos
• É necessário ser bom em
Street Fighter.
– GIT, SVN, PHP Unit
•
•
•
•
•
Macro códigos
Interface de Busca incrível
Seleção multipla
Performance Fantástica
Muitas opções de
customização
PHP Conference 2013 - Fast Coding
21. Root / Frameworks / Porque usar?
Conceito
Framework é a abstração de um
problema, um conjunto de soluções
pré-estabelecidas para um domínio.
PHP Conference 2013 - Fast Coding
22. Root / Frameworks / Porque usar?
O quê não te contaram...
Utilizar um framework não te fará
escrever um código mais rápido.
Muito menos um código menor.
PHP Conference 2013 - Fast Coding
23. Root / Frameworks / Porque usar?
...porém
Te fará escrever uma vez só.
PHP Conference 2013 - Fast Coding
24. Root / Frameworks / Porque usar?
Conheça plenamente o seu
framework
O conhecimento te fará escrever
muito melhor e mais rápido. Não
importa o framework.
PHP Conference 2013 - Fast Coding
25. Root / Frameworks / Porque usar?
Apostar em Frameworks novos,
pode ser perigoso.
Cabe ao líder da equipe averiguar em cada
projeto se vale a pena correr o risco. Sempre
é bom aprender coisas novas e talvez obter
boas experiências com isso.
PHP Conference 2013 - Fast Coding
26. Root / Frameworks / Vantagens dos Micro-frameworks
Micro-Frameworks!
A solução do mundo está aqui!
(ou quase)
PHP Conference 2013 - Fast Coding
27. Root / Frameworks / Vantagens dos Micro-frameworks
Resolvem um problema
específico
Algumas vezes, não precisamos de
bolas de canhão, apenas uma boa
escopeta!
PHP Conference 2013 - Fast Coding
28. Root / Frameworks / Vantagens dos Micro-frameworks
A não ser a espada do Cloud
Todos precisam da espada do Cloud
PHP Conference 2013 - Fast Coding
29. Root / Frameworks / Vantagens dos Micro-frameworks
Slim
Silex
GluePHP
Flight
Limonade
Respect
... E muitos outros
PHP Conference 2013 - Fast Coding
34. Root / Funções Nativas
Funções Nativas
Sim, porque você pode aprender a
programar mais rápido usando
recursos da própria linguagem.
PHP Conference 2013 - Fast Coding
35. Root / Funções Nativas
STRTOTIME();
echo date( “d/m/Y” , strtotime( “last day of next month” ) );
# imprime “31/12/2013”
echo date( “d/m/Y” , strtotime( “next Monday of 2013-11-20” ) );
# imprime “31/12/2013”
PHP Conference 2013 - Fast Coding
38. Root / Funções Nativas
GLOB();
<?php
foreach ( glob("*.txt") as $arquivo ) {
echo "tamanho de $arquivo " . filesize($arquivo) . "n";
}
# tamanho de functionlist.txt 44686
# tamanho de functionsummary.txt 267625
# tamanho de quickref.txt 137820
# glob('my/dir/*.[cC][sS][vV]');
?>
PHP Conference 2013 - Fast Coding
39. Root / Funções Nativas
PHP Built-in WebServer
$ cd ~/public_html
$ php -S localhost:8000
PHP 5.4.0 Development Server started at Thu Jul 21 10:43:28 2011
Listening on localhost:8000
Document root is /home/me/public_html
Press Ctrl-C to quit
…
PHP Conference 2013 - Fast Coding