PacktLib: Scala for Java Developers

Scala for Java Developers

Credits

Foreword

About the Author

Acknowledgments

About the Reviewers

www.PacktPub.com

Preface

Programming Interactively within Your Project

Advantages of using Scala for Java projects

Learning Scala through the REPL

Operations on collections

Summary

Code Integration

Creating a REST API from an existing database

Adding a test in Scala

Setting up Scala within a Java Maven project

Scala and Java collaboration

Differences in style between Java and Scala code

Summary

Understanding the Scala Ecosystem

Inheriting Java Integrated Development Environments (IDEs)

Building with Simple Build Tool (SBT)

Experimenting with Scala Worksheets

Working with HTTP

Taking advantage of Typesafe Activator

The REPL as a scripting engine

Summary

Testing Tools

Writing tests with ScalaTest

Testing with ScalaCheck

Summary

Getting Started with the Play Framework

Getting started with the classic Play distribution

Getting started with the Typesafe Activator

Architecture of a Play application

Playing with authentication

Practical tips when using Play

Summary

Database Access and the Future of ORM

Integrating an existing ORM – Hibernate and JPA

Dealing with persistence in the Play Framework

Replacing ORM

Learning about Slick

Scaffolding a Play application

Summary

Working with Integration and Web Services

Binding XML data in Scala

Working with XML and JSON

Handling Play requests with XML and JSON

Summary

Essential Properties of Modern Applications – Asynchrony and Concurrency

The pillars of Concurrency

The Async library – SIP-22-Async

Getting started with Akka

Summary

Building Reactive Web Applications

Describing reactive applications

Handling streams reactively

Experimenting with WebSockets and Iteratees in Play

Learning from activator templates

Playing with Actor Room

Summary

Scala Goodies

Exploring MongoDB

Scratching the surface of Big Data

Introducing DSLs in Scala

Introducing Scala.js

Final tips

Summary

Index