A Arte de Escrever Programas LegÃveis Na Visão de Um Dev Android
(2588) (3)
CategoriasAndroid, Design, Protótipo
AutorVinÃcius Thiengo
VÃdeo aulas186
Tempo15 horas
ExercÃciosSim
CertificadoSim
CategoriaEngenharia de Software
Autor(es)Vlad Khononov
EditoraAlta Books
Edição1ª
Ano2024
Páginas320
Tudo bem?
Já inicio informando que você não, não deve se preocupar com os trechos de código em C++ ou em JavaScript apresentados no livro "A Arte de Escrever Programas Legíveis".
Mesmo assumindo que você provavelmente não programa aplicativos Android com nenhuma dessas duas tecnologias.
Acredite: o uso dessas linguagens não atrapalha em nada no entendimento dos conceitos apresentados.
Nesta resenha vou mostrar a você, desenvolvedor Android, como ainda vale muito a pena investir em leituras como a do livro "A Arte de Escrever Programas Legíveis".
Principalmente se você busca profundidade em performance e em carreira.
E se você por um acaso não é desenvolvedor Android e mesmo assim anda "namorando" a possibilidade de investir nesta leitura… continue, certamente está resenha será também útil a ti.
O título "A Arte de Escrever Programas Legíveis" não é uma novidade entre os desenvolvedores, até porque foi lançado em 2012.
Mas sem sombra de dúvidas é um daqueles livros que podemos seguramente classificar como atemporal.
Obviamente que sempre tem uma coisa ou outra que está depreciada. Mas o conteúdo do livro, em sua maioria, é ainda muito útil.
Aliás, todos os livros de Engenharia de Software (o assunto "programas legíveis" é parte da Engenharia de Software)…
… todos os artifícios (livros, cursos, podcasts, …) de Engenharia de Software são atemporais no desenvolvimento de apps Android.
Mas eu concordo com você que muito disso é devido ao ainda domínio da orientação a objetos no contexto mobile.
Domínio que, a principio, não apresenta sinais de que vai perder o "trono" entre os paradigmas de programação mais utilizados.
Agora falando especificamente sobre o livro "A Arte de Escrever Programas Legíveis"…
… a proposta deste título é sim mostrar ao leitor como escrever códigos de maneira que outros desenvolvedores, e até mesmo o programador que criou os algoritmos, consigam seguramente manter o projeto sem problemas de leitura de scripts.
Aliás, algo que é muito enfatizado tanto neste livro quanto no popular Código Limpo de Robert Martin:
A maior parte do tempo e dinheiro investidos em softwares é na leitura deles. Mesmo os "adolescentes" e normalmente menores códigos de projetos Android.
Só que diferente e totalmente na contra-mão do título "Código Limpo", aqui os autores Dustin e Trevor, ambos Engenheiros de Software no Vale do Silício, também têm conteúdos direcionados somente a comentários em código fonte.
Algo que eu mesmo não incentivo. Pois sou da “escola" de que se seu algoritmo precisa de comentário, então ele está mal escrito… ao menos mal rotulado em classes, métodos e variáveis.
Mas Thiengo, o projeto Android de app framework para YouTubers está repleto de comentários?
Sim.
Eu escolhi isso, pois quis algo bem completo em relação ao que é disponibilizado como framework para a comunidade Android.
Mas normalmente eu somente comento quando é algo solicitado pelo contratante.
De qualquer forma, como dica inteligente sobre o assunto "comentários em código": não seja radical igual a mim.
Pois já a algum tempo eu consegui internalizar que tem sim partes do código que merecem ser comentadas, principalmente aquelas com inúmeros blocos condicionais ou com loops do…while().
Aliás, antes que eu me esqueça:
Se você não tiver outra saída e realmente tiver que utilizar o do…while() em seus códigos Android.
Então POR FAVOR, informe em comentário o porquê da necessidade de executar ao menos a primeira vez o algoritmo sem avaliação condicional (exatamente o que o do…while() faz).
Isso facilitará consideravelmente o entendimento de todo o trecho de código que utiliza esse tipo de loop.
Voltando ao livro…
… além dos capítulos que abordam técnicas de comentários em código, o título tem muitas outras partes de destaque:
- Como melhor rotular classes, métodos e variáveis;
- Como diminuir o tamanho dos métodos dividindo-os primeiro por blocos e depois em novos métodos;
- Como melhorar a legibilidade do código com variáveis de explicação e de resumo (confesso que isso foi algo que me surpreendeu muito devido à facilidade de aplicação e ao ganho em leitura de código);
- A importância de diminuir o escopo de membros de classe (aqui, de maneira implícita, os autores fazem “apologia" ao uso do popular padrão Injeção de Dependência);
- Como melhorar a nomenclatura das classes e funções de testes (novamente, de maneira implícita, promovendo o uso do TDD);
- A diferença entre "estética" e "design" de um projeto de software;
- Como transformar pensamentos em códigos (é sério);
- … entre outros.
Um detalhe:
Como o livro é de 2012, quando em capítulos sobre "Como rotular classes, métodos e variáveis", os autores não vêem problemas no uso de rótulos com underline "_".
Minha opinião sincera sobre isso é que: no contexto de desenvolvimento de aplicativos Android somente utilize underline como parte dos rótulos de membros que são constantes (const val). Todo o restante deve ser no estilo CaMeLcAsE.
Próximo do fim desta resenha preciso sim elogiar a maneira como todo o conteúdo é apresentado no livro, que tem apenas 211 páginas.
Os capítulos são curtos e bem fáceis de ler, entender. Mesmo com os códigos sendo apresentados em sintaxe C++ ou JavaScript.
Mas já lhe aviso que eu não recomendo este título para aqueles que estão aprendendo a programar, ou seja, estão iniciando, estão no "Hello World".
Pois assuntos como O(n), O(n^2) e consumo de memória serão citados e isso pode deixar aqueles completos iniciantes totalmente desmotivados.
De qualquer forma, se você é um iniciante em desenvolvimento Android (ou em programação no geral) e quer investir no título mesmo assim, então keep going.
Pois ao menos os capítulos sobre comentários e rotulação de classes e membros serão de grande utilidade.
Então é isso.
Se você busca profundidade em seus conhecimentos e carreira como developer, então recomendo sim a leitura do livro.
Tranquilamente ele pode ser aquele livro de leitura rápida antes de dormir ou logo quando você acorda.
Se houverem dúvidas sobre o título ou se você quiser recomendar algum outro… deixe logo abaixo nos comentários que logo eu lhe retorno.
Não esqueça de conhecer também o meu canal no YouTube (caso você ainda não o conheça) e...
... não deixe de se inscrever na 📩 lista de e-mails para também garantir o recebimento de conteúdos exclusivos sobre desenvolvimento Android e codificação limpa.
Abraço.
Comentários Facebook