LEARNING PATH: Scala: Scala Programmer - Beginner to Expert!

Course

Online

£ 40 + VAT

Description

  • Type

    Course

  • Methodology

    Online

  • Start date

    Different dates available

Optimize your code with advanced tips and tricks to increase your Scala code's efficiency and become an expert with the most useful Scala recipesScala is a powerful multi-purpose programming language that is much appreciated for its simple object-oriented, functional style. Pattern matching is Scala's tremendous ability to deconstruct data in intuitive and readable ways, letting you write safely in a few lines of code what other languages can take tens of buggy lines to get across.This course is an easy-to-follow guide full of examples to help you, push your applications from good enough to great!This comprehensive 3-in-1 course is an easy-to-follow guide full of examples to help you gain an in-depth understanding of Scala. Build classes that compose one or more traits for complete re-usability, or create new functionality by fusing them at instantiation. Save time and trouble by using Scala to build object-oriented, functional, Reactive, and concurrent applications. Harness the power of Scala for highly scalable and distributed, microservice- based applications.About the AuthorAntonio Salazar CardozoAntonio Salazar Cardozo is a developer who has led small teams from his classes at Georgia Tech and through each company he has contributed to. He is a software pragmatist and perfectionist who values great software that is written for humans first, and loves to help teams find the development and interaction styles that make them deliver the best software to solve the problems they are solving. Between startups and larger companies, he has worked on most aspects of web and non-web systems, and loves to see how each piece of software is received and how it can improve. When he's not leaving honest, extensive code review, he's been known to travel and enjoys visiting both new and old places far from home.

Facilities

Location

Start date

Online

Start date

Different dates availableEnrolment now open

About this course

Master core language principles such as strings, classes, and types to write better Scala code
Explore OOP concepts for Scala programming
See how functional programming changes your Scala code
Use concurrency to enhance your Scala coding with the Akka framework
Work with databases in Scala
Build micro services with Reactive programming
Get better code feedback with Scala REPL
Use Pattern matching to write safe code
Create advanced functionalities in your code using patterns
Learn to test your code using the spec2 library
Incorporate Functional Programming in your code
Tips and tricks to add more functionality in your programs
Use operations to optimize your codeDebug
Profile your code using useful Java libraries
Incorporate Scala support in practical scenarios

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question

Emagister S.L. (data controller) will process your data to carry out promotional activities (via email and/or phone), publish reviews, or manage incidents. You can learn about your rights and manage your preferences in the privacy policy.

Reviews

This centre's achievements

2021

All courses are up to date

The average rating is higher than 3.7

More than 50 reviews in the last 12 months

This centre has featured on Emagister for 6 years

Subjects

  • Programming
  • Import
  • Project
  • Web
  • Philosophy
  • Works
  • Object-oriented training
  • Java
  • Object oriented training
  • Options
  • Inheritance

Course programme

Scala Beginner Programming Recipes 16 lectures 03:43:05 Scala Beginner Programming Recipes - The Course Overview This video provides an overview of the entire course. Setting Up Ammonite-REPL Get set up with ammonite REPL and understand the basics of interacting with Scala there.
  • Download and run ammonite REPL
  • Run basic commands in the REPL
  • Import third-party libraries in the REPL
Getting a Basic Scala Project Set Up on the Command Line Set up a basic sbt project with some source files and understand basic sbt commands.
  • Download and run sbt
  • Build and run a simple project with sbt
  • Experiment with some of sbt’s commands
Setting Up Dependencies and Publishing in sbt Set up dependencies to third-party libraries and publishing to a repository using sbt.
  • Update build.sbt to reference third-party libraries
  • Build a project that uses those third-party libraries
  • Explore options for publishing a packaged project using sbt
Setting Up a Multi-Module sbt Project Set up a project that contains and depends on multiple subprojects with functionality that can be reused.
  • Split a project up until multiple subdirectories
  • Set up interproject dependencies
  • Split build.sbt into builds for each subdirectory
Importing an sbt Project Into IntelliJ IDEA Import an existing sbt project from 1.4 into IntelliJ IDEA and interact with it, seeing some of the similarities and differences.
  • Download and set up IntelliJ IDEA for Scala development
  • Import the sbt project from 1.4 into IDEA
  • Explore the various tools that IntelliJ provides for interacting with a project
Scala Philosophy: Everything is an Expression Understand what it means for everything to be an expression in the Scala language.
  • Look at val as a data holder
  • Look at how if/else can be used as an expression
  • Look at how functions with side effects and no return are represented
Basic Data Types: Strings and Numbers Understand the basic functionality of strings and numbers in Scala and compare to Java.
  • Investigate basic strings and interpolation
  • Explore numbers and math helpers in Scala
  • Compare Scala and Java handling of strings and numbers
