The Scala Programming Language Training in Oman

  • Learn via: Online Instructor-Led / Classroom Based / Onsite
  • Duration: 5 Days
  • Price: Please contact for booking options
  • Upcoming Date:
  • UK & Türkiye Based Training Provider

The Scala Programming Language was invented in 2004 in an attempt to bring functional programming to the jvm, and the java development community. It has risen to prominence in recent years as the de-facto language to compliment and replace java in existing teams, and as an advanced and capable language on greenfield projects.

Scala combines advanced techniques long established in the functional programming community with the best practices of object-orientation, allowing developers to pick and chose a style and an approach that suits their team and their problems.

By the end of this course delegates will have a clear understanding of object orientation and functional programming, and in particular, all the major features of scala which enable these styles of programming to be used and combined.

The course is divided in to 15 modules (listed in the overview) delivered over five days with an attention to an interactive Q&A-style approach to teaching and exercise practice.

We can organize this training at your preferred date and location. Contact Us!

Prerequisites

Delegates must have prior programming experience in java or a related object-oriented language.

Training Outline

Day 1

1 Introduction 

  • Why scala?
  • Libraries
  • Static typing
  • Compositional syntax
  • OO
  • Functional
  • Powerful
  • Paradigms
  • OO
  • Functional
  • Running scala
  • Anatomy of scala programs
  • Try the repl
  • Scalac
  • Scala interpreter
  • Sbt

1 Fundamentals

  • Language
  • Objects
  • Calling methods
  • Operators as methods
  • Values and variables
  • Types
  • Basic types
  • Boolean
  • Numeric types
  • Unit
  • Strings
  • String methods
  • Introduction to collections
  • Type arguments
  • Tuples, Lists, Maps

1 Flow

  • Branching, matching & selecting
  • Conditionals
  • Intro to pattern matching
  • Destructuring
  • For comprehensions
  • Yield vs Unit
  • Comprehensions over lists
  • Comprehensions over maps
  • Comprehensions over ranges
  • Option
  • Multiple extraction
  • Guards
  • Ranges
  • Let expressions
  • While loops

Day 2

2 Methods

  • Code blocks
  • Methods
  • Method bodies
  • Returning unit
  • Passing arguments
  • Variadics
  • Def vs val
  • Lazy vals
  • Lazy arguments
  • Recursion

2 Functions

  • What Is Functional Programming?
  • Pure Functions
  • Functions
  • The Function Type
  • ‘Function’ vs Method
  • Higher Order Functions
  • Functions as Data
  • Currying
  • Aside: Type Aliases

2 Collections

  • Review: types
  • Collections heirachy
  • Creating collections
  • Range
  • Array & array buffer
  • List & list buffer
  • Vector
  • Maps
  • Sets
  • Empty
  • Idioms
  • Pattern matching
  • For comprehnsions review
  • Zipping
  • Traits

Day 3

3 Transformation

  • Streams
  • Combinators
  • .map & .flatMap
  • Folding & Reducing
  • .exists and .forall
  • Option
  • For comprehensions
  • Foreach & Flatmap
  • Pattern matching
  • Review
  • Casting
  • Sequences
  • For-yield-match
  • Regex
  • Guards
  • Option

3 OO

  • Classes
  • Reading class definitions
  • Defining classes
  • Constructors
  • Properties
  • Method overloading
  • Java inspection of scala classes
  • Getters and setters
  • Operator methods
  • Objects
  • The object keyword
  • Companions
  • The mechanism of pattern matching
  • Case classes
  • Pattern matching with case classes
  • Aside: case objects

3 Inheritance

  • Inheritance: a type relation
  • Inheritance: class relationship
  • Overriding methods
  • Overriding tostring
  • Calling the parent method
  • Abstracts
  • Traits
  • Trait inheritance
  • Composing objects with traits
  • The meaning of super
  • Traits as mixins
  • Self types
  • Cake pattern
  • Aside: type members

Day 4

4 Design

  • Imports
  • Package objects
  • Algebra
  • Algebraic data types: defining
  • Algebraic data types
  • Example: document store
  • Tuples types
  • Generics
  • Type arguments
  • Variance
  • Special types
  • Option
  • Example: user data
  • Bad: exceptions
  • Try
  • Either

4 SBTest

  • Simple build tool
  • Build files
  • Creating a project
  • Dependencies
  • Project structure
  • Running tests
  • Sbt task runner
  • Testing
  • Type systems as tests
  • Using type systems
  • Assertions
  • Scala test
  • Flatspec
  • Featurespec
  • Matchers

