In this detailed Resource page, we feature an abundance of Scala Tutorials!
Scala is a general-purpose programming language providing support for functional programming and a strong static type system. Designed to be concise, many of Scala’s design decisions aimed to address criticisms of Java.
Scala source code is intended to be compiled to Java byte-code, so that the resulting executable code runs on a Java virtual machine. Scala provides language interoperability with Java, so that libraries written in either language may be referenced directly in Scala or Java code. Like Java, Scala is object-oriented, and uses a curly-brace syntax reminiscent of the C programming language. Unlike Java, Scala has many features of functional programming languages like Scheme, Standard ML and Haskell, including currying, type inference, immutability, lazy evaluation, and pattern matching. It also has an advanced type system supporting algebraic data types, covariance and contravariance, higher-order types (but not higher-rank types), and anonymous types. Other features of Scala not present in Java include operator overloading, optional parameters, named parameters, and raw strings. Conversely, a feature of Java not in Scala is checked exceptions, which have proved controversial.
If you wish to build up your Selenium knowledge first, check out our Scala Tutorial for Beginners.
Scala Tutorials – Getting Started
Simple examples on how to use Scala so that you can develop your own Scala based applications
- Scala Tutorial for Java Developers
In this lesson, we will look at some excellent examples with which Java programmers can get started with Scala very fast and learn some important concepts that will help them call themselves as Scala professionals in a very short time.
- Scala forall() Example
In this lesson, we will look at some excellent examples of Scala’s forall() function and how it can be used various scenarios to apply predicate logic over a collection of elements.
- Scala HTTP Example
In this Example series, we will see how to work with HTTP (Hyper Text Transfer Protocol) through a Web Application in Scala using Scalatra and Scalate.
- Scala REST Example
In this Example series, we will see how to have a REST (Web) Application in Scala. The examples in this article are executed in the Command Prompt / Shell with the Scalatra with the REST Client – an Add-on for Firefox browser.
- Functional Programming in Scala
In this Tutorial article, we will see how to work with Functional Programming in Scala Programming Language. The examples in this article are executed in the Command Prompt / Shell with the Scala Interpreter.
Scala Tutorial – Developing Modern Applications
In this course, we provide a framework and tool-set so that you can develop modern Scala applications. We cover a wide range of topics, from SBT build and reactive applications, to testing and database access.
- Build with SBT
We are going to start from the basics, like build tools and testing frameworks, talking about principles of reactive applications, accessing data storages, concurrency and parallelism, and finish up by outlining the typical choices in building console applications, web services and full-fledged web applications.
In this section of the tutorial we are going to talk about testing frameworks which are widely adopted by majority of the Scala application developers. The first framework we are going to touch upon is ScalaCheck which serves the purpose of automated property-based testing.
- Reactive Applications
Along this tutorial we are going to learn about all the necessary building blocks for developing truly reactive applications using Scala programming language and ecosystem, focusing in this section on the first one of them, reactive streams.
- Database Access with Slick
Slick is extremely expressive and powerful library to access relational databases from Scala applications. It is very flexible and in most cases offers multiple alternative ways of accomplishing things at the same time trying hard to maintain the balance between making developers highly productive and not hiding the fact that they dial with relational model and SQL under the hood.
- Console Applications
In this section of the tutorial we are going to talk about developing console (or to say it a bit differently, command line) applications using Scala programming language and ecosystem. The sample application we are about to start building will do only one simple thing: fetch the data from provided URL address.
- Concurrency and parallelism with Akka
In this section of the tutorial we are going to talk about two core concepts which modern software systems are relying upon: Concurrency and parallelism.
- Web Applications with Play Framework
In this section of the tutorial we are going to talk about developing rich web sites and portals (or to say it simply, modern web applications) using Scala programming language and ecosystem.
- Web APIs with Akka HTTP
If you are building or thinking about building REST(ful) web services and APIs in Scala definitely give Akka HTTP a try. Its routing DSL is beautiful and elegant way of describing the semantic of your REST(ful) resources and plugging the implementation to service them.
If you wish to learn how to use Scala with Play Framework, check out our Play Framework Tutorials.