Functions and Match Statements Understand how to define functions and how match statements interact with function definitions.
  • Define a simple function
  • Explore how arguments, return types, and varargs work
  • Use a match statement inside a function bo
Scala Philosophy: Null Allergies and Option Understand what it means to avoid null and how the option type allows one to avoid nulls wherever possible.
  • Explore the two forms of the option data type: some and none
  • Use option as an alternative to null
  • Investigate functionality provided for interacting with options easily
Collection Basics Explore the basics of collections, including Scala’s idioms for iteration and per-element actions.
  • Use simple iteration with foreach
  • Use map, filter, and find for more complex targeted iteration tasks
  • Pair map with a match statement for advanced idiomatic filtering
Basic for Comprehensions Gain an acquaintance with the for comprehension and how it simplifies and streamlines the operations discussed in section 2.5.
  • Understand how flatMap works
  • Look at for as an alternative to map, flatMap, and filter
  • Explore different types and how they interact with for comprehensions
Generic Collection Operations Explore the operations that collapse collections into single values of a different type and their variations.
  • Use reduce for simple combining operations
  • Understand foldLeft as a more flexible alternative to reduce
  • Understand foldRight and how it differs from foldLeft
Quick Introduction to Object-Oriented Scala Map basic object-oriented concepts to their Scala equivalents/implementations.
  • Create classes with private and public instance variables
  • Explore Scala’s advanced visibility modifiers
  • Understand how to use traits as interfaces and how abstract classes work in Scala
Additional Trait Features Understand more complex trait use cases and how they allow for multiple inheritance.
  • Create a multiple inheritance tree with Scala traits
  • Understand how trait linearization works to address multiple inheritance complexities
  • Understand the idiomatic usage of def and val in traits
Singletons Explore Scala’s first-class support for singletons and some of their use cases.
  • Create a basic singleton in Scala
  • Create a companion object and understand how it compares to Java statics
  • Use a singleton to define a main entry point for a Scala program
Scala Beginner Programming Recipes - Test your knowledge Scala Beginner Programming Recipes. 16 lectures 03:43:05 Scala Beginner Programming Recipes - The Course Overview This video provides an overview of the entire course. Setting Up Ammonite-REPL Get set up with ammonite REPL and understand the basics of interacting with Scala there.
  • Download and run ammonite REPL
  • Run basic commands in the REPL
  • Import third-party libraries in the REPL
Getting a Basic Scala Project Set Up on the Command Line Set up a basic sbt project with some source files and understand basic sbt commands.
  • Download and run sbt
  • Build and run a simple project with sbt
  • Experiment with some of sbt’s commands
Setting Up Dependencies and Publishing in sbt Set up dependencies to third-party libraries and publishing to a repository using sbt.
  • Update build.sbt to reference third-party libraries
  • Build a project that uses those third-party libraries
  • Explore options for publishing a packaged project using sbt
Setting Up a Multi-Module sbt Project Set up a project that contains and depends on multiple subprojects with functionality that can be reused.
  • Split a project up until multiple subdirectories
  • Set up interproject dependencies
  • Split build.sbt into builds for each subdirectory
Importing an sbt Project Into IntelliJ IDEA Import an existing sbt project from 1.4 into IntelliJ IDEA and interact with it, seeing some of the similarities and differences.
  • Download and set up IntelliJ IDEA for Scala development
  • Import the sbt project from 1.4 into IDEA
  • Explore the various tools that IntelliJ provides for interacting with a project
Scala Philosophy: Everything is an Expression Understand what it means for everything to be an expression in the Scala language.
  • Look at val as a data holder
  • Look at how if/else can be used as an expression
  • Look at how functions with side effects and no return are represented
Basic Data Types: Strings and Numbers Understand the basic functionality of strings and numbers in Scala and compare to Java.
  • Investigate basic strings and interpolation
  • Explore numbers and math helpers in Scala
  • Compare Scala and Java handling of strings and numbers
Functions and Match Statements Understand how to define functions and how match statements interact with function definitions.
  • Define a simple function
  • Explore how arguments, return types, and varargs work
  • Use a match statement inside a function bo
Scala Philosophy: Null Allergies and Option Understand what it means to avoid null and how the option type allows one to avoid nulls wherever possible.
  • Explore the two forms of the option data type: some and none
  • Use option as an alternative to null
  • Investigate functionality provided for interacting with options easily
Collection Basics Explore the basics of collections, including Scala’s idioms for iteration and per-element actions.
  • Use simple iteration with foreach
  • Use map, filter, and find for more complex targeted iteration tasks
  • Pair map with a match statement for advanced idiomatic filtering
