Upload
er-galvao-abbott
View
1.473
Download
1
Embed Size (px)
DESCRIPTION
Palestra que demonstra a evolução da linguagem PHP, desde a sua criação até os dias de hoje
Citation preview
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 1 / 25
PHP: Evolução www.galvao.eti.br
php: Evolução
Imagem
p or Vincent P
ontier
*
Presidente da ABRAPHP – Associação Brasileira de Profissionais PHPDiretor da PHP Conference BrasilContribui para a tradução da documentação oficial Atua como Zend Framework Evangelist para o ZTeam, da Zend.
20+ anos desenvolvendo sistemas e aplicações com interface web 15+ destes com PHP 7+ com Zend Framework
Palestrante em eventos nacionais e internacionaisInstrutor de cursos presenciais e a distânciaFundador e líder do GU PHPBRFundador* e membro do GU PHPRS
Site: http://www.galvao.eti.br/ http://people.php.net/galvaoTwitter: @galvaoSlides e Documentos: http://slideshare.net/ergalvao https://speakerdeck.com/galvaoGithub: http://github.com/galvaoPosts: https://medium.com/@galvao
Quem?!
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 2 / 25
www.galvao.eti.brPHP: Evolução
Era uma vez...
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 3 / 25
www.galvao.eti.brPHP: Evolução
… uma linguagem
simples
pessoalcriticadacaóticacriada por uma pessoa
rápida
História
→ O Dinamarquês Rasmus Lerdorf cria a primeira versão da linguagem, aos 27 anos→ Principais objetivos: ser mais produtivo com menos trabalho → Criar uma linguagem mais simples→ A primeira versão é desenvolvida utilizando-se scripts em Perl→ Em 97, a segunda versão, Form Interpreter, surge, já com porções re-escritas→ Ainda em 97, PHP começa a se beneficiar do modelo Open Source
→ PHP é desconhecido no Brasil→ Nesta mesma época (95-97) ocorre o boom dos “scripts CGI” no Brasil→ Duas linguagens em particular são usadas para gerar estes scripts: C e Perl→ Perl torna-se mais popular do que C, em função de sua simplicidade
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 4 / 25
www.galvao.eti.brPHP: Evolução
1995
1997
“PH
P 1
”
PH
P/F
I 2
PH
P 3
1998
2000
2004
2005
2006
2009
2012
PH
P 4
PH
P 5 5.1
5.2
5.3
5.4
5.4.
1120
13
História
→ Ainda em 97 Andi Gutmans e Zeev Suraski re-escrevem o parser CGI→ Nasce a Zend Engine→ A Zend Engine (0.5) torna-se a base do PHP 3, lançado em 98→ A linguagem é re-batizada pela última vez: PHP Hypertext Preprocessor→ A linguagem ganha a sua mascote oficial: o elePHPant, criado por Vincent Pontier
→ A primeira versão “popular” da linguagem no Brasil
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 5 / 25
www.galvao.eti.brPHP: Evolução
1995
1997
“PH
P 1
”
PH
P/F
I 2
PH
P 3
1998
2000
2004
2005
2006
2009
2012
PH
P 4
PH
P 5 5.1
5.2
5.3
5.4
5.4.
1120
13
História
→ Em 1999 estabelece-se oficialmente, em Israel, a Zend Technologies, de Zeev e Andi→ É lançado o PHP 4, que inclui a Zend Engine 1.0→ Pela primeira vez a linguagem ganha features de Orientação a Objetos→ Entre as features mais importantes da linguagem: → OO → DB: MySQL, PostgreSQL, Oracle, MSSQL, Sybase, etc... → XML
→ A popularidade da linguagem cresce consideravelmente no Brasil→ Já é corriqueiro encontrar vagas de empregos para a linguagem
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 6 / 25
www.galvao.eti.brPHP: Evolução
1995
1997
“PH
P 1
”
PH
P/F
I 2
PH
P 3
1998
2000
2004
2005
2006
2009
2012
PH
P 4
PH
P 5 5.1
5.2
5.3
5.4
5.4.
1120
13
História
→ A versão mais importante (e a major atual) da linguagem é lançada, com a Zend Engine 2→ Toda a parte de Orientação a Objetos é re-escrita “do zero”→ Suporte a XML re-escrito “do zero”, com suporte a DOM→ Suporte simplificado a XML com as funções simplexml→ Muitas funções e implementações instáveis são resolvidas (p.ex.: OCI8)→ Acesso a DBs melhorado: MySQLImproved, PDO (PHP Data Objects), etc...→ Suporte a SOAP→ Exceções
→ No Brasil (e no mundo) a popularidade da linguagem não pode mais ser questionada
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 7 / 25
www.galvao.eti.brPHP: Evolução
1995
1997
“PH
P 1
”
PH
P/F
I 2
PH
P 3
1998
2000
2004
2005
2006
2009
2012
PH
P 4
PH
P 5 5.1
5.2
5.3
5.4
5.4.
1120
13
História
→ Suporte a datas melhorado, com suporte a timezone→ Diversas melhorias de performance→ PDO passa a ser habilitada por default→ Diversas melhorias de segurança
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 8 / 25
www.galvao.eti.brPHP: Evolução
1995
1997
“PH
P 1
”
PH
P/F
I 2
PH
P 3
1998
2000
2004
2005
2006
2009
2012
PH
P 4
PH
P 5 5.1
5.2
5.3
5.4
5.4.
1120
13
História
→ Suporte a JSON→ Surge a extensão Filter, para incrementar a segurança→ Suporte a compactação de arquivos (ZIP), não-default→ Limite de memória (default: 128mb) habilitado por default
→ Surge no Brasil o Grupo de Usuários PHPRS!→ É realizada a primeira edição da PHP Conference Brasil, com Derick Rethans→ Os GUs ganham força→ Posteriormente seriam criados o PHPMG e PHPAL, inspirados pelo PHPRS
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 9 / 25
www.galvao.eti.brPHP: Evolução
1995
1997
“PH
P 1
”
PH
P/F
I 2
PH
P 3
1998
2000
2004
2005
2006
2009
2012
PH
P 4
PH
P 5 5.1
5.2
5.3
5.4
5.4.
1120
13
História
→ A funcionalidade register_globals é marcada como obsoleta→ A funcionalidade safe_mode é marcada como obsoleta→ A linguagem ganha novas – e importantes – funcionalidades: → Funções anônimas → Namespaces → Nasce a extensão PHAR – PHP Archive
→ No Brasil, a PHP Conference Brasil já é um evento consolidado→ Lukas Smith, Christopher Jones, Luke Crouch, Sebastian Bergmann e Eli White→ A Comunidade (GUs) segue de vento em popa
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 10 / 25
www.galvao.eti.brPHP: Evolução
1995
1997
“PH
P 1
”
PH
P/F
I 2
PH
P 3
1998
2000
2004
2005
2006
2009
2012
PH
P 4
PH
P 5 5.1
5.2
5.3
5.4
5.4.
1120
13
História
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 11 / 25
www.galvao.eti.brPHP: Evolução
1995
1997
“PH
P 1
”
PH
P/F
I 2
PH
P 3
1998
2000
2004
2005
2006
2009
2012
PH
P 4
PH
P 5 5.1
5.2
5.3
5.4
5.4.
1120
13
→ Fim da register_globals→ Fim da safe_mode→ Novas funcionalidades: → Traits, Arrays “curtos”, a tag <?= passa a ser sempre habilitada→ A linguagem conta com mais de 700 desenvolvedores envolvidos, incluindo Brasileiros→ Empresas como Oracle, IBM e Microsoft estão envolvidas no desenvolvimento→ A Zend lança uma solução para criação de aplicações móveis envolvendo PHP
→ Nasce a ABRAPHP – Associação Brasileira de Profissionais PHP→ Andi Gutmans é o Keynote Speaker na PHP Conference Brasil 2012→ A Zend reúne-se com a Comunidade e Empresas Brasileiras
História
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 12 / 25
www.galvao.eti.brPHP: Evolução
2013
2014
5.5
5.6
→ A família de funções mysql é marcada como obsoleta→ Novas funcionalidades:
→ Generators→ Palavra-chave Finally para Exceções
→ Surge o PHP-Fig e as PSRs→ Google afirma: 75% da Web roda PHP e adiciona a linguagem a sua App Engine
→ A ABRAPHP começa a iniciativa de levar o PHP “de volta” a eventos de SL, com o FISL
História
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 13 / 25
www.galvao.eti.brPHP: Evolução
2013
2014
5.5
5.6
→ Novas funcionalidades:→ Funções Variádicas→ Operador de Exponenciação→ Debugger nativo
→ A linguagem começa a ganhar a sua Especificação Formal
→ ABRAPHP leva a linguagem para dentro de uma instituição ligada ao Governo: Dataprev→ ABRAPHP participa da organização do Latinoware 2014 reforçando a trilha de PHP \o/→ PHP Conference Brasil 2014 conta com Rasmus Lerdorf e Matthew Weier O'Phinney
Futuro
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 14 / 25
www.galvao.eti.brPHP: Evolução
2013
2014
5.5
5.6
→ ASP Tags e Script tag serão removidas→ Melhorias para plataforma de 64 bits→ Novas funcionalidades:
→ Operador Null Coalesce → Operador Spaceship (<=>) → Scalar Type Hints → Return Type Declarations
→ PHP Conference Brasil fará 10 anos \o/→ Eventos de SL, como o Latinoware 2015, seguirão com uma trilha forte de PHP (Dedos cruzados, torçam por nós!)
PH
P 7
?
7
O Futuro é lindo
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 15 / 25
www.galvao.eti.brPHP: Evolução
Scalar Type Hints
O Futuro é lindo
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 16 / 25
www.galvao.eti.brPHP: Evolução
Scalar Type Hints +Strict Mode
O Futuro é lindo
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 17 / 25
www.galvao.eti.brPHP: Evolução
Scalar Type Hints +Strict Mode +Return Type Declarations
O Futuro é lindo
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 18 / 25
www.galvao.eti.brPHP: Evolução
Scalar Type Hints +Strict Mode +Return Type Declarations +Engine Exceptions
O Futuro é lindo
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 19 / 25
www.galvao.eti.brPHP: Evolução
Scalar Type Hints +Strict Mode +Return Type Declarations +Engine Exceptions
===
EPIC WIN
O Futuro é lindo
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 20 / 25
www.galvao.eti.brPHP: Evolução
<?phpdeclare(strict_types = 1);
function foo(float $x, float $y): float { return $x + $y;}
foo(0.5, 2.8); // OKfoo(1, 2); // OK*foo('1.5', '2.1'); // Fatal Error**
* Type Widening ** Uncaught EngineException
Sorry! =)
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 21 / 25
www.galvao.eti.brPHP: Evolução
Era uma vez...
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 22 / 25
www.galvao.eti.brPHP: Evolução
… uma linguagem
simples
pessoalcriticadacaóticacriada por uma pessoa
rápida
Hoje...
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 23 / 25
www.galvao.eti.brPHP: Evolução
… esta linguagem é
simples, mas versátil
pessoal e profissionalaclamadaorganizadasuportada por milhões
rápida, com qualidade
CRMs, CMSs, Blogs, Portais, Mobile
TDD, CI, DI, OO, git
[Micro/]Frameworks, Deployable
Mídia, Portais conhecidos
FIG (PSRs), Boas práticas, Especificação Formal
PHPConf, ZendCon, FISL, GUs,ABRAPHP, Latinoware, EventosRegionais ...
Muito obrigado!
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 24 / 25
www.galvao.eti.brPHP: Evolução
Fica o convite:
Muito obrigado!
CC Attribution-ShareAlike 3.0 Unported License by Er Galvão Abbott - 3/30/15 - 25 / 25
www.galvao.eti.brPHP: Evolução
Fica o convite:Vem evoluir junto!