The Joy of Kotlin


Book Description

Summary Maintaining poor legacy code, interpreting cryptic comments, and writing the same boilerplate over and over can suck the joy out of your life as a Java developer. Fear not! There's hope! Kotlin is an elegant JVM language with modern features and easy integration with Java. The Joy of Kotlin teaches you practical techniques to improve abstraction and design, to write comprehensible code, and to build maintainable bug-free applications. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology Your programming language should be expressive, safe, flexible, and intuitive, and Kotlin checks all the boxes! This elegant JVM language integrates seamlessly with Java, and makes it a breeze to switch between OO and functional styles of programming. It's also fully supported by Google as a first-class Android language. Master the powerful techniques in this unique book, and you'll be able to take on new challenges with increased confidence and skill. About the Book The Joy of Kotlin teaches you to write comprehensible, easy-to-maintain, safe programs with Kotlin. In this expert guide, seasoned engineer Pierre-Yves Saumont teaches you to approach common programming challenges with a fresh, FP-inspired perspective. As you work through the many examples, you'll dive deep into handling errors and data properly, managing state, and taking advantage of laziness. The author's down-to-earth examples and experience-driven insights will make you a better—and more joyful—developer! What's inside Programming with functions Dealing with optional data Safe handling of errors and exceptions Handling and sharing state mutation About the Reader Written for intermediate Java or Kotlin developers. About the Author Pierre-Yves Saumont is a senior software engineer at Alcatel-Submarine Networks. He's the author of Functional Programming in Java (Manning, 2017). Table of Contents Making programs safer Functional programming in Kotlin: An overview Programming with functions Recursion, corecursion, and memoization Data handling with lists Dealing with optional data Handling errors and exceptions Advanced list handling Working with laziness More data handling with trees Solving problems with advanced trees Functional input/output Sharing mutable states with actors Solving common problems functionally




Teach Yourself Java for Macintosh in 21 Days


Book Description

Takes a tutorial approach towards developing and serving Java applets, offering step-by-step instruction on such areas as motion pictures, animation, applet interactivity, file transfers, sound, and type. Original. (Intermediate).




The Joy of Clojure


Book Description

Summary The Joy of Clojure, Second Edition is a deep look at the Clojure language. Fully updated for Clojure 1.6, this new edition goes beyond just syntax to show you the "why" of Clojure and how to write fluent Clojure code. You'll learn functional and declarative approaches to programming and will master the techniques that make Clojure so elegant and efficient. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology The Clojure programming language is a dialect of Lisp that runs on the Java Virtual Machine and JavaScript runtimes. It is a functional programming language that offers great performance, expressive power, and stability by design. It gives you built-in concurrency and the predictable precision of immutable and persistent data structures. And it's really, really fast. The instant you see long blocks of Java or Ruby dissolve into a few lines of Clojure, you'll know why the authors of this book call it a "joyful language." It's no wonder that enterprises like Staples are betting their infrastructure on Clojure. About the Book The Joy of Clojure, Second Edition is a deep account of the Clojure language. Fully updated for Clojure 1.6, this new edition goes beyond the syntax to show you how to write fluent Clojure code. You'll learn functional and declarative approaches to programming and will master techniques that make Clojure elegant and efficient. The book shows you how to solve hard problems related to concurrency, interoperability, and performance, and how great it can be to think in the Clojure way. Appropriate for readers with some experience using Clojure or common Lisp. What's Inside Build web apps using ClojureScript Master functional programming techniques Simplify concurrency Covers Clojure 1.6 About the Authors Michael Fogus and Chris Houser are contributors to the Clojure and ClojureScript programming languages and the authors of various Clojure libraries and language features. Table of Contents PART 1 FOUNDATIONS Clojure philosophy Drinking from the Clojure fire hose Dipping your toes in the pool PART 2 DATA TYPES On scalars Collection types PART 3 FUNCTIONAL PROGRAMMING Being lazy and set in your ways Functional programming PART 4 LARGE-SCALE DESIGN Macros Combining data and code Mutation and concurrency Parallelism PART 5 HOST SYMBIOSIS Java.next Why ClojureScript? PART 6 TANGENTIAL CONSIDERATIONS Data-oriented programming Performance Thinking programs Clojure changes the way you think




Concurrent Programming in Java


Book Description

Software -- Programming Languages.




The Java Language Specification


Book Description

The definitive, up-to-the-minute Java SE 7 reference, written by the language's inventors and current stewards! * *Meticulous coverage of Java SE 7 syntax, semantics, and constructs: the complete current state of the language. *Packed with ready-to-execute Java SE 7 sample programs. *Full chapter on thread and lock semantics, including complete memory model for high-performance shared-memory multiprocessor implementations. *Covers new JSR 334 features and non-Java language support. Written by Java's inventors and current stewards, this is the definitive Java language reference. It meticulously explains Java SE 7's syntax, semantics, and constructs, thoroughly defining the language's current state and evolution. A 'software-engineering-level' discussion of how the newest version of Java is organized and how it works, it reflects all recent changes to the language, demonstrating them through dozens of example programs -- most of them in 'ready to execute' form. The Java Language Specification, Java SE 7 Edition includes a full chapter describing the semantics of threads and locks, and specifying a memory model for high-performance shared memory multiprocessor implementations. It covers all of the practical new features specified by JSR 334, Small Enhancements to the Java Programming Language: features intended to help programmers become far more productive on a day-to-day basis. The authors also show how Java SE 7 accommodates non-Java languages (including dynamically-typed languages such as Clojure, Groovy and Scala) and present specific information on important modifications to method invocation (JSR 292). This reference will be an indispensable resource for hardcore Java developers who want to know exactly how the language works under the hood, and why it works that way -- so they can create programs that deliver outstanding performance, efficiency, and reliability.




Joy with Java


Book Description

The Java programming language has been one of the most powerful tools available to computer programmers since its inception in 1995. It has also consistently changed since then, making it a vast and powerful resource for object-oriented programming today. This lucid textbook introduces the student not only to the nuances of object-oriented programming, but also to the many syntaxes and semantics of the modern Java language. Each concept of programming is explained, and then illustrated with small but effective ready-to-run programs. Important points to be noted have been emphasized and hints have been given at the end of each discussion so that programmers are careful to avoid common pitfalls. Finally, a number of practice problems taken from real world scenarios encourage the student to think in terms of problem solving, consolidating the knowledge gained.




Java Programming by Example


Book Description

This book introduces software developers to Java, the object-oriented programming language of choice for Internet development.




The Java Programming Language


Book Description

Restructured to deliver in-depth coverage of Java's critical new features, this guide contains code examples to help developers make the most of new Java features. It offers a creator's eye view of the rationale behind Java's design, and its latest enhancements, all designed to help developers make the most of Java's power, portability, and flexibility.




Programming for the Java Virtual Machine


Book Description

The Java Virtual Machine (JVM) is the underlying technology behind Java's most distinctive features including size, security and cross-platform delivery. This guide shows programmers how to write programs for the Java Virtual Machine.




The Java Language Specification


Book Description

For nearly five years, one book has served as the definitive reference to Java for all serious developers: The Java Language Specification, by James Gosling, Bill Joy, and Guy Steele. Now, these world-renowned Java authorities (along with new co-author Gilad Bracha) have delivered a monumental update. This completely revised Second Edition covers the Java 2 Platform Standard Edition Version 1.3 with unprecedented depth and precision, offering the invaluable insights of Java's creators to every developer. There is no better source for learning everything about the Syntax and Semantics of the Java programming language. Developers will turn to this book again and again.