Basic for Comprehensions Gain an acquaintance with the for comprehension and how it simplifies and streamlines the operations discussed in section 2.5.
  • Understand how flatMap works
  • Look at for as an alternative to map, flatMap, and filter
  • Explore different types and how they interact with for comprehensions
Generic Collection Operations Explore the operations that collapse collections into single values of a different type and their variations.
  • Use reduce for simple combining operations
  • Understand foldLeft as a more flexible alternative to reduce
  • Understand foldRight and how it differs from foldLeft
Quick Introduction to Object-Oriented Scala Map basic object-oriented concepts to their Scala equivalents/implementations.
  • Create classes with private and public instance variables
  • Explore Scala’s advanced visibility modifiers
  • Understand how to use traits as interfaces and how abstract classes work in Scala
Additional Trait Features Understand more complex trait use cases and how they allow for multiple inheritance.
  • Create a multiple inheritance tree with Scala traits
  • Understand how trait linearization works to address multiple inheritance complexities
  • Understand the idiomatic usage of def and val in traits
Singletons Explore Scala’s first-class support for singletons and some of their use cases.
  • Create a basic singleton in Scala
  • Create a companion object and understand how it compares to Java statics
  • Use a singleton to define a main entry point for a Scala program
Scala Beginner Programming Recipes - Test your knowledge Scala Beginner Programming Recipes - The Course Overview This video provides an overview of the entire course. Scala Beginner Programming Recipes - The Course Overview This video provides an overview of the entire course. Scala Beginner Programming Recipes - The Course Overview This video provides an overview of the entire course. Scala Beginner Programming Recipes - The Course Overview This video provides an overview of the entire course. This video provides an overview of the entire course. This video provides an overview of the entire course. Setting Up Ammonite-REPL Get set up with ammonite REPL and understand the basics of interacting with Scala there.
  • Download and run ammonite REPL
  • Run basic commands in the REPL
  • Import third-party libraries in the REPL
Setting Up Ammonite-REPL Get set up with ammonite REPL and understand the basics of interacting with Scala there.
  • Download and run ammonite REPL
  • Run basic commands in the REPL
  • Import third-party libraries in the REPL
Setting Up Ammonite-REPL Get set up with ammonite REPL and understand the basics of interacting with Scala there.
  • Download and run ammonite REPL
  • Run basic commands in the REPL
  • Import third-party libraries in the REPL
Setting Up Ammonite-REPL Get set up with ammonite REPL and understand the basics of interacting with Scala there.
  • Download and run ammonite REPL
  • Run basic commands in the REPL
  • Import third-party libraries in the REPL
Get set up with ammonite REPL and understand the basics of interacting with Scala there.
  • Download and run ammonite REPL
  • Run basic commands in the REPL
  • Import third-party libraries in the REPL
Get set up with ammonite REPL and understand the basics of interacting with Scala there.
  • Download and run ammonite REPL
  • Run basic commands in the REPL
  • Import third-party libraries in the REPL
Getting a Basic Scala Project Set Up on the Command Line Set up a basic sbt project with some source files and understand basic sbt commands.
  • Download and run sbt
  • Build and run a simple project with sbt
  • Experiment with some of sbt’s commands
Getting a Basic Scala Project Set Up on the Command Line Set up a basic sbt project with some source files and understand basic sbt commands.
  • Download and run sbt
  • Build and run a simple project with sbt
  • Experiment with some of sbt’s commands
Getting a Basic Scala Project Set Up on the Command Line Set up a basic sbt project with some source files and understand basic sbt commands.
  • Download and run sbt
  • Build and run a simple project with sbt
  • Experiment with some of sbt’s commands
Getting a Basic Scala Project Set Up on the Command Line Set up a basic sbt project with some source files and understand basic sbt commands.
  • Download and run sbt
  • Build and run a simple project with sbt
  • Experiment with some of sbt’s commands
Set up a basic sbt project with some source files and understand basic sbt commands.
  • Download and run sbt
  • Build and run a simple project with sbt
  • Experiment with some of sbt’s commands
Set up a basic sbt project with some source files and understand basic sbt commands.
  • Download and run sbt
  • Build and run a simple project with sbt
  • Experiment with some of sbt’s commands
Setting Up Dependencies and Publishing in sbt Set up dependencies to third-party libraries and publishing to a repository using sbt.
  • Update build.sbt to reference third-party libraries
  • Build a project that uses those third-party libraries
  • Explore options for publishing a packaged project using sbt
Setting Up Dependencies and Publishing in sbt Set up dependencies to third-party libraries and publishing to a repository using sbt.
  • Update build /p Scala...

Additional information

Prior programming experience of Java is assumed Basic knowledge of OOP concepts will be useful

LEARNING PATH: Scala: Scala Programmer - Beginner to Expert!

£ 40 + VAT