SlideShare uma empresa Scribd logo
Fast Coding

Por Daniel Archer
O que é programar em
alta velocidade?

PHP Conference 2013 - Fast Coding
Usar o framework mais rápido do
mercado!

O que é programar em
alta velocidade?

PHP Conference 2013 - Fast Coding
Usar o framework mais rápido do
mercado!

Não

O que é programar em
alta velocidade?

PHP Conference 2013 - Fast Coding
Saber usar as
suas ferramentas!

PHP Conference 2013 - Fast Coding
Saber usar as
suas ferramentas!

PHP Conference 2013 - Fast Coding

...?
Root / Sumário

Tópicos Abordados
1.

Ferramentas
1.

IDEs (Integrated Development Enviroment)
1.
2.

2.

Editores
1.
2.

2.

Emmet
Gist

Funções Nativas
1.

5.

Porque usar
Vantagens dos micro-frameworks

Plugins
1.
2.

4.

NotePad++
Sublime Text 2 & 3

Frameworks
1.
2.

3.

Eclipse PDT
PHPStorm

Strtotime / array_combine / array_map / glob / etc...

Design Patterns
PHP Conference 2013 - Fast Coding
Root / Ferramentas

IDE
Ambiente de Desenvolvimento
Integrado
(Temos tudo que você irá precisa!)

PHP Conference 2013 - Fast Coding
Root / Ferramentas / IDE

Eclipse PDT
• Ambiente de Desenvolvimento Integrado
(Temos tudo que você irá precisa!)

PHP Conference 2013 - Fast Coding
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
Root / Ferramentas / IDE

PhpStorm
• Ambiente de Desenvolvimento Integrado
(Temos tudo que você irá precisa!)

PHP Conference 2013 - Fast Coding
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
Root / Ferramentas / IDE

Procure na
documentação!

PHP Conference 2013 - Fast Coding
Root / Ferramentas / Editores

Editores

PHP Conference 2013 - Fast Coding
Root / Ferramentas / Editores

Notepad++

PHP Conference 2013 - Fast Coding
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
Root / Ferramentas / Editores

Sublime Text 2 & 3

PHP Conference 2013 - Fast Coding
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
Root / Frameworks

Frameworks!
Agora sim! Qual o melhor?

PHP Conference 2013 - Fast Coding
Root / Frameworks

