- Title: Java Precisely (MIT Press)
- Autor: Peter Sestoft
- Publisher (Publication Date): The MIT Press; third edition edition (March 18, 2016)
- Language: English
- ISBN-10: | 0262529076
- ISBN-13: | 978-0262529075
- File Format: EPUB, PDF
An updated, concise reference for the Java programming language, version 8.0, and essential parts of its class languages, offering more detail than a standard textbook.
The third edition of Java Precisely provides a concise description of the Java programming language, version 8.0. It offers a quick reference for the reader who has already learned (or is learning) Java from a standard textbook and who wants to know the language in more detail. The book presents the entire Java programming language and essential parts of the class libraries: the collection classes, the input-output classes, the stream libraries and Java 8’s facilities for parallel programming, and the functional interfaces used for that.
Though written informally, the book describes the language in detail and offers many examples. For clarity, most of the general rules appear on left-hand pages with the relevant examples directly opposite on the right-hand pages. All examples are fragments of legal Java programs. The complete ready-to-run example programs are available on the book’s website.
This third edition adds material about functional parallel processing of arrays; default and static methods on interfaces; a brief description of the memory model and visibility across concurrent threads; lambda expressions, method reference expressions, and the related functional interfaces; and stream processing, including parallel programming and collectors.
Unlike most Java books, this one does not try to teach programming. It is a reference book on the language, which is exactly what I need for my course. The approach is especially useful because of the ingenious use of systematic examples that I can pick and choose from to demo in the lecture. There is really nothing quite like this approach in any other text of which I am aware. (J. Stanley Warford, Professor of Computer Science, Pepperdine University)
About the Author
Peter Sestoft is Professor of Computer Science and Head of the Software and Systems Section at the IT University of Copenhagen.
More than a decade ago, I came across the reference of “Java Precisely” while reading another classic – “Effective Java”. Josh Bloch mentioned this book as a quick way to get up to terms with Java as a language. I’d owned the earlier edition of “Java Precisely” since then and read end-to-end several times to understand the syntax, semantics and idiosyncrasies (UnSupportedOperationException in Collections framework, anyone?) of the language better. Recently, I was glad to note that both “Effective Java” and “Java Precisely” were getting revamped for Java 8 and purchased both. One can rarely get a better end-to-end yet, detailed view of the language in well under 200 pages. The book has perhaps the highest information density among programming books, so I would advise no more than 4-6 pages a day. The newer sections have almost 30 pages in aggregate and they are more than worth the admission price. For example, the sub-section on Visibility and Java Memory Model has details and working code that will strengthen the concepts of “volatile” variables and arrays that would otherwise take years of active experience. The section on functional programming, and data streaming is a pleasure to read as well. As with any book, there are two types of knowledge – direct and meta – one could get here. One, how to effectively use Java and understand the commonalities and variabilities (some obscure ones) at a deeper, profound level. Two, how to summarize ideas, concepts and concrete implementations with minimal verbosity. Kudos to Peter for an outstanding 3rd edition!