Scala

Scala Tutorial

Table of Contents

Scala will be a short scalable language, and also a hybrid functional programming language. It is developed by Martin Odersky. Scala smoothly integrates the features of the language of object-oriented functional languages. This Scala is compiled to execute on the java virtual machine. There are many companies that depend on Java applications for any business-critical applications that are turning to Scala to boost their development productivity applications scalability and overall reliability. It has features of both an object-oriented programming language and functional programming. It is developed to compete with Java. 

Scala is object-oriented and purely follows the object-oriented features in that sense where the object is having every value. There are types and behaviour of objects that are described by classes and also traits. Classes will be extended by subclassing and also flexible mixin-based composition mechanism as a clean replacement for multiple inheritances.

Scala functional:

Scala will also be a functional language wherein sense that every function will be a value and every value will be an object finally every function of the object. Scala always gives the lightweight syntax for defining anonymous functions, as it supports currying.

Scala Vs Java

Scala has a set of features that completely differ from Java.

It is having all types that are objects

It is type inference

Nested Functions

Functions will be objects

Domain-specific language support

Traits

Closures

Concurrency support will be inspired by Erlang.

Scala Web Frameworks

Scala is used everywhere which is very important in enterprise web applications. Scala web frameworks

  1. Lift framework

This lift is an important powerful framework today. It has many distinguishing features when compared to other frameworks. There are features 

Secure – There are lift apps that are resistant to common vulnerabilities that include OWASP top 10.

Developer centric- Lift apps are fast build, concise and easy to maintain.

Designer friendly- Lift apps may be created in a totally designer-friendly way.

Scalable- Lift apps will be high performance and scale in the real world to manage the traffic levels.

  1. Play Framework

This depends on the lightweight, stateless, web-friendly architecture. This play gives predictable and minimal resource consumption for highly scalable applications.

  1. Bowler Framework

The bowler quick start will be the skeleton of the project and bowler app which gets us up running with a minimal Bowler app which can adapt in no time.

Scala programming:

If we are good at Java then we can understand Scala very easily. The only difference between Scala and java is that the ‘;’ line end character will be optional.

When we consider a scala program it will be defined as the collection of objects that may communicate by activating other‘s methods.

Objects– It is having a state of behaviours. A class has an instance i.e. Object. Example-A dog has states-colour, name, breed as well behaviours- wagging, barking and eating.

Class– A class can explain as a template/blueprint that explains the behaviours/states that are connected to class.

Methods– Method is comparatively a behaviour. A class may contain many methods. It is a method where the logic will be written, data is manipulated and also actions are executed.

Fields-In this each object will have a unique set of instance variables, which it will be called fields. An object’s state will be created by the values that are assigned to these fields.

Closure– Closure will be considered as a function whose return value depends will be on the value of one or more variables that are considered outside the function.

Traits– Trait encapsulates method and also field definitions which may be defined and also reused by mixing them into the classes.

Scala Program

There are two methods of executing the Scala program one is an interactive method and the script method.

Interactive Method

First, we have to open the command prompt and use the following to open the scala

             \>scala

If the scala is installed in our system the output will be as such

Welcome to Scala version 2.9.0.1

Type in expressions to have them evaluated.

Type: help for more information.

By typing the following text the right of the scala prompt and also press the Enter key.

scala> println(“Hello, Scala!”);

Script Mode

We have to open the notepad and type the following

object HelloWorld {

   /* This is my java program.  

   * It will display ‘Hello World’ as the output

   */

   def main(args: Array[String]) {

      println(“Hello, world!”) // prints Hello World

   }

}

We have to save the file as Hellohi.scala

Questions 

  1. What is Scala? How it is used
  2. What are two types of Scala?

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Share this article
Subscribe
By pressing the Subscribe button, you confirm that you have read our Privacy Policy.
Need a Free Demo Class?
Join H2K Infosys IT Online Training
Enroll Free demo class