Frameworks!
Nenhum :(

PHP Conference 2013 - Fast Coding
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
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
Root / Frameworks / Porque usar?

...porém
Te fará escrever uma vez só.

PHP Conference 2013 - Fast Coding
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
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
Root / Frameworks / Vantagens dos Micro-frameworks

Micro-Frameworks!
A solução do mundo está aqui!
(ou quase)

PHP Conference 2013 - Fast Coding
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
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
Root / Frameworks / Vantagens dos Micro-frameworks

Slim
Silex
GluePHP
Flight
Limonade
Respect
... E muitos outros

PHP Conference 2013 - Fast Coding
Root / Plugins

Emmet
Zen-Conding

PHP Conference 2013 - Fast Coding
Root / Plugins

PHP Conference 2013 - Fast Coding
Root / Plugins

Gist
Criando um Gist de forma Rápida
com Sublime Text 3

PHP Conference 2013 - Fast Coding
Root / Plugins

Gist
Criando um Gist de forma Rápida
com PhpStorm

PHP Conference 2013 - Fast Coding
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
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
Root / Funções Nativas

ARRAY_COMBINE();
<?php
$clienteAtributos = [ "nome“ , "cidade“ , "telefone“ ];
$linhaExportacao = "daniel;porto alegre;51 3333.3333";
$arrayCliente =
array_combine($clienteAtributos, explode(";“,$linhaExportacao ) );
print_r( $arrayCliente );
# Array (
# [nome] => daniel
# [cidade] => porto alegre
# [telefone] => 51 3333.3333
# )
?>
PHP Conference 2013 - Fast Coding
Root / Funções Nativas

ARRAY_MAP();
<?php
function correcaoMaiusculas( $texto ) {
return ucwords( strtolower( $texto ) );
}
$arrayCliente = [ "DANIEL“ , "Jose“ , "paulo“ , “gabriel FERREIRA“ ];
$arrayCliente = array_map( 'correcaoMaiusculas‘ , $arrayCliente);
print_r( $arrayCliente );

# Array (
# [0] => Daniel
# [1] => Jose
# [2] => Paulo
# [3] => Gabriel Ferreira
#)
?>

PHP Conference 2013 - Fast Coding
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
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
Root / Composer

Composer

PHP Conference 2013 - Fast Coding
• Eclipse PDT - http://www.zend.com/en/company/community/pdt/
• Eclipse PHP Unit - http://blog.loftdigital.com/running-phpunit-tests-in-eclipse-pdt
• Eclipse Egit - http://marketplace.eclipse.org/content/egit-git-team-provider
• Eclipse SVN - http://marketplace.eclipse.org/content/subclipse
• PHP Storm 7 - http://www.jetbrains.com/phpstorm/
• Vagrant - http://www.vagrantup.com/
• Notepad++ - http://notepad-plus-plus.org/
• Notepad++ Emmet - https://github.com/emmetio/npp#readme
• Sublime Text - http://www.sublimetext.com/
• Sublime Text 2 Documentação - http://www.sublimetext.com/docs/2/
• Sublime Text 3 Documentação - http://www.sublimetext.com/docs/3/
• Microframeworks – Slim – http://slimframework.com/
• Microframeworks – Silex - http://silex.sensiolabs.org/
• Microframeworks – GluePHP - http://gluephp.com/
• Microframeworks – Limonade - http://limonade-php.github.io/
• Microframeworks – Flight - http://flightphp.com/
• Microframeworks – Respect - http://respect.li/
• Emmet - http://docs.emmet.io
• Composer - http://getcomposer.org/

PHP Conference 2013 - Fast Coding

Mais conteúdo relacionado

Mais procurados

PHP, Mercado e Certificações
PHP, Mercado e CertificaçõesPHP, Mercado e Certificações
PHP, Mercado e Certificações
Fernando Geraldo Mantoan
 
Seu framework é melhor pra quê?
Seu framework é melhor pra quê?Seu framework é melhor pra quê?
Seu framework é melhor pra quê?
Jaime Neto
 
PHP Além da universidade
PHP Além da universidadePHP Além da universidade
PHP Além da universidade
Daniel Archer Marques Cramer
 
A importância de DDD e o Domain Model na construção de APIs!
A importância de DDD e o Domain Model na construção de APIs!A importância de DDD e o Domain Model na construção de APIs!
A importância de DDD e o Domain Model na construção de APIs!
Isaac de Souza
 
Zend Framework 3 - porque só o que existe pode ser aprimorado
Zend Framework 3 - porque só o que existe pode ser aprimoradoZend Framework 3 - porque só o que existe pode ser aprimorado
Zend Framework 3 - porque só o que existe pode ser aprimorado
Flávio Lisboa
 
Xdebug seus problemas acabaram - tdc floripa 2017
Xdebug   seus problemas acabaram - tdc floripa 2017Xdebug   seus problemas acabaram - tdc floripa 2017
Xdebug seus problemas acabaram - tdc floripa 2017
Vitor Mattos
 
Criando plugin para o Nagios em Shell Script _ Nagios
Criando plugin para o Nagios em Shell Script _ NagiosCriando plugin para o Nagios em Shell Script _ Nagios
Criando plugin para o Nagios em Shell Script _ Nagios
Carlos Eduardo
 
BDD: Torne viva a documentação de seus sistemas
BDD: Torne viva a documentação de seus sistemasBDD: Torne viva a documentação de seus sistemas
BDD: Torne viva a documentação de seus sistemas
Vitor Mattos
 
Django para desenvolvimento web; porque ser repetitivo é chato.
Django para desenvolvimento web; porque ser repetitivo é chato.Django para desenvolvimento web; porque ser repetitivo é chato.
Django para desenvolvimento web; porque ser repetitivo é chato.
Arthur Furlan
 
PHP 7 - A Maioridade do PHP
PHP 7 - A Maioridade do PHPPHP 7 - A Maioridade do PHP
PHP 7 - A Maioridade do PHP
Daniel Archer Marques Cramer
 
Java acsp
Java acspJava acsp
Java acsp
Eduardo Bregaida
 

Mais procurados (11)

PHP, Mercado e Certificações
PHP, Mercado e CertificaçõesPHP, Mercado e Certificações
PHP, Mercado e Certificações
 
Seu framework é melhor pra quê?
Seu framework é melhor pra quê?Seu framework é melhor pra quê?
Seu framework é melhor pra quê?
 
PHP Além da universidade
PHP Além da universidadePHP Além da universidade
PHP Além da universidade
 
A importância de DDD e o Domain Model na construção de APIs!
A importância de DDD e o Domain Model na construção de APIs!A importância de DDD e o Domain Model na construção de APIs!
A importância de DDD e o Domain Model na construção de APIs!
 
Zend Framework 3 - porque só o que existe pode ser aprimorado
Zend Framework 3 - porque só o que existe pode ser aprimoradoZend Framework 3 - porque só o que existe pode ser aprimorado
Zend Framework 3 - porque só o que existe pode ser aprimorado
 
Xdebug seus problemas acabaram - tdc floripa 2017
Xdebug   seus problemas acabaram - tdc floripa 2017Xdebug   seus problemas acabaram - tdc floripa 2017
Xdebug seus problemas acabaram - tdc floripa 2017
 
Criando plugin para o Nagios em Shell Script _ Nagios
Criando plugin para o Nagios em Shell Script _ NagiosCriando plugin para o Nagios em Shell Script _ Nagios
Criando plugin para o Nagios em Shell Script _ Nagios
 
BDD: Torne viva a documentação de seus sistemas
BDD: Torne viva a documentação de seus sistemasBDD: Torne viva a documentação de seus sistemas
BDD: Torne viva a documentação de seus sistemas
 
Django para desenvolvimento web; porque ser repetitivo é chato.
Django para desenvolvimento web; porque ser repetitivo é chato.Django para desenvolvimento web; porque ser repetitivo é chato.
Django para desenvolvimento web; porque ser repetitivo é chato.
 
PHP 7 - A Maioridade do PHP
PHP 7 - A Maioridade do PHPPHP 7 - A Maioridade do PHP
PHP 7 - A Maioridade do PHP
 
Java acsp
Java acspJava acsp
Java acsp
 

Semelhante a PHP Tools for Fast coding

O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018 O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
Gabriel Machado
 
POG nunca mais - SOLISC
POG nunca mais - SOLISCPOG nunca mais - SOLISC
POG nunca mais - SOLISC
Paulino Michelazzo
 
Arteccom Workshop Magento
Arteccom Workshop MagentoArteccom Workshop Magento
Arteccom Workshop Magento
Thiago Verly
 
Implementando PSR-3 com Monolog @ PHP Community Summit 2019
Implementando PSR-3 com Monolog @ PHP Community Summit 2019Implementando PSR-3 com Monolog @ PHP Community Summit 2019
Implementando PSR-3 com Monolog @ PHP Community Summit 2019
Gabriel Machado
 
Pense no futuro: PHP com Zend Framework
Pense no futuro: PHP com Zend FrameworkPense no futuro: PHP com Zend Framework
Pense no futuro: PHP com Zend Framework
Flávio Lisboa
 
Programando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um FrameworkProgramando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um Framework
Pablo Dall'Oglio
 
Depurando aplicações PHP like a BOSS
Depurando aplicações PHP like a BOSSDepurando aplicações PHP like a BOSS
Depurando aplicações PHP like a BOSS
Thiago Rodrigues
 
Evolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicEvolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual Basic
Ricardo Guerra Freitas
 
Construção e provisionamento de ambientes de desenvolvimento virtualizados
Construção e provisionamento de ambientes  de desenvolvimento virtualizadosConstrução e provisionamento de ambientes  de desenvolvimento virtualizados
Construção e provisionamento de ambientes de desenvolvimento virtualizados
Thiago Rodrigues
 
TDC2018SP | Trilha PHP Essencial - O que nao fazer ao atualizar para o PHP 7
TDC2018SP | Trilha PHP Essencial - O que nao fazer ao atualizar para o PHP 7TDC2018SP | Trilha PHP Essencial - O que nao fazer ao atualizar para o PHP 7
TDC2018SP | Trilha PHP Essencial - O que nao fazer ao atualizar para o PHP 7
tdc-globalcode
 
php4android: desenvolva aplicações android em PHP
php4android: desenvolva aplicações android em PHPphp4android: desenvolva aplicações android em PHP
php4android: desenvolva aplicações android em PHP
Ramon Ribeiro Rabello
 
DDD e PHP - TDC 2012
DDD e PHP - TDC 2012DDD e PHP - TDC 2012
DDD e PHP - TDC 2012
Luís Cobucci
 
Da introdução à prática com Drools Expert e Drools Flow
Da introdução à prática com Drools Expert e Drools FlowDa introdução à prática com Drools Expert e Drools Flow
Da introdução à prática com Drools Expert e Drools Flow
Ricardo Longa
 
Desenvolvendo com Dojo Toolkit
Desenvolvendo com Dojo ToolkitDesenvolvendo com Dojo Toolkit
Desenvolvendo com Dojo Toolkit
Flávio Lisboa
 
Trabalhando com ambientes complexos – SharePoint 2007 e SQL Server 2005
Trabalhando com ambientes complexos – SharePoint 2007 e SQL Server 2005Trabalhando com ambientes complexos – SharePoint 2007 e SQL Server 2005
Trabalhando com ambientes complexos – SharePoint 2007 e SQL Server 2005
Comunidade CanalSharePoint
 
Machine Learning Black Boxes
Machine Learning Black BoxesMachine Learning Black Boxes
Machine Learning Black Boxes
Denis Wilson Souza Rosa
 
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho DuroTDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
tdc-globalcode
 
Parallel Programming no .NET 4.0
Parallel Programming no .NET 4.0Parallel Programming no .NET 4.0
Parallel Programming no .NET 4.0
Comunidade NetPonto
 
Clean code: programando com WordPress de forma profissional
Clean code: programando com WordPress de forma profissionalClean code: programando com WordPress de forma profissional
Clean code: programando com WordPress de forma profissional
Leo Baiano
 
Aplicações com Tecnologias Web
Aplicações com Tecnologias WebAplicações com Tecnologias Web
Aplicações com Tecnologias Web
Rildo Pragana
 

Semelhante a PHP Tools for Fast coding (20)

O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018 O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
 
POG nunca mais - SOLISC
POG nunca mais - SOLISCPOG nunca mais - SOLISC
POG nunca mais - SOLISC
 
Arteccom Workshop Magento
Arteccom Workshop MagentoArteccom Workshop Magento
Arteccom Workshop Magento
 
Implementando PSR-3 com Monolog @ PHP Community Summit 2019
Implementando PSR-3 com Monolog @ PHP Community Summit 2019Implementando PSR-3 com Monolog @ PHP Community Summit 2019
Implementando PSR-3 com Monolog @ PHP Community Summit 2019
 
Pense no futuro: PHP com Zend Framework
Pense no futuro: PHP com Zend FrameworkPense no futuro: PHP com Zend Framework
Pense no futuro: PHP com Zend Framework
 
Programando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um FrameworkProgramando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um Framework
 
Depurando aplicações PHP like a BOSS
Depurando aplicações PHP like a BOSSDepurando aplicações PHP like a BOSS
Depurando aplicações PHP like a BOSS
 
Evolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicEvolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual Basic
 
Construção e provisionamento de ambientes de desenvolvimento virtualizados
Construção e provisionamento de ambientes  de desenvolvimento virtualizadosConstrução e provisionamento de ambientes  de desenvolvimento virtualizados
Construção e provisionamento de ambientes de desenvolvimento virtualizados
 
TDC2018SP | Trilha PHP Essencial - O que nao fazer ao atualizar para o PHP 7
TDC2018SP | Trilha PHP Essencial - O que nao fazer ao atualizar para o PHP 7TDC2018SP | Trilha PHP Essencial - O que nao fazer ao atualizar para o PHP 7
TDC2018SP | Trilha PHP Essencial - O que nao fazer ao atualizar para o PHP 7
 
php4android: desenvolva aplicações android em PHP
php4android: desenvolva aplicações android em PHPphp4android: desenvolva aplicações android em PHP
php4android: desenvolva aplicações android em PHP
 
DDD e PHP - TDC 2012
DDD e PHP - TDC 2012DDD e PHP - TDC 2012
DDD e PHP - TDC 2012
 
Da introdução à prática com Drools Expert e Drools Flow
Da introdução à prática com Drools Expert e Drools FlowDa introdução à prática com Drools Expert e Drools Flow
Da introdução à prática com Drools Expert e Drools Flow
 
Desenvolvendo com Dojo Toolkit
Desenvolvendo com Dojo ToolkitDesenvolvendo com Dojo Toolkit
Desenvolvendo com Dojo Toolkit
 
Trabalhando com ambientes complexos – SharePoint 2007 e SQL Server 2005
Trabalhando com ambientes complexos – SharePoint 2007 e SQL Server 2005Trabalhando com ambientes complexos – SharePoint 2007 e SQL Server 2005
Trabalhando com ambientes complexos – SharePoint 2007 e SQL Server 2005
 
Machine Learning Black Boxes
Machine Learning Black BoxesMachine Learning Black Boxes
Machine Learning Black Boxes
 
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho DuroTDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
 
Parallel Programming no .NET 4.0
Parallel Programming no .NET 4.0Parallel Programming no .NET 4.0
Parallel Programming no .NET 4.0
 
Clean code: programando com WordPress de forma profissional
Clean code: programando com WordPress de forma profissionalClean code: programando com WordPress de forma profissional
Clean code: programando com WordPress de forma profissional
 
Aplicações com Tecnologias Web
Aplicações com Tecnologias WebAplicações com Tecnologias Web
Aplicações com Tecnologias Web
 

Mais de Daniel Archer Marques Cramer

Filas e mensageria com RabbitMQ
Filas e mensageria com RabbitMQFilas e mensageria com RabbitMQ
Filas e mensageria com RabbitMQ
Daniel Archer Marques Cramer
 
Monitorando aplicações com Prometheus
Monitorando aplicações com PrometheusMonitorando aplicações com Prometheus
Monitorando aplicações com Prometheus
Daniel Archer Marques Cramer
 
Over engineering
Over engineeringOver engineering
Frameworks e microframeworks php - conexão kinghost
Frameworks e microframeworks php - conexão kinghostFrameworks e microframeworks php - conexão kinghost
Frameworks e microframeworks php - conexão kinghost
Daniel Archer Marques Cramer
 
Case Kinghost + Elasticsearch
Case Kinghost + ElasticsearchCase Kinghost + Elasticsearch
Case Kinghost + Elasticsearch
Daniel Archer Marques Cramer
 
Aplicando SOLID com PHP7
Aplicando SOLID com PHP7Aplicando SOLID com PHP7
Aplicando SOLID com PHP7
Daniel Archer Marques Cramer
 
Refatorar é preciso! 2.0
Refatorar é preciso! 2.0Refatorar é preciso! 2.0
Refatorar é preciso! 2.0
Daniel Archer Marques Cramer
 
Php on the cloud
Php on the cloudPhp on the cloud
Refatorar é preciso. Palestra TDC 2014
Refatorar é preciso. Palestra TDC 2014Refatorar é preciso. Palestra TDC 2014
Refatorar é preciso. Palestra TDC 2014
Daniel Archer Marques Cramer
 

Mais de Daniel Archer Marques Cramer (9)

Filas e mensageria com RabbitMQ
Filas e mensageria com RabbitMQFilas e mensageria com RabbitMQ
Filas e mensageria com RabbitMQ
 
Monitorando aplicações com Prometheus
Monitorando aplicações com PrometheusMonitorando aplicações com Prometheus
Monitorando aplicações com Prometheus
 
Over engineering
Over engineeringOver engineering
Over engineering
 
Frameworks e microframeworks php - conexão kinghost
Frameworks e microframeworks php - conexão kinghostFrameworks e microframeworks php - conexão kinghost
Frameworks e microframeworks php - conexão kinghost
 
Case Kinghost + Elasticsearch
Case Kinghost + ElasticsearchCase Kinghost + Elasticsearch
Case Kinghost + Elasticsearch
 
Aplicando SOLID com PHP7
Aplicando SOLID com PHP7Aplicando SOLID com PHP7
Aplicando SOLID com PHP7
 
Refatorar é preciso! 2.0
Refatorar é preciso! 2.0Refatorar é preciso! 2.0
Refatorar é preciso! 2.0
 
Php on the cloud
Php on the cloudPhp on the cloud
Php on the cloud
 
Refatorar é preciso. Palestra TDC 2014
Refatorar é preciso. Palestra TDC 2014Refatorar é preciso. Palestra TDC 2014
Refatorar é preciso. Palestra TDC 2014
 

Último

se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docxse38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
ronaldos10
 
Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de   DevOps/CLoudFerramentas que irão te ajudar a entrar no mundo de   DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
Ismael Ash
 
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
Faga1939
 
Aula combustiveis mais utilizados na indústria
Aula combustiveis mais utilizados na indústriaAula combustiveis mais utilizados na indústria
Aula combustiveis mais utilizados na indústria
zetec10
 
Subindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWSSubindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWS
Ismael Ash
 
Apresentação sobre Deep Web e anonimização
Apresentação sobre Deep Web e anonimizaçãoApresentação sobre Deep Web e anonimização
Apresentação sobre Deep Web e anonimização
snerdct
 

Último (6)

se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docxse38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
 
Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de   DevOps/CLoudFerramentas que irão te ajudar a entrar no mundo de   DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
 
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
 
Aula combustiveis mais utilizados na indústria
Aula combustiveis mais utilizados na indústriaAula combustiveis mais utilizados na indústria
Aula combustiveis mais utilizados na indústria
 
Subindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWSSubindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWS
 
Apresentação sobre Deep Web e anonimização
Apresentação sobre Deep Web e anonimizaçãoApresentação sobre Deep Web e anonimização
Apresentação sobre Deep Web e anonimização
 

PHP Tools for Fast coding

  • 2. O que é programar em alta velocidade? PHP Conference 2013 - Fast Coding
  • 3. Usar o framework mais rápido do mercado! O que é programar em alta velocidade? PHP Conference 2013 - Fast Coding
  • 4. Usar o framework mais rápido do mercado! Não O que é programar em alta velocidade? PHP Conference 2013 - Fast Coding
  • 5. Saber usar as suas ferramentas! PHP Conference 2013 - Fast Coding
  • 6. Saber usar as suas ferramentas! PHP Conference 2013 - Fast Coding ...?
  • 7. Root / Sumário Tópicos Abordados 1. Ferramentas 1. IDEs (Integrated Development Enviroment) 1. 2. 2. Editores 1. 2. 2. Emmet Gist Funções Nativas 1. 5. Porque usar Vantagens dos micro-frameworks Plugins 1. 2. 4. NotePad++ Sublime Text 2 & 3 Frameworks 1. 2. 3. Eclipse PDT PHPStorm Strtotime / array_combine / array_map / glob / etc... Design Patterns PHP Conference 2013 - Fast Coding
  • 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
  • 14. Root / Ferramentas / Editores Editores PHP Conference 2013 - Fast Coding
  • 15. Root / Ferramentas / Editores Notepad++ 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
  • 19. Root / Frameworks Frameworks! Agora sim! Qual o melhor? PHP Conference 2013 - Fast Coding
  • 20. Root / Frameworks Frameworks! Nenhum :( 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
  • 30. Root / Plugins Emmet Zen-Conding PHP Conference 2013 - Fast Coding
  • 31. Root / Plugins PHP Conference 2013 - Fast Coding
  • 32. Root / Plugins Gist Criando um Gist de forma Rápida com Sublime Text 3 PHP Conference 2013 - Fast Coding
  • 33. Root / Plugins Gist Criando um Gist de forma Rápida com PhpStorm 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
  • 36. Root / Funções Nativas ARRAY_COMBINE(); <?php $clienteAtributos = [ "nome“ , "cidade“ , "telefone“ ]; $linhaExportacao = "daniel;porto alegre;51 3333.3333"; $arrayCliente = array_combine($clienteAtributos, explode(";“,$linhaExportacao ) ); print_r( $arrayCliente ); # Array ( # [nome] => daniel # [cidade] => porto alegre # [telefone] => 51 3333.3333 # ) ?> PHP Conference 2013 - Fast Coding
  • 37. Root / Funções Nativas ARRAY_MAP(); <?php function correcaoMaiusculas( $texto ) { return ucwords( strtolower( $texto ) ); } $arrayCliente = [ "DANIEL“ , "Jose“ , "paulo“ , “gabriel FERREIRA“ ]; $arrayCliente = array_map( 'correcaoMaiusculas‘ , $arrayCliente); print_r( $arrayCliente ); # Array ( # [0] => Daniel # [1] => Jose # [2] => Paulo # [3] => Gabriel Ferreira #) ?> 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
  • 40. Root / Composer Composer PHP Conference 2013 - Fast Coding
  • 41. • Eclipse PDT - http://www.zend.com/en/company/community/pdt/ • Eclipse PHP Unit - http://blog.loftdigital.com/running-phpunit-tests-in-eclipse-pdt • Eclipse Egit - http://marketplace.eclipse.org/content/egit-git-team-provider • Eclipse SVN - http://marketplace.eclipse.org/content/subclipse • PHP Storm 7 - http://www.jetbrains.com/phpstorm/ • Vagrant - http://www.vagrantup.com/ • Notepad++ - http://notepad-plus-plus.org/ • Notepad++ Emmet - https://github.com/emmetio/npp#readme • Sublime Text - http://www.sublimetext.com/ • Sublime Text 2 Documentação - http://www.sublimetext.com/docs/2/ • Sublime Text 3 Documentação - http://www.sublimetext.com/docs/3/ • Microframeworks – Slim – http://slimframework.com/ • Microframeworks – Silex - http://silex.sensiolabs.org/ • Microframeworks – GluePHP - http://gluephp.com/ • Microframeworks – Limonade - http://limonade-php.github.io/ • Microframeworks – Flight - http://flightphp.com/ • Microframeworks – Respect - http://respect.li/ • Emmet - http://docs.emmet.io • Composer - http://getcomposer.org/ PHP Conference 2013 - Fast Coding