Distribua	
  seu	
  código	
  
Thiago	
  Paes	
  –	
  PHPSC	
  Conference	
  -­‐	
  2013	
  
Thiago Paes
• 
• 
• 
• 

Evangelista	
  PHP	
  
Aficcionado	
  por	
  código	
  limpo	
  e	
  organizado	
  
Membro	
  do	
  PHP-­‐SC	
  
Programador	
  PHP	
  a	
  10+	
  
Porque distribuir?
O Código é da Empresa
•  A	
  empresa	
  usa	
  algum	
  código	
  de	
  
soHware	
  livre?	
  
•  O	
  componente	
  não	
  possui	
  a	
  regra	
  
de	
  negócio	
  da	
  empresa	
  
Meu código é ruim
•  Você	
  não	
  é	
  o	
  melhor,	
  esqueça	
  isso	
  
•  Muitas	
  cabeças	
  pensam	
  melhor	
  
que	
  uma,	
  ele	
  será	
  conTnuamente	
  
melhorado	
  
•  Trabalhando	
  em	
  equipe,	
  você	
  vai	
  
aprender	
  naturalmente	
  a	
  
melhorar	
  seu	
  código	
  
GITHUB
Github
Simples	
  
Rede	
  Social	
  incorporada	
  
Integrável	
  com	
  vários	
  serviços	
  
Plenamente	
  difundido	
  entre	
  a	
  
comunidade	
  
•  Apoio	
  de	
  grandes	
  empresas	
  
•  GráTs	
  para	
  repositórios	
  públicos	
  
•  Equipes	
  
• 
• 
• 
• 
BitBucket
BitBucket
Simples	
  
Repositórios	
  públicos	
  e	
  privados	
  
Suporte	
  a	
  Tmes	
  
Integrável	
  com	
  vários	
  serviços	
  
Rede	
  social	
  simples	
  
Pouco	
  conhecido	
  pela	
  
comunidade	
  
•  Suporte	
  a	
  GIT	
  e	
  Mercurial	
  
• 
• 
• 
• 
• 
• 
Pear
Pear
•  BurocráTco	
  para	
  publicar	
  
•  Muitos	
  pacotes	
  anTgos	
  e/ou	
  
abandonados	
  
•  SVN	
  apenas	
  
Google Code
Google Code
• 
• 
• 
• 
• 

GráTs	
  
Pouco	
  conhecido	
  
SVN,	
  Mercurial	
  e	
  Git	
  
Issue	
  Tracker	
  
Wiki	
  
Publiquei e agora?
Publica direito!
Não! Gerencie
dependências, gere
pacotes, torne fácil a
reutilização.
Composer + Packagist
Composer
Composer
•  Gerenciador	
  de	
  dependência	
  
•  Autoloader	
  padrão	
  
•  Fácil	
  de	
  configurar	
  
	
   { "require": {
"monolog/monolog": "1.2.*"
	
  
}
	
   }
	
  
•  Fácil	
  de	
  manter	
  
	
   composer.phar <install | update>
Packagist
Packagist
•  Repositório	
  de	
  pacotes	
  composer	
  
•  Simples	
  de	
  uTlizar	
  
•  Integrado	
  com	
  Github	
  
PHAR
Phar
•  PHP	
  Archive	
  
•  Empacota	
  toda	
  a	
  aplicação	
  ou	
  
módulo	
  em	
  um	
  único	
  pacote	
  
•  Pode	
  se	
  tornar	
  um	
  executável	
  
adicionando	
  um	
  “stub”	
  
•  Não	
  tão	
  simples	
  
Finalizando	
  
•  Código	
  não	
  se	
  mantém	
  sozinho	
  
•  Aprenda	
  a	
  gerenciar	
  o	
  repositório	
  (branches,	
  
versões,	
  tags)	
  
•  Documente	
  tudo,	
  algo	
  pode	
  ser	
  óbvio	
  apenas	
  
para	
  você	
  	
  
Dúvidas?	
  
Obrigado	
  
• 
• 
• 
• 

E-­‐mail:	
  mrprompt@gmail.com	
  
Twiher:	
  @mrprompt	
  
Blog:	
  hhp://mrprompt.blogspot.com	
  
Mais:	
  hhp://about.me/mrprompt	
  

Distribua seu código