What
is Scala?
Scala is a type-safe JVM language that
incorporates both object oriented and functional programming into an extremely
concise, logical, and extraordinarily powerful language.
Scala is written to run in the JVM.
Scala combines object-oriented and functional
programming in one concise, high-level language. Scala static types help avoid
bugs in complex applications, and its JVM and JavaScript runtimes let you build
high-performance systems with easy access to huge ecosystems of libraries.
Is
Scala open source?
Yes! Scala is an open source project.
What
are the advantages of Scala?
Among various other benefits of the language,
here are few-
1. It
is easy to write, compile, debug and run the program
2. It
is highly scalable, testable, maintainable and productive
3. Your
code is more concise, readable and error-free
4. It
facilitates concurrent programming
5. It
is both object-oriented and functional
6. It
has no boilerplate code
7. Singleton
objects are a cleaner solution than static
8. Scala
arrays use regular generics
9. Scala
has native tuples and concise code
What
is the Main drawback of Scala Language?
1. Hard
to learn
2. Scala
has a limited developer pool.
3. Limited
community presence
4. Lack
of ease of adoption
5. Limited
backward compatibility
When
to use Scala?
1. Solve
concurrency problems
2. Perform
DSL related tasks
3. Implement
functional solutions
4. Integrate
with shared resources, files, databases or multiple backend processes and
services
5. Learn
a new development paradigm
Is
Scala easy to learn?
It is harder to learn than Java but easy to learn
for a Java programmer.
Which
is the latest version?
The latest version of Scala 2.12.7
Which
keyword is used to define a function in Scala?
The “def” keyword is used to define Scala
function.
What
is Type Inference in Scala?
Scala has a built-in type inference mechanism
which allows the programmer to omit certain type annotations.
Why
Scala is used in spark?
Spark is written in Scala and because of its
scalability on JVM.
Scala is better than many other traditional data
analysis tools like R or Python.
Why
do we need App in Scala?
App is a helper class that holds the main method.
Is
Scala a functional language?
Scala is a multi-paradigm programming language; it
supports imperative and functional style.
What
is the Default access modifier in Scala?
The “Public” is the default access modifier in
Scala.
What
are Scala Identifiers?
Four types of Scala Identifiers-
1. Alphanumeric
identifiers
2. Operator
identifiers
3. Mixed
identifiers
4. Literal
identifiers
What
is functional programming?
Functional programming is a style of programming
where pure functions and immutable values are the basic building blocks.
Scala
vs. Java?
1. Java
complex syntax but Scala simple syntax
2. Java
requires lengthy codes to be written but Scala shorter codes for the same
purpose.
3. Java
rewriting is needed but Scala rewriting is not required.
4. Java
dynamics in nature but Scala statically-typed
5. Java
no assurance of bug-free codes but Scala assurance of lesser defects
The Java example looks like -
List<String> list = new ArrayList<String>();
list.add("11");
list.add("12");
list.add("13");
The Scala example looks like -
val list = List("11", "12", "13")
What
is the superclass of all classes in Scala?
The “Any” class is the superclass of all classes
in Scala.
What
is similar between Scala Int and Java’s java.lang.integer?
Both are used to define Integers, both are
classes and both are 32-bit signed integer.
What
is Scala Seq?
Scala Seq or Scala sequence is a quality that
signifies the indexed sequencing in Scala and which is immutable.
What
is REPL in Scala?
REPL stands for Reading Evaluate Print Loop and
most of people called “Ripple”. It is an interpreter to execute Scala code from
the command prompt.
What
do you mean by Option in Scala?
It is used for wrapping the missing value.
What
makes it so special over other available programming languages?
1. It
is object-oriented in nature
2. Includes
functional programming features as well
3. Reflects
concurrent and synchronize processing ability
What
is the difference between ‘val’ and ‘var’?
If the variable is declared with the keyword
“val” it means it’s immutable, cannot be reassigned to a new value. Mutable variables are declared with the
keyword “var“.
Give
some examples of JVM Language?
Java, Scala, Groovy, and closure are very popular
for JVM language.
What
is Null in Scala?
Null is a Type in Scala. It is available in Scala
package as “scala. Null”.
What
is Scala Trait?
Scala Trait is use to enables the Multiple
Inheritance.
What
are different types of Literals in Scala?
1. Integer
2. Floating
point
3. Boolean
4. Symbol
5. Character
6. String
7. Multi-Line
Stings
What
companies use Scala?
1. LinkedIn
2. Twitter
3. Foursquare
4. Netflix
5. Tumblr
What
are the popular JVM Languages available now?
The most common JVM languages are-
1. Clojure
2. Scala
3. Groovy
4. JRuby
5. Jython
6. Kotlin