Trilha de Livros

Mais um tópico sobre livros? Sim! Bem… primeiro vou falar da minha situação, depois a pergunta.

Eu entro neste fórum já a algum tempo e devo reconhecer que naquelas discussões mais calorosas, de várias páginas, eu saio boiando(repositorys, domains, o que?), talvez igual alguém que não seja da área de TI que entre nas nossas salas. Enfim, pouco entendo do que estão falando. Falta base.
5 de maio agora completo 5 anos que comecei a saber sobre programação (faculdade C.Comp), e em junho próximo 1 ano que trabalho na área, desenvolvimento Java p/ Web, para o governo estadual.

Não estou procurando um catálogo de ferramentas, com martelos, alcalites, chaves de fenda e brocas de várias marcas. Se eu nem sei que tenho um prego na mão, do que adianta saber o nome da ferramenta? Acho que pra este questionamento dirão “Só com experiência”. Mas mesmo assim quero ler os livros, afinal eles também contam como experiência.

Gostaria é de uma trilha de livros a seguir, em ordem crescente, daqueles que ensinam a língua, os termos, que formam a base sólida, à aqueles mais avançados, mas tão essenciais quanto os primeiros. O tema principal é engenharia de software, arquitetura de sistemas, mas se puderem recomendar outros essenciais (e dizerem para que servem) ficarei grato.

A palavra-chave é base, essência, de preferência que tenham exemplos úteis e reais, que valham a pena (não quero saber sobre como fazer um blog com Rails).

Obs: Eu prefiro ler em português, mas se a tradução estiver ruim, o livro mal-diagramado, ou seja, se fizeram um trabalho porco, vou para inglês mesmo, é minha segunda língua. Bom não é suficiente, sugiram os excelentes!

O meu objetivo é não ter um segundo de dúvida quando me perguntarem sobre tal princípio básico (O que é acoplamento, coesão?), é responder na lata, ter tudo na ponta da língua.

aqui tem uma lista de livros.

Estou lendo o Fundamentals of Object-Oriented Design in UML - Meilir Page-Jones, que como já foi dito aqui, é básico para o profissional

aqui tem outra

Você não entendeu, estou procurando uma trilha, dessas listas já vi todas, mas nenhuma delas fala “comece por este, depois vá para este”, nada ordenado, ou pelo menos não falam que é ordenado explicitamente dessa maneira. Não sei se a lista do Philip é assim.

Procuro é a porta de entrada.

Edit: A segunda lista que é muito centrada em Java, procuro algo agnóstico à linguagens, realmente sobre arquitetura. Exemplos em Java seriam ótimos, mas não estou atrás de livros sobre tecnologia Java [exclusivamente].

Assumindo que você sabia o minimo de programação, eu sugiro esse aqui:

Olá

Na nossa área o inglês é o mais básico de tudo caso contrário você só vai ler coisa velha e requentada.

Daquela minha lista que já foi indicada, reforço as seguintes indicações (sem essa de primeiro este depois aquele) com os destaques em vermelho:

[color=“red”]Effective Java do Joshua Bloch[/color] - está para sair a segunda edição, aguarde por ela

JUnit in action, Vincent Sassol (é mais do que um livro sobre JUnit, é sobre testes)

[color=red]Domain driven design do Eric Evans[/color]

[color=red]Head First Design Patterns de Freeman&freeman[/color]

E procure também os livros que o Phillip Calçado indica que são básicos (não no sentido de serem fáceis mas de serem fundamentais)

[]s
Luca

Excelentes listas:

:arrow: http://gc.blog.br/2008/03/27/10-livros-recomendados-para-desenvolvedores/
:arrow: http://blpsilva.wordpress.com/livros/

Nossa… O Cormen é excelente ( tenho uma tradução em casa, não vendo e não troco por nada :slight_smile: ), li de forma muito aleatória durante a faculdade… Concentra inúmeros conceitos que todo profissional de computação deveria saber ( inclusive eu :stuck_out_tongue: ).

Já que você quer estudar arquitetura, procure por um livro de Arquitetura de Software.

[EDITADO]
Mencionei o Cormen porque ele é um dos livros sugeridos por um dos links que o colega rcarneiro indicou acima.
[/EDITADO]

Outra lista: http://www.codinghorror.com/blog/archives/000020.html

Destes:

:arrow: Object-Oriented Software Construction - Bertrand Meyer

:arrow: Domain-Driven Design: Tackling Complexity in the Heart of Software - Eric Evans

:arrow: The Pragmatic Programmer: From Journeyman to Master - Andrew Hunt e David Thomas

:arrow: Code Complete: A Practical Handbook of Software Construction - Steve McConnell

:arrow: Refactoring: Improving the Design of Existing Code - Fowler et al

Qual ler primeiro?

:shock: vou esperar…

[quote=renrutal]Destes:

:arrow: Object-Oriented Software Construction - Bertrand Meyer

:arrow: Domain-Driven Design: Tackling Complexity in the Heart of Software - Eric Evans

:arrow: The Pragmatic Programmer: From Journeyman to Master - Andrew Hunt e David Thomas

:arrow: Code Complete: A Practical Handbook of Software Construction - Steve McConnell

:arrow: Refactoring: Improving the Design of Existing Code - Fowler et al

Qual ler primeiro?[/quote]

Eu leria primeiro:

The Pragmatic Programmer: From Journeyman to Master - Andrew Hunt e David Thomas

Muda sua cabeça!!

[quote=renrutal]Destes:

:arrow: Object-Oriented Software Construction - Bertrand Meyer

