Asdasdsad

Disponível somente no TrabalhosFeitos
  • Páginas : 5 (1061 palavras )
  • Download(s) : 0
  • Publicado : 15 de janeiro de 2013
Ler documento completo
Amostra do texto
DI RETO DAS TRI N CHEI RAS

B O A S E M Á S P RÁ T I CA S D E A P LI CA ÇÕ E S RU B Y E M
A M B I E NT E S CO RP O RA T I V O S
B OAS

DAN I L O SATO
Lead Consultant
Líder Técnico
Arquiteto
DevOps
Coach
Treinador
SP, Londres, Chicago
@dtsato

CARL OS V I L L EL A
Lead Consultant
Líder Técnico
Velho Chato
Arquiteto
DevOps
Inovação Contínua
SP, Londres, Porto Alegre
@cv ENTERPRISE
I N -TER-PRÁI -Z I
Uma empresa que não é uma start-up, seguindo processos que não são
Lean.
Mas você tem contas pra pagar e vai trabalhar lá.

AU TÓPSI AS
Atropelamento por bolas de lama
Montanhas de pepinos
Morte por # f e
idf
Asfixia por DBAs
Estupro remoto de servidores
Alucinações e flashbacks do J2EE

DEPLOYM ENT PIPELINE

EX PL OSÃO DE CÓDI G O
“Por trás detoda má ideia tem sempre uma boa
intenção”

E XP LO S Ã O D E CÓ D I GO
Abuso de monkey-patching
Forks pessoais
Deixar upgrades para depois
Forçar o Rails além do seu limite
The Rails Way is the only way

E XP LO S Ã O D E CÓ D I GO
Teste seus monkey-patches
Extraia gems para facilitar a manutenção
Pense além do model/view/controller/helper
Limite o número de pontos de integraçãoBom design OO: crie abstrações úteis
Algo entre F o
oe
AsrcBsFoigeoFcoyenml
btataeoSnltnatrBaIp

E XP LO S Ã O D E CÓ D I GO

ESTRATÉG I AS DE TESTE
Cnro Uurofzlgncmscso
eái: sái a oi o ues
Dd qeetun pgn d lgn
ao u
so a áia e oi
Qad e penh ocmo"oed uuro cm"sr
uno u reco
ap nm e sái" o ue"
Ee penh ocmo"eh"cm"3rt
u reco
ap sna o sc3"
Ee cion bto"oi"
u lc
o oã Lgn
Etoe vuprahmpg cmuamnae d scso"oi eeud cms
nã u o aa
oeae o m esgm e ues
Lgn ftao o
ues"
cso

E ST RA T É GI A S D E T E ST E
Gerenciar teste funcionais por história
Abuso no uso de mocks
Re-testar o framework
Mockar o objeto sendo testado
Ter um time separado cuidando dos testes
Investir em automação de teste de UI
Testes só rodam em um determinado ambiente

E ST RA T É GI A S D E T E STE
Testes funcionais de user journeys e não por história
Muito mais testes unitários do que testes funcionais
Todo mundo é dono dos testes
Código de teste também é código
Evite acoplar testes com um determinado ambiente

E ST RA T É GI A S D E T E ST E

RU BY EM M Ú L TI PL AS
PL ATAFORM AS
“ Ruby is highly portable: it is developed mostly on
GNU/Linux, but sort of works on many typesof
UNIX, Mac OS X, Windows 95/98/Me/NT/2000/XP,
DOS, BeOS, OS/2, etc. ”

RU B Y E M M Ú LT I P LA S P LA T A F O RM A S
Desenvolver em ambiente/plataforma diferente
Usar infra diferente (BD, jobs, in-memory)
Falta de cuidado com gems nativas
Múltiplos encodings
Linebreak/whitespace wars
RVM em produção

RU B Y E M M Ú LT I P LA S P LA T A F O RM A S
Bundler
Vendorize tudo
JRubyCrie ambientes parecidos com produção
UTF-8 no stack inteiro
Você não quer rodar GCC em produção, IT Ops agradece
vgatris
arn_al
Mingle , Go : JRuby e pacotes para diversos SOs

RU B Y E M M Ú LT I P LA S P LA T A F O RM A S

L I DAN DO COM DADOS

L I D A ND O CO M D A D O S
Forçar ActiveRecord num schema que você não controla
Usar vários BDs na mesma aplicação
SQLServer
Usar NoSQLcomo RDBMS

L I D A ND O CO M D A D O S
Divida em aplicações/serviços menores
Defina quem tem posse dos dados
Representantes do negócio em decisões arquiteturais
Considere usar processos ETL
Teste!

L I D A ND O CO M D A D O S

CAPI STRAN O
DSL para executar sequências de comandos em máquinas remotas de
acordo com roles.
Amplamente utilizado para fazer deployment de aplicaçõesRails.
#cppouto dpo mse
a rdcin ely atr

CA P I S T RA NO
Multiplexação de conexões SSH
Referenciar servidores através de papéis (roles)
DSL Ruby, boa integração com Rake, etc.
Fácil de automatizar deployments e trocar receitas

CA P I S T RA NO

CA P I S T RA NO
Encoraja deployments…
…fora da integração contínua
…direto do controle de versão
Branches para ajustes de produção...
tracking img