SlideShare una empresa de Scribd logo
1 de 50
Descargar para leer sin conexión
Melhores (ou boas) práticas
no desenvolvimento para
Magento
Ricardo Martins
http://ricardomartins.net.br
Meet Magento 2013 – Brasil, São Paulo
Sobre
•  Desenvolvendo em PHP/Web desde 2005
•  Com Magento desde 2011
•  Na e-smart desde o último Meet Magento
Escolha certa
• 
• 
• 
• 

Infinitas possibilidades e oportunidades
Comunidade gigante
Maior plataforma de e-commerce
Eventos legais ao redor do mundo
Imagine 2013
Las Vegas, NV
Magento Imagine – Las Vegas 2013
Magento Imagine – Las Vegas 2013
Magento Imagine – Las Vegas 2013
Vamos ao que interessa…
Melhores práticas

Boas práticas

Pra quem?
Se tudo correr bem...
• 
• 
• 
• 

Criação de temas e pacotes
Criação e instalação de módulos
Versionamento e deploy
Ambiente de desenvolvimento e
playground
•  Ferramentas que nos ajudam
Temas e Pacotes
O Começo de toda loja
Pacote / Package

Tema / Theme
Magento theme fall-back a partir do 1.4

Extraído do livro Magento Design Guide
A base de tudo

Package: base / Theme: default
Blank

Package: default/ Theme: blank
Os temas nativos
•  default/blank
•  default/default
Apenas com alterações de css no package
base. Os arquivos de template vem do
base/default.
•  default/modern
•  default/iphone
Criando nosso pacote
•  Crie seu próprio package
•  Com seu tema default
•  Quanto menos arquivos de templates
sobrescrever, melhor
Criação e Instalação de
Módulos
Cuidados
• 
• 
• 
• 

Módulos criptografados
Override app/code/core
Override base/default
Layout XML e Templates em default/
default ao invés de base/default
•  Override de controllers e classes
– Tem como usar observer no lugar?

•  SQL Install e scripts de setup
e o maior de todos os
cuidados..
EM
NÃO
TESTE
PRODUÇÃO
O Git ajuda nessas horas...
$ git status
Versionamento e Deploy
Fonte: http://www.sameerhalai.com/blog/quick-git-workflow-for-small-teams/
Git com Jira
Ambiente de Desenvolvimento
e
Playground
IDE‘s
IDE
•  Tem programa legalzinho pra programar
pra Magento?
•  Tem!
•  Qual?
•  Aquele que você mais gosta!
SublimeText2

sublimetext.com
PhpStorm + Magicento

http://www.jetbrains.com/phpstorm/ e http://magicento.com/
Ambiente de desenvolvimento
•  Erros habilitados
– php.ini > error_reporting / display_errors
– MAGE_IS_DEVELOPER_MODE
no .htaccess

•  Recursos limitados
•  Versão do PHP e MySQL
– Sempre a mais recente? Nem sempre.
Playground

•  Lugar pra você fazer
experimentos
•  Se divertir com os
módulos experimentais
•  Limite os acessos
•  Sample data
•  Facilite o rollback
– Git
– Scripts de restore
Script simples de rollback
Reset.sh ou Reset.bat
Ferramentas
Minhas favoritas
•  Magneto Debug Toolbar
•  Wiz
•  Modgit / modman
Magneto Debug

http://goo.gl/XQ30WM
Wiz

https://github.com/classyllama/Wiz
Modgit/Modman

https://github.com/jreinke/modgit
Tem mais…
•  n98-magerun (Symfony)
•  Module Creator
n98-magerun

https://github.com/netz98/n98-magerun
Module Creator

www.silksoftware.com/magento-module-creator/
Tem mais…
•  Correios e auto-complete de ceps
– Frete.co (www.frete.co)
•  Alternativa com alto SLA para calculo de fretes
•  Base (realmente) completa de endereços
•  Só precisa mudar a URL do webservice
Frete.co
Sem Frete.co

Com Frete.co

