Scala Applied, Part 2
What you'll learn
- Understand Scala's composition and inheritance features
- Create abstract classes and pure abstract members (methods and fields)
- Override and overload methods
- Create primary and auxiliary constructors
- Call superclass constructors and methods
- Understand and use parametric fields
- Create factory methods in companion objects
- Construct simple DSLs (Domain Specific Languages)
- Understand top and bottom types and how Scala uses them
- Write correct equals and hashCode methods
- Use traits to mix behavior into classes
- Know the different styles of packages and visibility modifiers
- Be able to import anything from anywhere
- Write pre-conditions and post-conditions
- Test your code with unit testing
Requirements
- Students should follow and complete the Stairway to Scala Setup instructions, available for free on Udemy, before starting this course
- Students should have also completed Stairway to Scala Applied Part 1 or have equivalent skills before starting this course
- Students will need a laptop or desktop computer with sufficient performance and resources to compile and run the coding exercises
Description
Scala Applied, Part 2 covers Scala features that are different from other languages or maybe unique to Scala. It is intended to follow on from Part 1, and dovetails nicely into that flow.
While part 1 covered common concepts from other languages in Scala, part 2 concentrates on the parts of the language that are more specific to Scala and may be unfamiliar when coming from other programming languages, either the features themselves or the syntax for using them, taught by an instructor with over 15 years experience programming in Scala, and more than a dozen years teaching it.
As part of the larger Scala Applied 3 part course, this will prepare you with everything you need for day-to-day development in the Scala language.
In particular, by following this course you will:
Understand Scala's composition and inheritance features
Create abstract classes and pure abstract members (methods and fields)
Override and overload class methods
Create primary and auxiliary constructors
Call superclass constructors and methods
Understand and use parametric fields
Create factory methods in companion objects
Construct simple DSLs (Domain Specific Languages)
Understand top and bottom types and how Scala uses them
Write correct equals and hashCode methods
Use traits to mix behavior into classes
Know the different styles of packages and visibility modifiers
Be able to import anything from anywhere
Write pre-conditions and post-conditions
Test your code with unit testing
Who this course is for:
- Anyone wanting to learn the Scala programming language
- This is part 2 of a 3 part course, please check you have skills equivalent to part 1 before taking this course
- We do assume the student has some programming knowledge in a modern programming language
Instructor
Dick is a Scala Developer with over 15 years of Scala development experience, and more than a dozen years of Scala training experience. As well as consulting in Scala, Dick contributes to a number of open source Scala projects, libraries and tools, and is very active in the Scala developer community. He is also one of the Scalawags, a video podcast about the Scala language. He runs Escalate Software which provides Scala training services. Dick also won the inaugural Phil Bagwell Award for Service to the Scala Community, and managed the Scala Community Process in 2015 through 2016