Top Banner
Fast Coding Por Daniel Archer
41

PHP Tools for Fast coding

Aug 03, 2015

Download

Technology

Daniel Archer
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: PHP Tools for Fast coding

Fast Coding

Por Daniel Archer

Page 2: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

O que é programar em alta velocidade?

Page 3: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Usar o framework mais rápido do mercado!

O que é programar em alta velocidade?

Page 4: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Usar o framework mais rápido do mercado! Não

O que é programar em alta velocidade?

Page 5: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Saber usar as suas ferramentas!

Page 6: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Saber usar as suas ferramentas! ...?

Page 7: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Tópicos Abordados1. Ferramentas

1. IDEs (Integrated Development Enviroment)1. Eclipse PDT2. PHPStorm

2. Editores1. NotePad++2. Sublime Text 2 & 3

2. Frameworks1. Porque usar2. Vantagens dos micro-frameworks

3. Plugins1. Emmet2. Gist

4. Funções Nativas1. Strtotime / array_combine / array_map / glob / etc...

5. Design Patterns

Root / Sumário

Page 8: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

IDE

Ambiente de Desenvolvimento Integrado

(Temos tudo que você irá precisa!)

Root / Ferramentas

Page 9: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Eclipse PDT

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

Root / Ferramentas / IDE

Page 10: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

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, ...)

Root / Ferramentas / IDE

Page 11: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

PhpStorm

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

Root / Ferramentas / IDE

Page 12: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

PhpStorm

Funcionalidades

• Suporte PHP 5.5• Vagrant Nativo!• Correção de Sintaxe• “Jump to Function”• PHP Doc

• GIT• SVN• Suporte a Frameworks• Namespaces• ...

Root / Ferramentas / IDE

Page 13: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Procure na documentação!

Root / Ferramentas / IDE

Page 14: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Editores

Root / Ferramentas / Editores

Page 15: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Notepad++Root / Ferramentas / Editores

Page 16: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

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

Root / Ferramentas / Editores

Page 17: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Sublime Text 2 & 3Root / Ferramentas / Editores

Page 18: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Sublime Text 2 & 3

Prós• Leve / Multiuso• Package Control• Command Control• Integração com diversas

tecnologias atuais como:– GIT, SVN, PHP Unit

• Macro códigos• Interface de Busca incrível• Seleção multipla• Performance Fantástica• Muitas opções de customização

Contras• Excesso de plugins pode

causar transtornos• É necessário ser bom em

Street Fighter.

Root / Ferramentas / Editores

Page 19: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Frameworks!

Agora sim! Qual o melhor?

Root / Frameworks

Page 20: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Frameworks!

Nenhum :(

Root / Frameworks

Page 21: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Conceito

Framework é a abstração de um problema, um conjunto de soluções pré-estabelecidas para um domínio.

Root / Frameworks / Porque usar?

Page 22: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

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.

Root / Frameworks / Porque usar?

Page 23: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

...porém

Te fará escrever uma vez só.

Root / Frameworks / Porque usar?

Page 24: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Conheça plenamente o seu framework

O conhecimento te fará escrever muito melhor e mais rápido. Não

importa o framework.

Root / Frameworks / Porque usar?

Page 25: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

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.

Root / Frameworks / Porque usar?

Page 26: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Micro-Frameworks!

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

Root / Frameworks / Vantagens dos Micro-frameworks

Page 27: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Resolvem um problema específico

Algumas vezes, não precisamos de bolas de canhão, apenas uma boa

escopeta!

Root / Frameworks / Vantagens dos Micro-frameworks

Page 28: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

A não ser a espada do Cloud

Todos precisam da espada do Cloud

Root / Frameworks / Vantagens dos Micro-frameworks

Page 29: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

SlimSilex

GluePHPFlight

LimonadeRespect

... E muitos outros

Root / Frameworks / Vantagens dos Micro-frameworks

Page 30: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Emmet

Zen-Conding

Root / Plugins

Page 31: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Root / Plugins

Page 32: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Gist

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

Root / Plugins

Page 33: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Gist

Criando um Gist de forma Rápida com PhpStorm

Root / Plugins

Page 34: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

Funções Nativas

Sim, porque você pode aprender a programar mais rápido usando recursos da própria linguagem.

Root / Funções Nativas

Page 35: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

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”

Root / Funções Nativas

Page 36: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

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 # )?>

Root / Funções Nativas

Page 37: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

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# )?>

Root / Funções Nativas

Page 38: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

GLOB();

<?phpforeach ( 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]');?>

Root / Funções Nativas

Page 39: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

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…

Root / Funções Nativas

Page 40: PHP Tools for Fast coding

PHP Conference 2013 - Fast Coding

ComposerRoot / Composer

Page 41: PHP Tools for Fast coding

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/