Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Professional Scala
Rating: 4.2 out of 5(13 ratings)
111 students

Professional Scala

Combine object-oriented and functional programming to build high-performance applications
Last updated 12/2019
English

What you'll learn

  • Understand the key language syntax and core concepts for application development
  • Master the type system to create scalable type-safe applications while cutting down your time spent debugging
  • Understand how you can work with advanced data structures via built-in features such as the Collections library
  • Use classes, objects, and traits to transform a trivial chatbot program into a useful assistant
  • Understand what are pure functions, immutability, and higher-order functions
  • Recognize and implement popular functional programming design patterns

Course content

8 sections59 lectures8h 39m total length
  • Course Overview3:24

    This video gives an overview of the entire course.

  • Installation and Setup12:30

    In this video, we will set up our environment for the course.

  • Lesson Overview2:36

    This video gives an overview of the entire lesson.

  • Simple Program7:15

    In this video, we will be covering the structure of a basic Scala program. We will be covering definitions such as packages, imports, and objects. We will also be looking into the main method of a Scala program.   

  • Structure of a Scala Project19:21

    In this video, we will look at the structure of a Scala project in more detail.

  • Base Syntax9:57

    Now that we can use REPL, this video will explain the base Scala syntax.   

  • Unit Testing (Part 1)15:07

    In this video, we will learn about the different tools that are used for unit testing in Scala.     

  • Unit Testing (Part 2)15:12

    In this video, we will learn to:

    ●      Run tests for our chatbot

    ●      Add the second test, which checks bye

    ●      Add the date command to our chatbot program

  • Summary0:51

    This section summarizes what we have learned in the earlier topics.

  • Test Your Knowledge

Requirements

  • Prior knowledge of Java is required.

Description

Professional Scala teaches  you how to build and contribute to Scala programs, recognizing common  patterns and techniques used with the language. You'll learn how to  write concise, functional code with Scala. After an introduction to core  concepts, syntax, and writing example applications with scalac, you'll  learn about the Scala Collections API and how the language handles type  safety via static types out-of-the-box. You'll then learn about advanced  functional programming patterns, and how you can write your own Domain  Specific Languages (DSLs). By the end of the course, you'll be equipped  with the skills you need to successfully build smart, efficient  applications in Scala that can be compiled to the JVM. 

About the Authors

Nimish Narang has a degree  in biology and computer science. He has worked with application  development and machine learning. His recent achievement was building  the biggest ever mobile machine learning course which has many different  machine learning and deep learning models in Python and translated into  both Android and iOS applications to incorporate some elements of  machine learning into mobile application. 

Joao Azevedo is a Software Engineer currently working at ShiftForward, where he is involved in the development of large-scale systems for the online advertising industry. His interests in computer science usually revolve around artificial intelligence, machine learning, data mining, algorithms, data structures and programming language theory. He is fond of reading computer science textbooks and science-fiction novels. He makes an effort to keep as much of the code he writes open-source.

Mads Hartmann is a software engineer with a fondness for automation and programming languages, especially statically typed functional ones. He holds a masters degree in computer science from the University of Copenhagen and he is currently working as a full-stack engineer at Family. He is active in the Copenhagen developer scene and he has organized a meetup group for people interested in Scala and co-organized a meetup group for people generally interested in programming languages.

Ruslan Shevchenko is a system architect and a software developer who is focused on building reliable software systems. He specializes in programming languages and frameworks such as Scala, Java (J2SE, J2EE, Android), O/R Mapping, C++ , C, JavaScript, Perl, Tcl, and TermWare. The domains he specializes in are telecommunications, OSS/billing systems, finance, code analysis, social integration, system utilities architecture domains, large-scale software systems, and distributed processing. In terms of architecture, his specialist domains are large-scale software systems and distributed processing.

Who this course is for:

  • This is an ideal course for developers who are looking to learn Scala and is particularly well suited for Java developers looking to migrate across to Scala for application development on the JVM.