O "Java Concurrency In Practice" ainda é válido? [fechadas]

295

O Java Concurrency in Practice ainda é válido? Gostaria de saber se as idéias, conceitos e implementação descritos no livro ainda são compatíveis com as versões mais recentes do Java.

Pergunto porque a última edição foi feita em 2006.

MD
fonte
9
Sim, ele é. Isso lhe dará uma boa base na programação simultânea em Java.
precisa saber é o seguinte
12
Para os interessados, e uma vez que não está marcado como a resposta, Brian Goetz deu sua opinião aqui
mkobit
pelo menos este não é válido: stackoverflow.com/questions/52253164/…
Jason

Respostas:

178

Sim, ainda é válido em minha mente. Não há grandes mudanças nessa área de 6 para 7. A junção de garfo é um novo recurso, muito adequado para problemas do tipo dividir e conquistar. Mas todo o material existente dentro do livro, como sincronização, volátil, servlet, ainda é muito válido.

James Gan
fonte
597

Embora minha perspectiva possa ser tendenciosa, minha intenção atual de atualizar o livro seria quase estritamente aditiva, cobrindo junção de forquilha, decomposição paralela e as novas operações paralelas de dados em massa que vêm no Java SE 8.

Brian Goetz
fonte
38
Você ainda (três anos depois) tem planos de atualizar o livro? AFAIK, o livro disponível na Amazon ainda é a edição de 2006. Seria ótimo ver a cobertura de muitos novos recursos do Java SE 8 relacionados à simultaneidade.
Barclay
166
"Ter planos" daria muito crédito. Talvez "ter ambição" está mais perto ....
Brian Goetz
20
mais alguns meses, e será 2019 ... seus fãs ainda estão à espera ... :(
Kartik
19
Compreendo. Na minha perspectiva, há mais influência na criação de novas versões do Java do que nas novas versões do livro, por isso estou focando nisso por enquanto. Talvez depois que o Projeto Loom entregue, será diferente.
18718 Brian Goetz #
4
@Brian Goetz bump
Christian Meyer
48

Comprei este livro em 2013. Eu tinha sérias dúvidas de que seria atual e útil, uma vez que esta edição foi publicada há tanto tempo. O mundo da tecnologia se move rapidamente e a tecnologia de software ainda mais rapidamente. Mesmo assim, este livro é fundamental. Os conceitos e práticas discutidos são mais os fundamentos para um bom design e engenharia de software do que atualizações nas melhores e mais recentes APIs. Este livro é indispensável e fico feliz por o ter adquirido antes de ter decidido escrever uma única linha de código simultâneo. Provavelmente me salvou inúmeras horas.

scottb
fonte
16

Sim, definitivamente ainda é válido, mas vou recomendar em adição ou como introdução ao Well-Grounded Java Developer um livro bem escrito com um capítulo sobre técnicas modernas de concorrência em Java e exemplos bem feitos.

tarrsalah
fonte
3
Interessante notar que eles oferecem capítulo simultâneo de graça no momento (seu link capítulo 4 em Downloads Gratuitos)
Askar Ibragimov 15/16
9

Sim. Muito. Você sempre pode acompanhar as novidades que estão sendo introduzidas em Java; no entanto, o livro faz um bom trabalho ao explicar os fundamentos.

Se ajudar, isso vem de um pesquisador em tempo integral em simultaneidade e paralelismo usando OOP.

codeFood
fonte
8

Eu diria que sim. O JDK7 adiciona a estrutura de junção de forquilha, mas isso é um aprimoramento e não uma substituição das ferramentas de concorrência anteriores.

Rich Drummond
fonte
5

Se você deseja iniciar seu projeto usando o Java 8, considere também os livros e tutoriais novos, devido a novidades que aparecem no Java 8 como fluxos, lambdas e novos atômicos - que alteram um pouco os métodos de desenvolvimento.

Den Roman
fonte
1
Falamos sobre concorrência aqui, certo?
Samuel
Os fluxos @samuel (paralelo) e atômicos certamente são os principais recursos da simultaneidade.
Jean-François Savard
1
como ele responde à pergunta original sobre o livro "Java Concurrency in practice"?
Saurabh
0

Bem, o livro parece promissor quando li certos capítulos de pré-visualização on-line. Ele fornece informações suficientes sobre Java e aspectos gerais de simultaneidade. Pode-se manter este livro como uma ferramenta útil ao projetar e implementar aplicativos de concorrência ingênuos e sofisticados.

Tushar Patidar
fonte