ti-enxame.com

Quais são os pontos principais do Código Completo?

Ouvi muita gente mencionar Code Complete como um livro que vale a pena ler. Infelizmente, estou tão ocupado que não tenho tempo para lê-lo, então alguém pode me dizer quais são os pontos principais do livro?

74
Casebash

O Code Complete trata do artesanato de software; é um livro de nível avançado para iniciantes/intermediários, escrito para o programador ativo, mas ainda assim seria muito útil para alguém que está programando há pelo menos um ano.

Assim, os pontos principais do Code Complete (2ª ed.) Estão resumidos em seu capítulo 34, Temas no artesanato de software. Como parafraseado em minhas anotações:

  1. Conquiste a complexidade : reduza a carga cognitiva em sua mente por meio de disciplina, convenções e abstração.
  2. Escolha seu processo : tenha consciência da qualidade desde o início (requisitos) até o final (implantação) e além (manutenção).
  3. Escreva programas para pessoas em primeiro lugar, computadores em segundo : a legibilidade do código é extremamente importante para compreensão, capacidade de revisão, taxa de erros, correção de erros, modificabilidade e o consequente tempo de desenvolvimento e qualidade.
  4. Programe para o seu idioma, não dentro dele : pense no quê? e porque? antes do Como?
  5. Concentre sua atenção com a ajuda de convenções : as convenções gerenciam a complexidade, fornecendo estrutura onde é necessário, para que o recurso final - sua atenção - possa ser usado com eficácia .
  6. Programa em termos do domínio do problema : trabalhe no nível mais alto possível de abstração; o código de nível superior deve descrever o problema que está sendo resolvido. Distinga o nível do SO, o nível da linguagem de programação, as estruturas de implementação de baixo nível, os termos de domínio de problemas de baixo nível e, finalmente, os termos de domínio de problemas de alto nível que fariam sentido total para o usuário (sem codificador).
  7. Cuidado com as rochas que caem : como a programação mescla arte e ciência, um bom julgamento é vital, incluindo prestar atenção aos sinais de alerta.
  8. Repita, Repetidamente, Novamente e Novamente : itere requisitos, design, estimativas, código, ajuste de código.
  9. Você renderizará software e religião em separado : seja eclético e esteja disposto a experimentar. Não seja um fanático inflexível, pois impede a curiosidade e o aprendizado. Vá além de ter apenas um martelo na sua caixa de ferramentas.

Mas o mais importante está no Capítulo 33, Caráter pessoal : depois de conscientemente procurar melhorar como codificador, você pode e deseja. A maneira mais rápida de fazer isso é assumir as atitudes de dos codificadores mestres (humildade, curiosidade, honestidade intelectual, disciplina, criatividade), enquanto também pratica seus hábitos (muitos bons hábitos estão listados no livro, por exemplo, escolhendo bons nomes de variáveis ​​/ valores).

Além disso, o livro deixa claro que a diferença entre média e excelente em software é imensa ; esse fato por si só deve levar o codificador consciente a melhorar a si mesmo.

Isso é o que falta; a versão longa está no livro. :) Também posso enviar minhas notas não tão longas e não tão curtas, se você quiser mais detalhes. Mas o livro certamente é dinheiro e tempo bem gastos, mesmo que o estilo de escrever seja cansativo às vezes.

Além do código completo, eu recomendo The Pragmatic Programmer . É para programadores de nível intermediário, bem escritos e uma ótima mistura de conselhos de alto, médio e baixo nível.

86
limist

É um livro intermediário, um conjunto de melhores práticas de desenvolvimento de software.

Se você é um programador iniciante, não entenderá muito do material e, se tiver experiência, o livro confirmará apenas o que você já sabe. Conseqüentemente, o livro pode ser de grande valia para programadores intermediários, que já possuem um pouco de conhecimento de programação, mas precisam de um livro de práticas recomendadas para combinar tudo isso.

Várias páginas são gastas em como formatar blocos de código e os méritos relativos de cada abordagem. Pessoalmente, acho que o grande debate sobre onde colocar o seu aparelho cacheado acabou. (ou é?)

18
Robert Harvey