4 Implicits

  • Implicit conversions
  • Implicit conversions: def
  • Implicit conversions: implicit classes
  • Implicit parameters
  • Contexts
  • Scoping
  • Type classes
  • Typeclasses with implicit classes
  • Without typeclasses
  • Typeclasses: generalizing
  • Typeclasses: implicit objects
  • Typeclasses: multiple instances

Day 5

5 HigherKinds

  • Review: Polymorphism
  • Review: Typeclasseses: Monoid
  • Scalaz
  • Sbt for Scalaz
  • Simple Typeclass: Equal
  • Simple Typeclass: Order
  • Simple Typeclass: Implementing Equal
  • Kinds
  • Higher-kinded Types: Functor
  • Generalizing Functor
  • Higher-kinded Types: Applicative
  • Monads

5 Appendix

  • Concurrency
  • Libraries



Why Choose Us

Experience live, interactive learning from the comfort of your home or office with Bilginç IT Academy's Online Instructor-Led The Scala Programming Language Training in Oman. Engage directly with expert trainers in a virtual environment that mirrors the energy and schedule of a physical classroom.

  • Live Sessions: Join scheduled classes with a live instructor and other delegates in real-time.
  • Interactive Experience: Engage in group activities, hands-on labs, and direct Q&A sessions with your trainer and peers.
  • Global Expert Trainers: Learn from a handpicked global pool of expert trainers with deep industry experience.
  • Proven Expertise: Benefit from over 30 years of quality training experience, equipping you with lasting skills for success.
  • Scalable Delivery: Accessible worldwide, including Oman, with flexible scheduling to meet your professional needs.

Immerse yourself in our most sought-after learning style for The Scala Programming Language Training in Oman. Our hand-picked classroom venues in Oman offer an invaluable human touch, providing a focused and interactive environment for professional growth.

  • Highly Experienced Trainers: Boost your skills with trainers boasting 10-20+ years of real-world experience.
  • State-of-the-Art Venues: Learn in high-standard facilities designed to ensure a comfortable and distraction-free experience.
  • Small Class Sizes: Our limited class sizes foster meaningful discussions and a personalized learning journey.
  • Best Value: Achieve your certification with high-quality training and competitive pricing.

Streamline your organization's training requirements with Bilginç IT Academy’s Onsite The Scala Programming Language Training in Oman. Experience expert-led learning at your own business premises, tailored to your corporate goals.

  • Tailored Learning Experience: Customize the training content to fit your unique business projects or specific technical needs.
  • Maximize Training Budget: Eliminate travel and accommodation costs, focusing your entire budget on the training itself.
  • Team Building Opportunity: Enhance team bonding and collaboration through shared learning experiences in your workspace.
  • Progress Monitoring: Track and evaluate your employees' progression and performance with relative ease and direct oversight.


Contact us for more detail about our trainings and for all other enquiries!

The Scala Programming Language Training Course in Oman Schedule

Join our public courses in our Oman facilities. Private class trainings will be organized at the location of your preference, according to your schedule.

We can organize this training at your preferred date and location.
02 May 2026 (5 Days)
Muscat
10 May 2026 (5 Days)
Muscat
23 May 2026 (5 Days)
Muscat
24 May 2026 (5 Days)
Muscat
17 June 2026 (5 Days)
Muscat
01 July 2026 (5 Days)
Muscat
04 July 2026 (5 Days)
Muscat
05 July 2026 (5 Days)
Muscat

Oman is steering towards a tech-driven future under the 'Oman Vision 2040' framework, with Muscat evolving into a center for digital entrepreneurship and advanced telecommunications. The Sultanate is prioritizing the development of a robust digital economy by investing in cybersecurity, artificial intelligence, and electronic government services to enhance national efficiency. Academic excellence from institutions like Sultan Qaboos University provides a strong foundation for research in data science and smart city infrastructure. Our training solutions in Oman focus on bridging the gap between traditional expertise and the demands of the modern high-tech sector. By delivering specialized courses in IT Project Management, Cyber Defense, and Enterprise Systems, we support Omani professionals in their mission to build a sustainable, technologically advanced nation that is fully integrated into the global digital supply chain.

By using this website you agree to let us use cookies. For further information about our use of cookies, check out our Cookie Policy.