Um livro obrigatório transmitido para profissionais de Java :
Todo programador tem alguns livros que geralmente são desgastados porque são frequentemente chamados de materiais profissionais. Os livros a seguir devem ser obrigatórios na estante de programadores de idiomas Java. Os livros são caros, por isso, intencionalmente, deixo essa lista curta e limitada a livros importantes.
Pensando em Java (Bruce Eckel)
Pensando em Java, 3ª edição (Bruce Eckel; Prentice Hall Ptr, 2002)
Java Programação Pensamentos : 3ª edição (traduzido por Chen Haopeng et al.; Machinery Industry Press, 2005)
O livro de Eckel é muito útil para aprender a usar a tecnologia orientada a objetos em uma localidade Java. Um grande número de exemplos de código no livro explica o conceito que ele introduziu. O texto vem de alguém que não acha que a tecnologia Java é sempre a resposta certa, por isso é bastante prático. Eckel tem muita experiência em vários idiomas e habilidades sólidas para pensar de maneira orientada a objetos. Este livro coloca essas habilidades em um local prático de Java. Ele também está escrevendo um novo livro chamado Thinking in Enterprise Java.
Java eficaz (Joshua Bloch)
Java eficaz: Guia de linguagem de programação (Joshua Bloch; Addison-Wesley, 2001)
Versão chinesa eficaz em java (traduzido por Pan Aimin; Machinery Industry Press, 2003)
Este livro é o melhor livro para entender os princípios da excelente programação Java. A maioria dos materiais simplesmente não é encontrada em outros livros sobre "Aprendendo Java". Por exemplo, o capítulo sobre sobrescrição igual () no livro de Bloch é uma das melhores referências que já li. Ele também incluiu sugestões muito práticas no livro: Substitua classes abstratas por interfaces e use exceções de maneira flexível. Bloch é o arquiteto da biblioteca de plataforma Java de Sun, então ele tem um entendimento completo do idioma. De fato, ele escreveu um grande número de bibliotecas úteis no idioma. Deve ler este livro!
A linguagem de programação Java (Ken Arnold, James Gosling, David Holmes)
A linguagem de programação Java (Ken Arnold, James Gosling, David Holmes; Addison-Wesley, 2000)
Linguagem de programação Java (3ª edição) (traduzida por Yu Wanrong et al., China Electric Power Press, 2003)
Esta é talvez a melhor introdução de Java para você. Não é uma especificação padrão, mas um livro legível que apresenta as características de cada idioma. O livro pesa rigorosamente e educação bem, permitindo que os programadores sejam rapidamente atraídos para a língua Java (e sua rica biblioteca).
Programação simultânea em Java: Princípios e padrões de design (Doug Lea)
Programação simultânea em Java: Princípios e padrões de design, 2ª edição (Doug Lea; Addison-Wesley, 1999)
Java Concorrente Programação - Princípios e Padrões de Design (segunda edição) (traduzida por Zhao Yong et al., China Electric Power Press, 2004)
Nem todo desenvolvedor precisa ter uma compreensão tão meticulosa da simultaneidade, e nem todo engenheiro pode atingir o nível deste livro, mas não há melhor visão geral da programação de simultaneidade do que este livro. Se você estiver interessado nisso, comece aqui. Lea é um programador profissional da SUNY, e suas obras e idéias relacionadas à concorrência estão incluídas na especificação JDK 5.0 (citada no JSR166), para que você possa ter certeza de que seu conselho sobre o uso de Java efetivamente vale a pena ouvir. Ele é uma pessoa muito boa em comunicar.
Especialista Design e Desenvolvimento J2EE (Rod Johnson)
Especialista Design e Desenvolvimento J2EE (Rod Johnson)
Guia de programação de design e desenvolvimento do J2EE (traduzido por Wei Haiping, Electronics Industry Press, 2003)
Para aqueles novos no J2EE, este é o único livro que realmente reflete essa tecnologia. Este livro contém anos de experiência de sucesso e fracasso. Ao contrário de muitos outros autores, Johnson está feliz em tornar pública a experiência de fracasso. J2EE é frequentemente usado demais. O livro de Johnson pode ajudá -lo a evitar isso.
Refatoração (Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts)
Refatoração: Melhorando o design do código existente (Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts;
Addison-Wesley, 1999)
Refatoração: Melhorando o design do código existente (versão chinesa) (traduzida por Hou Jie et al., China Electric Power Press, 2003)
Fowler escreveu vários dos livros de programação mais populares que foram publicados agora, incluindo padrões de análise. Seu livro sobre reconstrução é o livro básico sobre esse assunto. O código de refatoramento é um treinamento ignorado pelos programadores, mas é a idéia mais intuitiva para os programadores. A refatoração é melhorar o design do código existente sem alterar os resultados do código. Esta é a melhor maneira de manter seu código arrumado, e o código projetado dessa maneira é sempre fácil de modificar. Quando será reformado? Quando o código "sente um gosto". O livro de Fowler está cheio de exemplos de código de idioma Java. Muitos ambientes de desenvolvimento integrado da linguagem Java (IDES) (incluindo o eclipse da IBM) incluem a reconstrução de Fowler e cada um é nomeado com seu nome de reconstrução, por isso vale a pena estar familiarizado com métodos de reconstrução, como o método de extração.
Padrões de design (Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides)
Padrões de design: Elementos do software reutilizável orientado a objetos (Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides; Addison-Wesley, 1997)
Padrão de design: o básico do software reutilizável orientado a objetos (traduzido por Li Yingjun et al., Machinery Industry Press, 2005)
Este é um livro mais famoso no círculo de programadores profissionais. Com base no apelido comum do autor, este livro é considerado o "Gang of Four (GoF) Book". Os padrões são uma maneira de reutilizar ao pensar e resolver problemas de programação comuns. O modelo de aprendizado é um assunto. Usar bons modos (ou saber quando não usá -los) é uma habilidade. Ignorar o padrão está errado. Todos os exemplos do livro estão representados no C ++, mas o idioma Java nasceu a partir daí, por isso é relativamente simples conectar programadores de linguagem Java a como implementar esses padrões no idioma Java. Familiarize -se com os padrões e entenda como usar bons padrões para facilitar a programação. Isso facilita a comunicação com outros programadores, porque em uma solução geral para problemas comuns, os padrões são atalhos para descrever um grande número de conceitos de programação relacionados na solução que colabora entre si. Alguns métodos mais gerais, como métodos de fábrica, existem em geral e até existem na própria linguagem Java. Para o tópico de usar padrões com uso sábio, você também pode ler a refatoração de Joshua Kerievsky aos padrões, o que diz que você pode deixar o código dizer quando implementar padrões.
Padrões de arquitetura de aplicativos corporativos (Martin Fowler)
Padrões de arquitetura de aplicativos corporativos (Martin Fowler; Addison-Wesley, 2002)
Modelo de arquitetura de aplicativos corporativos (traduzido por Wang Huainin et al., Machinery Industry Press, 2004)
Comparado com projetos pequenos e únicos, o desenvolvimento corporativo certamente representa um desafio maior. Isso não significa que todos os desafios trazidos pelo desenvolvimento da empresa sejam novos desafios. De fato, às vezes, esse desenvolvimento já foi concluído antes. Fowler fez muitos desses projetos. Seu livro menciona algumas soluções gerais e fornece orientações sobre uso, compromissos e opções. O Fowler inclui padrões familiares no livro, como o Model View Controller (MVC), e também fornece padrões que você pode não entender, como o modo de controlador de página que lida com solicitações de página específicas ou solicitações de comportamento em um site. À medida que você trata a maioria dos modos, depois de ler muitos modos, você pensa "eu já conheço esse modo". Talvez seja esse o caso, mas é útil ter uma expressão comum para padrões de referência. Essa classe de referências é uma grande ajuda em grandes projetos com vários componentes (desenvolvidos por pessoas diferentes).
Uml destilado (Martin Fowler)
UML destilado: um breve guia para a linguagem de modelagem de objetos padrão (Martin Fowler; Addison-Wesley 2003)
UML Essence: Um breve guia para a linguagem de objeto padrão (3ª edição) (traduzida por Xu Jiafu, Tsinghua University Press, 2005)
Para programadores profissionais, a UML é uma importante linguagem de comunicação visual universal, mas é usada demais e apressada. Você não precisa saber muito sobre o uso da comunicação UML. O refinamento da UML por Martin fornece as coisas mais essenciais. De fato, as páginas da capa dianteira e traseira fornecem tudo o que você pode usar regularmente. O código para exemplos da UML neste livro é o código Java.
Desenvolvimento orientado a testes: pelo exemplo (Kent Beck)
Desenvolvimento orientado a testes: pelo exemplo (Kent Beck; Addison-Wesley 2002)
Desenvolvimento orientado a testes (versão chinesa) (traduzida por Cui Kai, China Electric Power Press, 2004)
A programação de teste primeiro revolucionará a programação e ajudará você a se tornar um programador melhor. Escrever um teste antes de escrever o código é difícil de começar, mas é uma habilidade poderosa. Ao priorizar os testes, o código pode ser mais simples e garantir que funcione desde o início (Beck praticou sua prioridade de teste defendida, Junit co-escrito, a estrutura de teste mais popular para Java). O livro de Beck é uma referência autorizada, e os exemplos de dinheiro estendidos também são escritos em Java. Beck detalha como pensar com a prioridade do teste (que pode ser o primeiro obstáculo que muitos programadores encontram).
O Programador Pragmático: De Journeyman a Master (Andy Hunt e Dave Thomas)
O Programador Pragmático: De Journeyman a Master (Andrew Hunt e David Thomas; Addison-Wesley 1999)
A maneira de praticar programadores - de pequenos trabalhadores a especialistas (traduzido por Mavida, Electronics Industry Press, 2004)
Ser um desenvolvedor puro orientado a objetos tem suas vantagens . Na sociedade complexa de hoje, como desenvolvedor de idiomas Java, você geralmente precisa se comprometer para concluir suas tarefas. Caça e
Thomas explora como concluir tarefas sem comprometer o que realmente importa. Este não é um livro sobre o idioma Java, mas uma importante leitura de pensamento para os desenvolvedores de idiomas Java. Por exemplo, não acho que os programadores que se beneficiem dos conselhos honestos de "resolver problemas, não se esquivar de responsabilidade" não podem assinar um nome famoso em sua obra -prima como um artista orgulhoso.
Peopleware: Projetos e equipes produtivas (Tom DeMarco e Timothy Lister)
Peopleware: Projetos e equipes produtivas (Tom DeMarco, Timothy Lister; Dorset House, 1999)
Documentos pessoais (2ª edição) (UMLCHINA TRADLATION GROUP, Tsinghua University Press, 2003)
Todos os outros livros nesta lista estão pelo menos um pouco relacionados à tecnologia. Este livro não é. No oceano de todos os jargões técnicos e acrônimos, às vezes os desenvolvedores e gerentes de software esquecem: são as pessoas que fizeram o software. DeMarco e Lister nos lembram esse fato e também as razões dessa diferença. Este não é um livro sobre uma linguagem de programação específica, mas é um livro que todo programador de idiomas Java deve ler. Existem muitos outros bons livros sobre “como programadores exaustos fazem os gerentes saindo pela culatra”, mas este é o melhor.
Aprender o idioma java começa bem com a leitura!