Qual é a ordem correta para ler esses livros? [fechadas]

25

Sou desenvolvedor júnior de C #, aprendi em casa e agora consegui meu primeiro emprego :)

Eu quero comprar esses livros. Mas qual é a ordem correta para ler esses livros?

Código Completo: Um Manual Prático de Construção de Software

Código Limpo: Um Manual de Artesanato em Software Ágil

Programador Pragmático

Tarek Saied
fonte
6
Não há uma ordem correta (como disse @Oded). Você provavelmente irá lê-los (ou pelo menos partes deles) repetidamente. Portanto, escolha um, quebrar a tampa e digerir :)
Joel Etherton
8
A sabedoria convencional diz que você deve começar na primeira página e terminar na última página. ;)
vaughandroid
1
Não vejo motivo para votar.
Mmdemirbas 12/07/2012
+1 para uma boa selecção de livros certos para novas melhorias
EL Yusubov
Aqui está outro que você pode querer (muitos consideram a Bíblia em C # .NET): Pro C # 2010 e a plataforma .NET 4, quinta edição (eles podem até ter um para o .NET 5 e o VS 2012 em breve).
LinuxJul

Respostas:

44

Não há uma ordem "correta" para ler esses livros.

Cada um deles se concentra em diferentes aspectos da engenharia de software.

  • Código Limpo - concentra-se na codificação no pequeno. Como escrever classes e funções.
  • Código Completo - foca nos processos de engenharia de software.
  • Programador pragmático - se concentra em trabalhar em uma equipe que produz software.
Oded
fonte
7
@Downvoter - gostaria de comentar?
Oded
12

Parabéns por conseguir seu primeiro emprego! E você realmente fez boas escolhas de livros!

Esses livros são obras-primas para todo programador ler pelo menos uma vez.

Da minha experiência pessoal, aconselho a ler livros de forma intercambiável . É um fato que você pode ficar cansado / entediado de um livro, e mudar para um livro relacionado fará com que você se concentre novamente e, por trás da cena, seu cérebro começará a processar as informações. Assim, você pode se beneficiar ao máximo desse processo.

Edit: como mencionado no comentário, é uma solução meio multi-threading para aumentar a eficiência :)

No entanto, não aqueça demais . Ter mais de três livros pode ser difícil de lidar ao mesmo tempo.

EL Yusubov
fonte
8
Acho engraçado que a solução de um programador a um problema da vida real é a implementação de multithreading :)
Rotem
@ Rotem - A razão para isso é simples e muito parecida com um regex. Depois de iniciar essa tarefa, os problemas da sua vida real começam a parecer muito menos sérios ;-),
Joris Timmermans
4

Eu concordo com as respostas de "nenhuma ordem correta", mas vou oferecer uma rotação diferente ...

Iniciar e digerir completamente o código completo . É o livro base mais básico e abrangente. Gaste muito tempo lendo e relendo. Deve dar o máximo de retorno se você é iniciante.

Richard Morgan
fonte
2

Eu só li "Código Limpo", e foi muito bom. O tio Bob explica como se tornar um bom especialista em software e como escrever um código limpo que possa ser mantido mesmo em anos. Então você talvez deva ler este livro primeiro :-) (eu gostaria de ter lido antes).

Se você deseja obter uma visão ampliada (das dependências entre os módulos), também posso recomendar o seu código de conversão: http://www.cleancoders.com/

habakuk
fonte
1

Eu li Pragmatic Programmer e estou no processo de ler "Code Complete".

Pela minha experiência até agora, acho que o "Programador Pragmático" é um ótimo lugar para começar, pois fornece uma visão de alto nível dos diferentes problemas de codificação. Eu li ao longo de uma semana; Ao ler, fui imediatamente esclarecido sobre algumas maneiras melhores de resolver problemas com os quais lido todos os dias.

O "código completo" é mais longo e mais exaustivo.

Bolinhos de farinha de arroz
fonte
1

Também estou lendo esses livros, aqui está o meu pedido:

  1. Código Limpo
  2. Programador Pragmático
  3. Código completo
