Scala Mastering Functional Programming-training-in-bangalore-by-zekelabs

Scala Mastering Functional Programming Training

Scala Mastering Functional Programming Course:

The best way to learn Scala depends on what you know already and the way you prefer to learn things. There is a variety of resources available including books, tutorials, training courses, presentations, and of course the Scala compiler for practice. Many people find a good combination is to have one of the Scala books at hand and to start right away trying the examples with the Scala compiler.

Scala Mastering Functional Programming-training-in-bangalore-by-zekelabs
Scala Mastering Functional Programming-training-in-bangalore-by-zekelabs
Industry Level Projects
Scala Mastering Functional Programming-training-in-bangalore-by-zekelabs

Scala Mastering Functional Programming Course Curriculum

Why Scala?
What About Java ?
Using SBT
Running the Scala REPL in IDEs
A Taste of Concurrency
Method Declarations
Methods with Multiple Argument Lists
Nesting Method Definitions and Recursion
Reserved Words
Integer Literals
Boolean Literals
String Literals
Function Literals
Option, Some, and None: Avoiding nulls
Organizing Code in Files and Namespaces
Imports Are Relative
Abstract Types Versus Parameterized Types
Operator Overloading?
Methods with Empty Argument Lists
Domain-Specific Languages
Scala for Comprehensions
Generator Expressions
Other Looping Constructs
Scala do-while Loops
Using try, catch, and finally Clauses
lazy val
Interpolated Strings
Recap and What’s Next
A Simple Match
Matching on Sequences
Guards in case Clauses
unapply Method
Matching on Variable Argument Lists
More on Binding Variables in case Clauses
Sealed Hierarchies and Exhaustive Matches
Concluding Remarks on Pattern Matching
Implicit Arguments
Scenarios for Implicit Arguments
Implicit Evidence
Improving Error Messages
Rules for Implicit Arguments
Build Your Own String Interpolator
Type Class Pattern
Implicit Resolution Rules
Wise Use of Implicits
What Is Functional Programming?
Variables That Aren’t
Anonymous Functions, Lambdas, and Closures
Trampoline for Tail Calls
Currying and Other Transformations on Functions
Flat Mapping
Folding and Reducing
Tail Recursion Versus Traversals of Infinite Collections
What About Making Copies?
Recap: The Elements of for Comprehensions
Translation Rules of for Comprehensions
Option as a Container
Try: When There Is No Do
Recap and What’s Next
Class and Object Basics
Value Classes
Constructors in Scala
The Uniform Access Principle
Validating Input
Good Object-Oriented Design: A Digression
Recap and What’s Next
Interfaces in Java
Stackable Traits
Class or Trait?
Parameterized Types: Variance Under Inheritance
Variance of Mutable Types
The Scala Type Hierarchy
Products, Case Classes, and Tuples
Implicit Conversions
Condition Checking Methods
Miscellaneous Methods
The equals Method
The eq and ne Methods
Recap and What’s Next
Overriding Members of Classes and Traits
Attempting to Override final Declarations
Overriding Abstract and Concrete Fields
When Accessor Methods and Fields Are Indistinguishable: The Uniform
Linearization of an Object’s Hierarchy
Generic, Mutable, Immutable, Concurrent, and Parallel Collections, Oh My!
The collectionconcurrent Package
The collectiongeneric Package
The scalacollectionmutable Package
Choosing a Collection
Like Traits
Public Visibility: The Default
Public Visibility
Private Visibility
Final Thoughts on Visibility
Parameterized Types
Type Constructors
Type Bounds
Lower Type Bounds
View Bounds
Comparing Abstract Types and Parameterized Types
Structural Types
Type Refinements
Recap and What’s Next
Path-Dependent Types
Dependent Method Types
Singleton Types
Tuple Types
Infix Types
Type Lambdas
Recap and What’s Next
Algebraic Data Types
Properties of Algebraic Data Types
Category Theory
The Functor Category
The Importance of Monad
The scalasysprocess Package
Akka: Actors for Scala
Pickling and Spores
Recap and What’s Next
Big Data: A Brief History
Moving Beyond MapReduce
A List of Scala-Based Data Tools
A Motivating Example: ActiveRecord in Ruby on Rails
DSL Considerations
Examples: XML and JSON DSLs for Scala
External DSLs with Parser Combinators
A Payroll External DSL
Recap and What’s Next
Command-Line Tools
The scala Command-Line Tool
The scaladoc Command-Line Tool
Build Tools
Other Build Tools
Text Editors
Third-Party Libraries
Using Java Names in Scala Code
JavaBean Properties
Scala Names in Java Code
Recap of What We Already Know
Traits as Modules
Creational Patterns
Behavioral Patterns
The Parthenon Architecture
Tools for Understanding Types
Reflecting on Types
Scala’s Advanced Runtime Reflection API
A Macro Example: Enforcing Invariants
Wrapping Up and Looking Ahead

Frequently Asked Questions

This "Scala Mastering Functional Programming" course is an instructor-led training (ILT). The trainer travels to your office location and delivers the training within your office premises. If you need training space for the training we can provide a fully-equipped lab with all the required facilities. The online instructor-led training is also available if required. Online training is live and the instructor's screen will be visible and voice will be audible. Participants screen will also be visible and participants can ask queries during the live session.

Participants will be provided "Scala Mastering Functional Programming"-specific study material. Participants will have lifetime access to all the code and resources needed for this "Scala Mastering Functional Programming". Our public GitHub repository and the study material will also be shared with the participants.

All the courses from zekeLabs are hands-on courses. The code/document used in the class will be provided to the participants. Cloud-lab and Virtual Machines are provided to every participant during the "Scala Mastering Functional Programming" training.

The "Scala Mastering Functional Programming" training varies several factors. Including the prior knowledge of the team on the subject, the objective of the team learning from the program, customization in the course is needed among others. Contact us to know more about "Scala Mastering Functional Programming" course duration.

The "Scala Mastering Functional Programming" training is organised at the client's premises. We have delivered and continue to deliver "Scala Mastering Functional Programming" training in India, USA, Singapore, Hong Kong, and Indonesia. We also have state-of-art training facilities based on client requirement.

Our Subject matter experts (SMEs) have more than ten years of industry experience. This ensures that the learning program is a 360-degree holistic knowledge and learning experience. The course program has been designed in close collaboration with the experts working in esteemed organizations such as Google, Microsoft, Amazon, and similar others.

Yes, absolutely. For every training, we conduct a technical call with our Subject Matter Expert (SME) and the technical lead of the team that undergoes training. The course is tailored based on the current expertise of the participants, objectives of the team undergoing the training program and short term and long term objectives of the organisation.

Drop a mail to us at [email protected] or call us at +91 8041690175 and we will get back to you at the earliest for your queries on "Scala Mastering Functional Programming" course.

Recommended Courses

Recommended Courses