:arrow: Domain-Driven Design: Tackling Complexity in the Heart of Software - Eric Evans

:arrow: The Pragmatic Programmer: From Journeyman to Master - Andrew Hunt e David Thomas

:arrow: Code Complete: A Practical Handbook of Software Construction - Steve McConnell

:arrow: Refactoring: Improving the Design of Existing Code - Fowler et al

Qual ler primeiro?[/quote]

dos livros que conheço dessa lista, me parece que o Object-Oriented Software Construction é o mais básico

[quote=emanuell][quote=renrutal]Destes:

:arrow: Object-Oriented Software Construction - Bertrand Meyer

:arrow: Domain-Driven Design: Tackling Complexity in the Heart of Software - Eric Evans

:arrow: The Pragmatic Programmer: From Journeyman to Master - Andrew Hunt e David Thomas

:arrow: Code Complete: A Practical Handbook of Software Construction - Steve McConnell

:arrow: Refactoring: Improving the Design of Existing Code - Fowler et al

Qual ler primeiro?[/quote]
[/quote]

Bem,

Se quer seguir uma “trilha”, vai depender do que você gostaria de aprender primeiro, não adianta dar sugestões pois cada um vai postar a sua.

Se você já tem o conhecimento técnico(linguagem e modelagem) e quer partir para soluções de arquitetura, isso então abrange que você conheça caminhos alternativos para cada tipo de problema e nesse caso não tem um passo-a-passo, você pode ler sobre assuntos sem seguir uma ordem pré-definida, o importante é saber sobre o que se está falando.

Bem, da lista que foi apresentada a minha sugestão é começar por The Pragmatic Programmer: From Journeyman to Master - Andrew Hunt e David Thomas, pois como dito antes “vai abrir sua cabeça”.

Em seguida Object-Oriented Software Construction, e depois Object-Oriented Software Construction este també é muito bom e vai te dar toques muito importante para questão de entender a modelagem do domínio(negócio) do seu projeto.

Essa, como disse, é minha sugestão e é importante também conhecer o idioma inglês, caso contrário, corre-se o risco de ficar de fora de muita coisa boa com relação a atualização profissional visto que muita coisa não é traduzida.

Mais uma sugestão !

Valeu !

[quote=carlosass][quote=emanuell][quote=renrutal]Destes:

:arrow: Object-Oriented Software Construction - Bertrand Meyer

:arrow: Domain-Driven Design: Tackling Complexity in the Heart of Software - Eric Evans

:arrow: The Pragmatic Programmer: From Journeyman to Master - Andrew Hunt e David Thomas

:arrow: Code Complete: A Practical Handbook of Software Construction - Steve McConnell

:arrow: Refactoring: Improving the Design of Existing Code - Fowler et al

Qual ler primeiro?[/quote]
[/quote]

Bem,

Se quer seguir uma “trilha”, vai depender do que você gostaria de aprender primeiro, não adianta dar sugestões pois cada um vai postar a sua.

Se você já tem o conhecimento técnico(linguagem e modelagem) e quer partir para soluções de arquitetura, isso então abrange que você conheça caminhos alternativos para cada tipo de problema e nesse caso não tem um passo-a-passo, você pode ler sobre assuntos sem seguir uma ordem pré-definida, o importante é saber sobre o que se está falando.

Bem, da lista que foi apresentada a minha sugestão é começar por The Pragmatic Programmer: From Journeyman to Master - Andrew Hunt e David Thomas, pois como dito antes “vai abrir sua cabeça”.

Em seguida Object-Oriented Software Construction, e depois Object-Oriented Software Construction este també é muito bom e vai te dar toques muito importante para questão de entender a modelagem do domínio(negócio) do seu projeto.

Essa, como disse, é minha sugestão e é importante também conhecer o idioma inglês, caso contrário, corre-se o risco de ficar de fora de muita coisa boa com relação a atualização profissional visto que muita coisa não é traduzida.

Mais uma sugestão !

Valeu ! [/quote]

Foi mal ! O terceiro livro citado é o Domain-Driven Design: Tackling Complexity in the Heart of Software no lugar da repetição de (Object-Oriented Software Construction).

Valeu !

Acabei de começar a ler Code Complete, e se os dois primeiros capítulos forem medida pra alguma coisa, será uns dos livros mais sensacionais que já tive o prazer de ler.

Esse livro é coisa linda de deus… rsrsrs…

Olá,

Por enquanto os livros que lí até agora foram os seguintes:

Design Patterns: Elements of Reusable Object-Oriented Software
Domain Driven Design - evans
Applying Domain-Driven Design and Patterns: With Examples in C# and .NET: Jimmy Nilsson
Patterns of Enterprise Application Architecture - Martin Fowler

Recomendo a leitura nesta ordem (não foi exatamente a que segui, mas acho que seria melhor).
Agora estou começando a ler Enterprise integration patterns, Designing, Building and Deploying messaging solutions.
Acredito que o conhecimento presente nesses livros são fundamentais, agora a ordem que deve ser lido depende do momento em sua carreira. Pode ser que você precise de determinado conhecimento de imediato, então vá atraz dele.

[]s

Ferry

Todos esses livros sao excelentes. Eu so colocaria como primeiro da lista (na ordem que deveria ser lido) o Applying UML and Patterns do Craig Larman. Ele tem uma traducao em portugues, fraca como sempre, mas nao compromente muito. “Utilizando UML e Padroes” é o titulo em portugues. Apesar do titulo ele é bastante voltado para a analise OO e nem tanto para UML.

  • Esqueci de “quotar”, mas eu estava falando dos livros do Ferryman.