1. O documento discute como construir aplicações confiantes através da remoção de "code smells" como métodos longos, excesso de condicionais e tratamento de nil;
2. É sugerido dividir métodos grandes em partes menores focadas em mensagens e papéis claros, ao invés de tipo de dados;
3. Tratamento de nil deve ser evitado através de conversões implícitas e explícitas de tipos ou pedindo permissão ao invés de tipo.
4. Esse é o livro que me inspirou a falar sobre isso. Eu
realmente sou uma entusiasta do Ruby e acredito que o
código não tem que trazer dor de cabeça pra gente, e sim
ser um meio pra chegarmos aonde queremos. O código
deveria passar confiança pra quem mantém ele, mas nem
sempre é assim
16. Photo by Annelies Geneyn on Unsplash
4 partes de um
método para contar
uma boa história
1. Coletar input
2. Realizar o trabalho
3. Entregar output
4. Lidar com falhas
23. Mensagens = Ações
#parse_legacy_purchase_records
for #each purchase record we want to:
use #email_address to #get_customer
use #product_id to #get_product
#add_purchased_product to the customer record
#log_successfull_import from the purchase record
43. 💣 causa desordem e tira linearidade no código
💣 se torna difícil de testar e manter
💣 embute responsabilidades e conhecimentos desnecessários
44. A solução é dividida em patterns estratégias específicas:
Coagir objetos para que façam o que precisa ser feito
Rejeitar valores inesperados de maneira mais eficiente
Substituir inputs inaceitáveis por valores válidos