Homero Barbosa
fonte
Obrigado por postar sua primeira resposta no Programmers Stack Exchange. Não sei por que você votou negativamente nesta questão, mas pode ser que o eleitor que procurava não estivesse procurando apenas uma lista, mas também uma justificativa. Se você ainda não o fez, leia as Perguntas frequentes, que incluem conselhos sobre como fazer perguntas e respostas e são recompensadas com um crachá programmers.stackexchange.com/faq . Boa sorte na sua futura participação na troca de pilhas. Espero que você ache informativo e gratificante.
DeveloperDon
0

Esses livros têm alto mérito.

Muitas vezes, os desenvolvedores entram no trabalho sabendo principalmente o quê, sem muitos detalhes sobre o porquê . Os três livros que você escolheu oferecem muito para melhorar o que você faz como programador e são bons em fornecer descrições para fazer backup de suas prescrições .

A leitura desses livros abrirá muitas idéias que você nunca imaginou. Mais tarde, à medida que você ganha experiência, aproveita ainda mais esses livros, relacionando o que viu ao que eles descrevem.

Juntos, esses livros totalizam mais de 1500 páginas. Isso é muita leitura, e você tem razão em priorizar e mapear uma sequência. Sugiro que você faça o download do índice dos três e marque os capítulos de cada um de acordo com o que você mais precisa agora para o seu trabalho. Você pode comparar e contrastar os conselhos deles sobre nomeação de variáveis ​​e classes, mas acho que se você ler sobre nomeação uma vez, seria suficiente. Da mesma forma, se sua equipe ou gerente tiver diretrizes, siga-as.

Talvez você possa pedir emprestado a um amigo ou biblioteca antes de comprá-lo. Ou talvez até passar algumas horas na livraria local. Se você mede o tempo de sua leitura, analisando os três com base em suas prioridades, fazendo anotações em um pedaço de papel em branco, encontrará vocabulário e conceitos que você pode aplicar no trabalho hoje.

Pragmática é uma ótima descrição da abordagem de aprendizado que você deseja ao usar esses livros. Há muita sobreposição entre os três, e acho que muito foi revisitado em fontes acessíveis da Web. Você pode achar que precisa de muitas coisas que não constam desses livros ou mal são abordadas. Considere adicionar mais tópicos que vão além do escopo destes livros:

  • Tutoriais de linguagem de programação.
  • Suas organizações controlam as fontes e constroem ferramentas específicas.
  • Conceitos e implementações de estruturas de dados em C #.
  • Bibliotecas de classes C # padrão.
  • Padrões de codificação específicos para sua organização.
  • Teste, provavelmente com as ferramentas MS Test.
  • Diretrizes de design de interface do usuário / UX para suas plataformas.
  • Padrões de design aplicáveis ​​que, para C #, eu esperaria que o MVVM fosse o mais crítico.

Outra consideração que acho que pode ajudar é considerar a data de publicação, o contexto e as metas de cada livro. Do mais antigo para o mais recente: Pragmatic 1999, Code Complete 2nd Ed. 2004, Clean Code 2008. Contexto: A lista pragmática C, C ++, Java em seu índice, mas não o C #. O código completo é o Microsoft Press, escrito por um ex-funcionário da Microsoft, e como você trabalha com um idioma da Microsoft, pode haver alguma afinidade por lá, mas o índice possui uma entrada para C # e fica menos amor que o Fortran na página 64.

O livro de Robert Martin é mais embebido na abordagem Agile do que os outros dois, é o mais novo e possui ótimas descrições de nomes, design de classe e provavelmente muito mais ajuda com simultaneidade do que os outros. Pode ser um pouco injusto, mas os livros posteriores podem falar sobre mais e mais novidades, e seu contexto geralmente é mais parecido com o que fazemos hoje.

Cada um desses livros, em certa medida, compete em uma variedade semelhante de tópicos. Isso faz com que você queira perguntar: "Quais livros de programação mais novos e de escopo amplo estão competindo no mesmo espaço?"

DesenvolvedorDon
fonte