Kickstart your career with best deals on top training courses NY10 Click to Copy

Advanced Scala Training

Advanced Scala Course

  • 24 hours of Instructor-led sessions
  • Understand Scala and its uses and aspects of the object-functional approach
  • Grasp the advanced features of Scala & about implicit and type classes
  • Understand how to create libraries and DSLs with Scala
  • In-depth hand-on training classes
Group Discount

Overview

This advanced Scala course will help you master the concepts needed to fully leverage the Scala tool and develop powerful applications with it. With a lot of focus on hands-on coaching and current industry trends, this is the perfect course for those who want to get ahead in their career in Scala.

Scala is among the most popular programming languages and powers the code of several top websites around the world including Twitter, LinkedIn and The Guardian. Built on top of the Java virtual machine, Scala offers all the advantages of an object oriented programming language including code reuse and recycling, encapsulation, code maintenance, code optimization and speed. It is among the highest paying technologies and there are lot of job opportunities for Scala experts. In this workshop you will master its more advanced concepts such as Scala’s type system, implicit and advanced object-functional programming to create well designed DSLs. Enroll now and get started on a brilliant career in Scala.

What You Will Learn:

  • Understand Scala and its uses and aspects of the object-functional approach

  • Learn the advanced features of Scala and its type system and their uses

  • Learn about implicit and type classes

  • Understand how to create libraries and DSLs with Scala

Prerequisite

Participants are expected to have:

  • Understanding of basic Scala concepts
  • Hands-on experience in Scala programming

Who Should Attend

  • Scala programmers who wish to learn the more advanced and nuanced features of Scala

Knowledgehut Experience

Instructor-led Live Classroom

Interact with our expert instructors in real-time— listen, learn, question and apply.

Curriculum Designed by Experts

Stay globally relevant and empower yourself with the latest tools and training through our in-depth curriculum.

Learn through Doing

Learn theory backed by practical case studies, exercises and coding practice that will make you ready for the industry.

Mentored by Industry Leaders

Learn from the best in the field. Our mentors are all experienced professionals in the fields they teach.

Advance from the Basics

Learn concepts from scratch, and advance your learning through step-by-step guidance on tools and techniques.

Code Reviews by Professionals

Get reviews and feedback on your final projects from professional developers.

Curriculum

Learning Objectives:

Learn Scala as a JVM language, also learn about the differences between objection-oriented programming and functional programming.

  • Introduction
  • Scala as a JVM language
  • Objection-oriented programming vs functional programming

Learning Objectives:

Learn about the elements in object - functional programming.

  • Tail recursion
  • Partial functions
  • Currying and partial function application
  • Closures
  • Lazy evaluation

Hands-on: 

Implement object-functional programming and use tail recursion, partial functions.

Learning Objectives:

Learn about traits, types and type bounds and master in the Scala type system.

  • About traits
  • Structural types
  • Path dependent types
  • Self types
  • Covariance and contravariance
  • Type bounds

Hands-on: 

Implement to use Structural types, path dependent types, type bounds.

Learning Objectives:

Learn about advanced pattern matching using extractors.

  • Deep matching
  • Using extractors

Hands-on:

Implement to use extractors.

Learning Objectives:

Learn to use Scala implicit for conversion, classes and parameters.

  • Implicit conversion, classes and parameters
  • Type class pattern
  • Context and view bounds

Hands-on: 

Use Type class pattern, context and view bounds. 

Learning Objectives:

Learn about control structures and internal DSLs. 

  • Custom control structures with by-name parameters
  • Building well-designed libraries and internal DSLs

Hands-on:

Build internal DSLs

Learning Objectives: 

Learn to work with Streams, manifest, Builders and other Scala collections.

  • Working with Streams
  • Manifests and class tags
  • Builders
  • CanBuildFrom
  • Building custom collections

Hands-on:  

Create manifests and class tags and use Builders.

Learning Objectives: 

Learn to use exception handling and using Try for comprehensions.

  • Traditional exception handling
  • Functional exception handling
  • Using Try with For comprehensions

Hands-on: 

Implement to use functional exception handling.

Project

Project

Towards the end of the course, all participants will be required to work on a project to get hands-on familiarity with the concepts learned. You will use Scala advanced features and write code with full support from your mentors. This project, which can also be a live industry project, will be reviewed by our instructors and industry experts.

Testimonial

Attended a 2 day weekend course by Knowledgehut for the CSM certification. The instructor was very knowledgeable and engaging. Excellent experience.

Review image

Jin Shi

Director at Timber creek Asset Management from Toronto, Canada

The CSPO Training was awesome and great. The trainer Anderson made all the concepts look so easy and simple. Using his past experience as examples to explain various scenarios was a plus. Moreover, it was an active session with a lot of participant involvement which not only made it interactive but interesting as well. Would definitely recommend this Training.

Review image

Richard Dsouza

Business Analyst at Valtech from Bangalore, India

Great course. An interesting and interactive session to better understand how to succeed in formulating a business case and how to present it effectively.

Review image

Wily Salim

Services Project Engineer at Lendlease from Sydney, Australia

The training was very interactive and engaging with the attendees.

Review image

Anish Maidh

Senior Project Manager at Telstra from Melbourne, Australia

Faq

The Course

Scala is a very popular and in-demand language. It is among the most sought after skills in the industry since it is difficult to master and the demand for Scala developers far outweighs the supply. This is why Scala developers are among the highest paid in the industry,  earning salaries of upto $104,590 annually. 

If you have already pursued the Scala 101 course then this is the perfect course for you to learn its advanced features and get ready to face industry challenges. Enrol now and get started on a brilliant career.

  • You will be proficient in coding using Scala
  • You will have knowledge of object oriented basics
  • You will be able to build internal DSLs

On completing the Scala training online, you will learn:

  • Object-functional programming in detail
  • The type system and its power
  • Implicit classes in Scala
  • How to build internal DSLs
  • About custom Scala Collections

Participants need to have Scala beginner’s knowledge.Application developers or programming experts who wish to master Scala will find this course useful.

Yes, KnowledgeHut offers this training online.

On successful completion of the course you will receive a course completion certificate issued by KnowledgeHut.

Your instructors are object oriented programming and Scala experts who have years of industry experience.

Finance Related

Any registration cancelled within 48 hours of the initial registration will be refunded in FULL (please note that all cancellations will incur a 5% deduction in the refunded amount due to transactional costs applicable while refunding) Refunds will be processed within 30 days of receipt of written request for refund. Kindly go through our Refund Policy for more details: http://www.knowledgehut.com/refund

KnowledgeHut offers a 100% money back guarantee if the candidate withdraws from the course right after the first session. To learn more about the 100% refund policy, visit our Refund Policy.

The Remote Experience

In an online classroom, students can log in at the scheduled time to a live learning environment which is led by an instructor. You can interact, communicate, view and discuss presentations, and engage with learning resources while working in groups, all in an online setting. Our instructors use an extensive set of collaboration tools and techniques which improves your online training experience.

Minimum Requirements:

  • Operating system such as Mac OS X, Windows or Linux
  • A modern web browser such as FireFox, Chrome
  • Internet Connection 

Have More Questions?