Retorno com os mesmos elementos:
{"resultado":"1","resultado_txt":"sucesso - cep
completo","uf":"SP","cidade":"Santos","bairro":"Embar
u00e9","tipo_logradouro":"Rua","logradouro":"Edu Brancato"}
<?php exit();
Muito Obrigado
Contatos
ricardo@ricardomartins.net.br
http://ricardomartins.net.br/
github.com/r-martins
Apresentação
Disponível em
http://slideshare.net/ricardo.martins

Más contenido relacionado

La actualidad más candente

Seja um júnior não seja um sobrinho
Seja um júnior não seja um sobrinhoSeja um júnior não seja um sobrinho
Seja um júnior não seja um sobrinhoAlexandre Andrade
 
WordCamp Floripa 2021 - Gabriel Cano - Sage Framework – O melhor do PHP em um...
WordCamp Floripa 2021 - Gabriel Cano - Sage Framework – O melhor do PHP em um...WordCamp Floripa 2021 - Gabriel Cano - Sage Framework – O melhor do PHP em um...
WordCamp Floripa 2021 - Gabriel Cano - Sage Framework – O melhor do PHP em um...WordCamp Floripa
 
POG - Definição e Conceitos
POG - Definição e ConceitosPOG - Definição e Conceitos
POG - Definição e ConceitosLuciano Reis
 
Quero me tornar desenvolvedor php. Como me preparar para entrar e me manter n...
Quero me tornar desenvolvedor php. Como me preparar para entrar e me manter n...Quero me tornar desenvolvedor php. Como me preparar para entrar e me manter n...
Quero me tornar desenvolvedor php. Como me preparar para entrar e me manter n...Leonam Pereira Dias
 
Oficina de Blog para iniciantes
Oficina de Blog para iniciantesOficina de Blog para iniciantes
Oficina de Blog para inicianteslairacarvalho
 
Web development - Como criar a web
Web development  - Como criar a webWeb development  - Como criar a web
Web development - Como criar a webHerson Leite
 
Boas Práticas de Programação
Boas Práticas de ProgramaçãoBoas Práticas de Programação
Boas Práticas de ProgramaçãoCOTIC-PROEG (UFPA)
 
Quebrando paradigmas com wordpress
Quebrando paradigmas com wordpressQuebrando paradigmas com wordpress
Quebrando paradigmas com wordpressPablo Ribeiro
 
Você não faz qualidade em Software - TDC Florianópolis 2020
Você não faz qualidade em Software - TDC Florianópolis 2020Você não faz qualidade em Software - TDC Florianópolis 2020
Você não faz qualidade em Software - TDC Florianópolis 2020Wagner Mendes Voltz Fusca
 
Programar != desenvolver software
Programar != desenvolver softwareProgramar != desenvolver software
Programar != desenvolver softwareElton Minetto
 
Simple singleton pattern
Simple singleton patternSimple singleton pattern
Simple singleton patternDennis Calazans
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...tdc-globalcode
 
Workflow com Google Web Starter Kit
Workflow com Google Web Starter KitWorkflow com Google Web Starter Kit
Workflow com Google Web Starter KitEmílio Faria
 

La actualidad más candente (20)

Case Editora Abril
Case Editora AbrilCase Editora Abril
Case Editora Abril
 
Seja um júnior não seja um sobrinho
Seja um júnior não seja um sobrinhoSeja um júnior não seja um sobrinho
Seja um júnior não seja um sobrinho
 
WordCamp Floripa 2021 - Gabriel Cano - Sage Framework – O melhor do PHP em um...
WordCamp Floripa 2021 - Gabriel Cano - Sage Framework – O melhor do PHP em um...WordCamp Floripa 2021 - Gabriel Cano - Sage Framework – O melhor do PHP em um...
WordCamp Floripa 2021 - Gabriel Cano - Sage Framework – O melhor do PHP em um...
 
POG - Definição e Conceitos
POG - Definição e ConceitosPOG - Definição e Conceitos
POG - Definição e Conceitos
 
Quero me tornar desenvolvedor php. Como me preparar para entrar e me manter n...
Quero me tornar desenvolvedor php. Como me preparar para entrar e me manter n...Quero me tornar desenvolvedor php. Como me preparar para entrar e me manter n...
Quero me tornar desenvolvedor php. Como me preparar para entrar e me manter n...
 
Oficina de Blog para iniciantes
Oficina de Blog para iniciantesOficina de Blog para iniciantes
Oficina de Blog para iniciantes
 
Web development - Como criar a web
Web development  - Como criar a webWeb development  - Como criar a web
Web development - Como criar a web
 
Boas Práticas de Programação
Boas Práticas de ProgramaçãoBoas Práticas de Programação
Boas Práticas de Programação
 
#Qualidade decodigo
#Qualidade decodigo#Qualidade decodigo
#Qualidade decodigo
 
Quebrando paradigmas com wordpress
Quebrando paradigmas com wordpressQuebrando paradigmas com wordpress
Quebrando paradigmas com wordpress
 
Onde posso ir como “dev”
Onde posso ir como “dev”Onde posso ir como “dev”
Onde posso ir como “dev”
 
Você não faz qualidade em Software - TDC Florianópolis 2020
Você não faz qualidade em Software - TDC Florianópolis 2020Você não faz qualidade em Software - TDC Florianópolis 2020
Você não faz qualidade em Software - TDC Florianópolis 2020
 
Piadas de CSS e Javascript
Piadas de CSS e JavascriptPiadas de CSS e Javascript
Piadas de CSS e Javascript
 
Programar != desenvolver software
Programar != desenvolver softwareProgramar != desenvolver software
Programar != desenvolver software
 
A saga do desenvolvedor java
A saga do desenvolvedor javaA saga do desenvolvedor java
A saga do desenvolvedor java
 
Simple singleton pattern
Simple singleton patternSimple singleton pattern
Simple singleton pattern
 
Seu codigo fede e voce nem sabia - 2020
Seu codigo fede e voce nem sabia - 2020Seu codigo fede e voce nem sabia - 2020
Seu codigo fede e voce nem sabia - 2020
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
 
Criando sua stack de deploy php com git, jenkins e ansible
Criando sua stack de deploy php com git, jenkins e ansibleCriando sua stack de deploy php com git, jenkins e ansible
Criando sua stack de deploy php com git, jenkins e ansible
 
Workflow com Google Web Starter Kit
Workflow com Google Web Starter KitWorkflow com Google Web Starter Kit
Workflow com Google Web Starter Kit
 

Similar a Melhores praticas no desenvolvimento magento

Desenvolvendo para magento - primeiros passos
Desenvolvendo para magento - primeiros passosDesenvolvendo para magento - primeiros passos
Desenvolvendo para magento - primeiros passosRicardo Martins
 
Carreira de Desenvolvimento
Carreira de DesenvolvimentoCarreira de Desenvolvimento
Carreira de DesenvolvimentoAlvaro Viebrantz
 
Arteccom Workshop Magento
Arteccom Workshop MagentoArteccom Workshop Magento
Arteccom Workshop MagentoThiago Verly
 
Magento Gerencimento e Customização de Temas
Magento Gerencimento e Customização de TemasMagento Gerencimento e Customização de Temas
Magento Gerencimento e Customização de TemasVanessa Me Tonini
 
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 Durotdc-globalcode
 
TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...
TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...
TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...tdc-globalcode
 
Ferramentas e bibliotecas que você deveria estar utilizando - Desenvolvimento...
Ferramentas e bibliotecas que você deveria estar utilizando - Desenvolvimento...Ferramentas e bibliotecas que você deveria estar utilizando - Desenvolvimento...
Ferramentas e bibliotecas que você deveria estar utilizando - Desenvolvimento...Max Claus Nunes
 
Organizando a casa. o front end do jeitinho que a mamãe gosta
Organizando a casa. o front end do jeitinho que a mamãe gostaOrganizando a casa. o front end do jeitinho que a mamãe gosta
Organizando a casa. o front end do jeitinho que a mamãe gostaJohnathan Cardoso
 
Distribua seu código
Distribua seu códigoDistribua seu código
Distribua seu códigoThiago Paes
 
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 FrameworkFlávio Lisboa
 
Python mudando o modo de desenvolver para a internet
Python mudando o modo de desenvolver para a internetPython mudando o modo de desenvolver para a internet
Python mudando o modo de desenvolver para a internetMarcos Petry
 
Python mudando o modo de desenvolver para a web - Marcos Daniel Petry
Python mudando o modo de desenvolver para a web  - Marcos Daniel PetryPython mudando o modo de desenvolver para a web  - Marcos Daniel Petry
Python mudando o modo de desenvolver para a web - Marcos Daniel PetryTchelinux
 

Similar a Melhores praticas no desenvolvimento magento (20)

Desenvolvendo para magento - primeiros passos
Desenvolvendo para magento - primeiros passosDesenvolvendo para magento - primeiros passos
Desenvolvendo para magento - primeiros passos
 
Magento: Mitos vs Vantagens
Magento: Mitos vs VantagensMagento: Mitos vs Vantagens
Magento: Mitos vs Vantagens
 
Carreira de Desenvolvimento
Carreira de DesenvolvimentoCarreira de Desenvolvimento
Carreira de Desenvolvimento
 
Arteccom Workshop Magento
Arteccom Workshop MagentoArteccom Workshop Magento
Arteccom Workshop Magento
 
Magento Gerencimento e Customização de Temas
Magento Gerencimento e Customização de TemasMagento Gerencimento e Customização de Temas
Magento Gerencimento e Customização de Temas
 
PHP Tools for Fast coding
PHP Tools for Fast codingPHP Tools for Fast coding
PHP Tools for Fast coding
 
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
 
TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...
TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...
TDC2018SP | Trilha Modern Web - Blazor - C# rodando no navegador padrao, sem ...
 
Oficinas startup
Oficinas   startupOficinas   startup
Oficinas startup
 
Ferramentas e bibliotecas que você deveria estar utilizando - Desenvolvimento...
Ferramentas e bibliotecas que você deveria estar utilizando - Desenvolvimento...Ferramentas e bibliotecas que você deveria estar utilizando - Desenvolvimento...
Ferramentas e bibliotecas que você deveria estar utilizando - Desenvolvimento...
 
Organizando a casa. o front end do jeitinho que a mamãe gosta
Organizando a casa. o front end do jeitinho que a mamãe gostaOrganizando a casa. o front end do jeitinho que a mamãe gosta
Organizando a casa. o front end do jeitinho que a mamãe gosta
 
Webinar Magento Commerce
Webinar Magento Commerce Webinar Magento Commerce
Webinar Magento Commerce
 
CMS em PHP: essa briga ainda existe?
CMS em PHP: essa briga ainda existe?CMS em PHP: essa briga ainda existe?
CMS em PHP: essa briga ainda existe?
 
Web open source
Web open sourceWeb open source
Web open source
 
Distribua seu código
Distribua seu códigoDistribua seu código
Distribua seu código
 
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
 
Python mudando o modo de desenvolver para a internet
Python mudando o modo de desenvolver para a internetPython mudando o modo de desenvolver para a internet
Python mudando o modo de desenvolver para a internet
 
Python mudando o modo de desenvolver para a web - Marcos Daniel Petry
Python mudando o modo de desenvolver para a web  - Marcos Daniel PetryPython mudando o modo de desenvolver para a web  - Marcos Daniel Petry
Python mudando o modo de desenvolver para a web - Marcos Daniel Petry
 
Boas práticas Magento 2
Boas práticas Magento 2Boas práticas Magento 2
Boas práticas Magento 2
 

Último

Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfNatalia Granato
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 

Último (6)

Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 

Melhores praticas no desenvolvimento magento