This is the code repository for Scala Programming Projects, published by Packt.
Build real world projects using popular Scala frameworks like Play, Akka, and Spark
Scala is a type-safe JVM language that incorporates object-oriented and functional programming (OOP and FP) aspects. This book gets you started with essentials of software development by guiding you through various aspects of Scala programming, helping you bridge the gap between learning and implementing. You will learn about the unique features of Scala through diverse applications and experience simple yet powerful approaches for software development.
This book covers the following exciting features:
- Build, test, and package code using Scala Build Tool
- Decompose code into functions, classes, and packages for maintainability
- Implement the functional programming capabilities of Scala
- Develop a simple CRUD REST API using the Play framework
- Access a relational database using Slick
If you feel this book is for you, get your copy today!
All of the code is organized into folders. For example, Chapter02.
The code will look like the following:
class LazyDemo {
lazy val lazyVal = {
println("Evaluating lazyVal")
Following is what you need for this book: If you are an amateur programmer who wishes to learn how to use Scala, this book is for you. Knowledge of Java will be beneficial, but not necessary, to understand the concepts covered in this book.
With the following software and hardware list you can run all code files present in the book (Chapter 1-11).
Chapter | Software required | Hardware required |
---|---|---|
1-11 | IntelliJ Idea 2018.2.4 | 2 GB RAM minimum, 4 GB RAM recommended, 1.5 GB hard disk space + at least 1 GB for caches, 1024x768 minimum screen resolution |
6-9 | Heroku CLI 7.16.0 | A system with 4 GB RAM |
10-11 | Spark 2.3.1 | A system with 4 GB RAM |
11 | Zeppelin 0.8.0 | A system with 4 GB RAM |
11 | Kafka 1.1.0 | A system with 4 GB RAM |
We also provide a PDF file that has color images of the screenshots/diagrams used in this book. Click here to download it.
Mikaël Valot is Principal Software Engineer at IHS Markit in London, UK. He is the lead developer of a strategic market risk solution for banking regulation.
He has over 15 years of experience in the financial industry of the UK, Switzerland, and France. He has a Diplôme d'Ingénieur in Computing (equivalent to an M.Sc.) from Telecom Nancy, France.
After years of working with Java, he started developing professionally with Scala in 2010, and never looked back. He was a speaker at Scala Exchange 2015.
When he is not coding in Scala, Mikaël likes to dabble with Haskell, the Robotic Operating System, and deep learning.
Nicolas Jorand is a senior developer. He worked for the finance industry for about 15 years before switching to the energy industry. He is a freelancer enjoying a partial time at Romande Energy, a Swiss utility company providing exclusively green electricity. Nicolas is a full-stack developer, playing with microcontrollers, developing standard web user and 3D interfaces on Unity, developing software to animate a humanoid robot (Nao) and finally, working with Scala on integration and backend software. All these projects are done with the same leitmotif; "In the dev process, get the issues as early as possible."
Click here if you have any feedback or suggestions.