There should be an image here!Looking for an edge? If you program in Java, you’re spending a lot of effort working for the language. But with Scala, the language works for you.

Scala is an exciting, modern, multi-paradigm language for the JVM. You can use it to write traditional, imperative, object-oriented code. But you can also leverage its higher level of abstraction to take full advantage of modern, multicore systems. Programming Scala: Tackle Multi-Core Complexity on the Java Virtual Machine will show you how to use this powerful, functional programming language to create highly scalable, highly concurrent applications on the Java Platform.

Award-winning author Venktat Subramaniam tells us, “We live in a world where hardware is getting cheaper and more powerful. Users now have devices with multiple processors, each with multiple cores. Although Java has served us well so far, it was not designed to take advantage of the power we have on hand today. Scala lets you put all that power to use to create highly responsive, scalable, performing applications.”

Programmers in today’s world are facing a whole new set of challenges — although you can enjoy true concurrency, you’re now faced with higher contention and synchronization issues. Deploying an existing application on a multicore processor may bring out previously hidden concurrency issues. Java’s multi-threading facility by itself isn’t enough; it’s a very low level abstraction. Instead, you need a paradigm that provides a higher level of abstraction to deal with concurrency. It’s time to embrace Functional Programming.

Programming Scala will show you the fundamentals of functional programming using Scala. Very quickly, you’ll learn how this statically typed language can give you dynamic capabilities to create concise, scalable, highly capable concurrent code.