Essa palestra foi sobre o livro Clean Code: A Handbook of Agile Software Craftsmanship do Robertin Martin, mais conhecido como Uncle Bob, com o próprio. Já leram o livro? Esse aqui:
Não???? Corre! Essa é uma das leituras obrigatórias pra quem quer mexer com desenvolvimento. Devia ser leitura obrigatória do vestibular, assim a gente já entrava sabendo!rs
Eu só fui ler no segundo ano da faculdade e me arrependi, podia ter lido antes, pouparia meus monitores de programação de bastante sofrimento, se bem que eles merecem! rs
Bom…eu já tinha lido o livro, mas queria conhecer pessoalmente Uncle Bob. Não perdi tempo e logo me candidatei para ser voluntária na sala dele. Sim, quase morri pra me apresentar pra ele! Olha a figura aí:
Sobre a palestra o que eu tenho a dizer é que foi superficial, talvez porque eu já tenha lido o livro, mas achei que ele podia ter falado muitas outras coisas, mas não posso deixar de dizer que foi uma grande palestra ao mesmo tempo! Essa é um daqueles caras que você não consegue tirar o olho sabe!? Tudo que ele fala faz sentido. Fica na cara que ele sabe muito do que está falando.
Vamos para os detalhes da palestra…
Ele começou com a famosa figura que eu já coloquei aqui no blog e está na primeira página do livro dele, a WTFs/minute. Essa aqui ó:
Depois trabalhou em cima de um codigo beeeem ruim, duas classes e 2.000 linhas! Horrível! Esse código chegou nas mãos dele pois a empresa não conseguia mais fazer qualquer mudança! O sistema não podia mais rodar…e sobre esse cenário ele fala: “The mess grow so big and so deep and so tall, they can not clean it up.There is no way at all”, ou seja, a bagunça fica tão grande, tão profunda que é impossível lidar com ela. Ele chega a ser radical de vez enquando..ele defende que uma classe não PODE ter mais de 100 linhas, não DEVE ter mais de 20 linhas e TEM idealmente de 4 a 6 linhas! = O
Ele tem um conceito que chama ROLLER-COASTER productive. A idéia é que no início temos um projeto pequeno e ás vezes até um projeto novo, então é fácil produzir, alterar o código, mas com o passar do tempo, se o código estiver ruim, fica impossível manter a produtividade…ela cai vertiginosamente, como uma montanha-russa! Hãm Hãm, entenderam o trocadilho???
Beleza! Mas e aí..o que é um clean code afinal??
Aí vão as definições dos bã-bã-bã da tecnologia, pode apostar que eles sabem do que estão falando:
“Clean code does one thing well” Bjarne Stroustrup
” Clean code is simple and direct. Clean code reads like well-written prose” Grady Booch
“Clean Code always looks like it was written by someone who cares” Michael Feathers
” You know you are working on clean code when each routine you read turns out to be pretty much what you expected” Ward Cunningham
Ele conclui dizendo que a missão de um bom programador é se COMUNICAR com outros programadores e não simplesmente fazer um código que funcione…para isso você precisa ser polido e escrever um código limpo, com funções que fazem apenas uma coisa. Ele deixa claro que o problema não está em códigos grandes, só precisamos arrumá-lo, por exemplo fazer váááárias pequenas funções no lugar de uma única função enorme!
Quem quiser mais informação entra no site oficial dele: http://www.cleancode.com
É isso…
beijos!
PS.: Já estão seguindo nosso Tumblr? E o Twitter? E já curtiram a fanpage no Facebook? E no Google+? AAAA então tá bom! : )