1. Introduction
Programming Project 2022/23

1.5. Bibliography

For each topic in this course, you will find the material and exercises on this website.

In addition to this material, we recommend the following books, which are all digitally accessible for UNIBZ students and staff via O'Reilly Safari Books Online.

Books

Here is a supplementary list of books for you to dive deeper into the topics we see in class.

1. Java How to Program, Early Objects

Paul Deitel; Harvey Deitel, Java How to Program, Early Objects, 11th Edition, Prentice Hall, 2014, ISBN 978-0-13-381303-6

This is our main book for the course!

Read it at O'Reilly!

2. Learn Java 17 Programming

Nick Samoylov, Learn Java 17 Programming - Second Edition, Packt Publishing, 2022, ISBN 978-1-80324-143-2

This book covers more recent features.

Read it at O'Reilly!

3. Version Control with Git

Jon Loeliger, Matthew McCullough. Version Control with Git, 2nd Edition, 2012, O'Reilly Media, Inc., ISBN 9780596520120.

Read this if you want to understand the inner workings of Git.

Read it at O'Reilly!

4. Clean Code: A Handbook of Agile Software Craftsmanship

Robert C. Martin. Clean Code: A Handbook of Agile Software Craftsmanship, 2008, Prentice Hall, ISBN 9780136083238.

This is a MUST READ for any software developer.

Read it at O'Reilly!

5. Java I/O, NIO and NIO.2

Jeff Friesen. Java I/O, NIO and NIO.2, Apress, 2015, ISBN 9781484215654.

Deep dive into the different Java I/O APIs.

Read it at O'Reilly

6. Java Concurrency in Practice

Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, Doug Lea. Java Concurrency in Practice, 2006, Addison-Wesley Professional, ISBN 0321349601.

Read it at O'Reilly

7. Java Unit Testing with JUnit 5: Test Driven Development with JUnit 5

Shekhar Gulati, Rahul Sharma. Java Unit Testing with JUnit 5: Test Driven Development with JUnit 5, 2017, Apress, ISBN 9781484230152.

Read it at O'Reilly!

8. Pragmatic Unit Testing in Java 8 with JUnit

Jeff Langr, Andy Hunt, Dave Thomas. Pragmatic Unit Testing in Java 8 with JUnit, 2015, Pragmatic Bookshelf, ISBN 9781941222591.

Read it at O'Reilly!

9. Design Patterns: Elements of Reusable Object-Oriented Software

Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software, 1994, Addison-Wesley Professional, ISBN 0201633612.

Read it at O'Reilly!

Videos

Here is a supplementary list of videos that cover some of the topics we discuss in class.

1. Java 8 Fundamentals: Modern Java Development with Lambdas, Streams, and Introducing Java 9's JShell and the Java Platform Module System (JPMS)

By Paul Deitel

Watch it at O'Reilly.

2. Apache Maven: Beginner to Guru

By John Thompson.

Watch it at O'Reilly.

3. Clean Code Fundamentals

By Robert C. Martin.

If you prefer to watch a video instead of reading a book, this video series covers a lot of the material in the Clean Code book. You will have a chance to enjoy Uncle Bob's corny humor.

Watch it at O'Reilly.