Список полезных книг для автоматизаторов тестирования на языке Java - qa-guru/knowledge-base GitHub Wiki

Книги по Java

Начальный уровень

  1. Кэти Сьерра, Берт Бейтс - "Изучаем Java", 2-е издание
  2. Брюс Эккель - "Философия Java", 4-е полное издание
  3. Кей Хорстман - "Java. Библиотека профессионала. Том 1 и 2"
  4. Брюс Эккель - "On Java 8"

Повышаем уровень

  1. Raoul-Gabriel Urma, Mario Fusco, Alan Mycroft - "Modern Java in Action"
  2. Joshua Bloch - "Effective Java", 3-е издание
  3. Krunal Patel, Nilang Patel - "Java 9 Dependency Injection"
  4. Koushik Kothagal - "Modular Programming in Java 9"
  5. Edward Sciore - "Java Program Design. Principles, Polymorphism, and Patterns"
  6. Maurice Naftalin, Philip Wadler - "Java Generics and Collections"

Многопоточное программирование

  1. Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea - "Java Concurrency in Practice"
  2. Jeff Friesen - "Java Threads and the Concurrency Utilities (The Expert's Voice in Java)"
  3. Javier Gonzalez - "Mastering Concurrency Programming with Java 8"
  4. Javier Gonzalez - "Java 9 Concurrency Cookbook", 2nd Edition

Функциональное программирование

  1. Raoul-Gabriel Urma, Mario Fusco, Alan Mycroft - "Java 8 in Action, Lambdas Streams and Functional-Style Programming"
  2. Dean Wampler - "Functional Programming for Java Developers"
  3. Venkat Subramaniam - "Functional Programming in Java (The Pragmatic Programmers)"
  4. Pierre-Yves Saumont - "Functional Programming in Java. How functional techniques improve your Java programs"
  5. Ralph Lecessi - "Functional Interfaces in Java"
  6. Michael Müller - "Java Lambdas and Parallel Streams"
  7. Toby Weston - "Learning Java Lambdas"
  8. Ричард Уорбэртон - "Лямбда-выражения в Java 8"

Принципы написания хорошего кода

  1. Егор Бугаенко - "Элегантные объекты. Java Edition"
  2. Стив Круг - "Не заставляйте меня думать! Веб-юзабилити и здравый смысл"
  3. Стив Макконнелл - "Совершенный код", 2-е издание (мастер-класс)
  4. Роберт Мартин - "Идеальный программист"
  5. Роберт Мартин - "Чистая архитектура"
  6. Роберт Мартин - "Чистый код. Создание, анализ, рефакторинг"

Алгоритмы

  1. Аллен Б. Доуни - "Алгоритмы и структуры данных. Извлечение информации на языке Java"
  2. Роберт Седжвик, Кевин Уэйн - "Алгоритмы на Java"
  3. Hemant Jain - "Problem Solving in Data Structures and Algorithms Using Java. The Ultimate Guide to Programming"

Производительность

  1. Charlie Hunt, Binu John - "Java Performance"
  2. Charlie Hunt, Monica Beckwith, Poonam Parhar, Bengt Rutisson - "Java Performance Companion"
  3. Erik Ostermueller - "Troubleshooting Java Performance. Detecting Anti-Patterns with Open Source Tools"