PHP: Além do sitezinho
Thiago Rodrigues
https://xthiago.com
Programador há 12 anos;
Evangelista PHP na comunidade
PHPSP;
Bacharel em Sistemas de
Informação pela Universidade do
Estado de Minas (UEMG);
Diretor de desenvolvimento na
UPX Technologies;
Apoiador do movimento
Open-Source;
Sobre
[x]Thiago Rodrigues
???
Qual a primeira coisa que vem a sua mente
sobre PHP?
Nojinho?
Não, apenas...
Sobrinho?
Baixa Curva de
Aprendizado
Pessoas sem formação em TI
conseguem aprender a
linguagem sozinhos para resolver
problemas seus problemas;
v1
Um pouco de história...
1998
PHP: Hypertext
Preprocessor
+ Andi Gutmans +
Zeev Suraski
2000
Zend Engine
1997
PHP/FI
1995
Personal Home Page
Tools
+ Rasmus Lerdorf
V2
V3
V4
v5
2004
Zend Engine 2 2015
v7
2011
HHVM
WTF! Cade o PHP 6?
v5
5.0 (2004)
5.1 (2005)
5.2 (2006)
5.3 (2009)
5.4 (2012)
5.5(2013)
5.6 (2014)
7.0 (2015)
7.1 (2016)
7.2 (2017*)
v7
Novas funcionalidades todos os anos
v5
5.0 (2004)
5.1 (2005)
5.2 (2006)
5.3 (2009)
5.4 (2012)
5.5 (2013)
5.6 (2014)
7.0 (2015)
7.1 (2016)
7.2 (2017*)
v7
http://semver.org
Tietando Rasmus Lerdorf @ PHP Conference Brasil 2014
Quem decide?
Quem faz o PHP?
● Open Source;
● Não há ditador benevolente;
● Votação via Request for Comments (RFC).
Comunidade
● Milhares de projetos open-source;
● Excelentes bibliotecas, CMS e frameworks;
● Documentação abrangente;
● Interoperabilidade (PHP-FIG);
● Muitas pessoas dispostas a ajudar
(comunidades);
Ecosistema maduro
Mas quem usa PHP?
Como
interagimos
com a Web
Web 1.0
● quase todo conteúdo
estático;
● internet lenta
(discada);
● acesso pelo Desktop.
Web 2.0
● conteúdo dinâmico;
● conexões melhores;
● quase todo acesso
pelo Desktop;
● primeiras APIs.
Agora...
● conteúdo personalizado
(big data + IA);
● alta velocidade de banda
na fixa e baixa na móvel;
● acesso via múltiplos
dispositivos (celular, PC,
TV, IoT, APIs)
● API em todos lugares.
As demandas atuais
exigem novas práticas
de desenvolvimento.
Os sitezinhos ainda
existem, mas há maior
demanda por soluções
sofisticadas que
facilitam a vida das
pessoas.
Algumas dicas para criação de
aplicações PHP modernas
#0 - Não existe bala de prata.
Crie APIs para
tudo
#1
Use o mecanismo de
persistência que lhe
convém;
Se necessário, use
mais que um;
Abstraia.
#2
Versione o código
#3
Não misture PHP
com outras
linguagens
#4
Instale
dependências
com Composer
#5
Não deixe seu
usuário
esperando: use
filas assíncronas
#6
Escreva testes
automatizados
#7
Escreva testes
automatizados
com TDD
#8
Depure o código
com ferramentas
adequadas
#9
https://www.infoq.com/br/presentations/depurando-aplicacoes-php-like-a-boss
Não otimize
precocemente;
Não aplique otimizações
inúteis (aspas vs
apóstrofo).
#10
Jamais desenvolva
ou teste com
banco de dados
de produção;
#11
Tenha um único
padrão de
codificação;
#12
phpcs
Dê bons nomes - eles
importam.
Você precisa entender
o que a função faz
apenas pelo seu nome.
#13
Estude e aplique
SOLID e Object
Calisthenics.
#14
Não deixe código
ser mesclado sem
passar por
codereview.
#15
Mantenha a
paridade entre os
diferentes
ambientes (ex:
dev e produção)
#16
Não reinvente a
roda.
#17
https://www.slideshare.net/ThiagoRodrigues/impacto-dos-frameworks-php
Não acople a
lógica de negócios
com códigos de
terceiros; Use OO
do jeito certo.
#18
Tenha um servidor
de integração
contínua (CI).
#19
Envolva-se com o
negócio.
Tenha empatia pelo
cliente. Não existe mais
dev anti-social.
#20
e para finalizar...
Envolva-se com
comunidades
#amizade
#networking
#coperação
Obrigado!
Você pode me encontrar em https://xthiago.com
Dúvidas?
Vector Icons by Matthew Skiles
Presentation template designed by Slidesmash
Photographs by unsplash.com and pexels.com
CREDITS
Special thanks to all people who made and share
these awesome resources for free:

PHP: Além do sitezinho