Coursera offers the Functional Programming Principles in Scala online course in association with EPFL (École Polytechnique Fédérale de Lausanne) which is a renowned research university in Lausanne, Switzerland. The instructor for this course is Professor Martin Odersky, who has devoted most of his career to programming languages. Learn from Prof. Martin and get the best educational experience in the field of functional programming.
The Functional Programming Principles in Scala course has modules spread out over 6 weeks; the course can be completed in approximately 45 hours. Discover the components of functional programming style with this comprehensive curriculum and apply them practically.
Besides, the Functional Programming Principles in Scala certification course also promotes interaction and improvement of one’s core abilities in a fun and relaxed way. Enjoy intermittent programming assignments to get a grip on the practical aspect of the course. Coursera will award you a certificate upon successful completion of this course, allowing you to share your skills and specialization.
The Highlights
Intermediate level course
Self-paced learning
Shareable certificate
Flexible deadlines
Financial assistance
Practice quizzes
Programming assignments
Pre-recorded videos
Lectures in English
Subtitles available in English, Korean, French, Serbian
Programme Offerings
online learning
Certificate
Discussion boards
Graded Quizzes and assignment
Email Updates and Communication
Course Completion in Approximately 45 Hours
Shareable Certificate
free enrollment
Experienced Instructors
Courses and Certificate Fees
Certificate Availability
Certificate Providing Authority
yes
Coursera
Functional Programming Principles in Scala Fees details :
Particulars
Amount
Course Fee, 1 Month
Rs. 1,676
Course Fee, 3 Month
Rs. 3,369
Course Fee, 6 Month
Rs. 5,029
Eligibility Criteria
For satisfactory completion of the Functional Programming Principles in Scala certification course, candidates need to have at least a year of programming experience. They must be fluent in C/C++, Java, or other languages like Javascript, Ruby, Python. Additionally, candidates should be familiar with using the command line.
What you will learn
Programming skills
Upon successful completion of all the modules present in the Functional Programming Principles in Scala certification course, you will have:
Grasp the principles of functional programming
Design immutable data structures
write purely functional programs with the help of recursion, higher-order functions and pattern matching
Combining functional programming with classes and objects
Use the following steps to apply for the Functional Programming Principles in Scala certification course by Coursera:
Step 1. Log on to the website of Coursera.
Step 2. In the course catalogue, look for the ‘Functional Programming Principles in Scala course’ and open the page.
Step3. Click on the ‘Enroll for Free’ button present at the top of the page.
Step 4. Next, you need to sign-up for Coursera using your Google or email address.
Step 5. If you have opted for the paid version and want a course completion certificate, make the payment. Otherwise, you can audit the certification course for free.
Application Details
To join the Functional Programming Principles in Scala certification course, you will have to fill in your personal details. If you are already registered, log in with credentials, otherwise, set up your account. When you are finished logging in, you will get access to the course content. Coursera offers a 7-day free trial option to all the candidates.
The Syllabus
Videos
Course Introduction
Lecture 1.1 - Programming Paradigms
Lecture 1.2 - Elements of Programming
Lecture 1.3 - Evaluation Strategies and Termination
Lecture 1.4 - Conditionals and Value Definitions
Lecture 1.5 - Example: square roots with Newton's method
Lecture 1.6 - Blocks and Lexical Scope
Lecture 1.7 - Tail recursion
Readings
Working on Assignments
Tools Setup (Please read)
Scala 3 REPL and Worksheets
Cheat Sheet
SBT tutorial and Submission of Assignments (Please read)
Learning Resources
Scala Style Guide
Assignments
Programming Paradigms
Elements of Programming
Evaluation Strategies and Termination
Square roots with Newton's method
Blocks and Lexical Scope
Tail recursion
Learning check-in
Programming Assignments
Example
Recursion
Recursion
Videos
Week 2: Course Introduction
Lecture 2.1 - Higher-order functions
Lecture 2.2 - Currying
Lecture 2.3 - Example: Finding Fixed Points
Lecture 2.4 - Scala Syntax Summary
Lecture 2.5 - Functions and Data
Lecture 2.6 - More Fun With Rationals
2.7 - Evaluations and Operators
Assignments
Higher-order functions
Currying
Functions and data
More Fun With Rationals
Evaluations and Operators
Programming Assignments
Functional Sets
Functional Sets
Videos
Week 3: Introduction
Lecture 3.1 - Class hierarchies
Lecture 3.2 - How classes are organized
Lecture 3.3 - Polymorphism
Lecture 3.4-Objects Everywhere
Lecture 3.5-Functions as Objects
Assignments
Class hierarchies
How classes are organized
Polymorphism
Scala is functional and objected-oriented
Programming Assignments
Object-Oriented Sets
Object-Oriented Sets
Videos
Week 4: Introduction
Lecture 4.1 - Decomposition
Lecture 4.2 - Pattern Matching
Lecture 4.3 - Lists
Lecture 4.4 - Enums
Lecture 4.5 - Subtyping and Generics
Lecture 4.6 - Variance
Assignments
Decomposition
Pattern Matching
Lists
Enums
Subtyping and Generics
Variance3
Programming Assignments
Huffman Coding
Huffman Coding
Videos
Week 5: Introduction
Lecture 5.1 - A Closer Look at Lists
Lecture 5.2 - Tuples and Generic Methods
Lecture 5.3 - Higher-order list functions
Lecture 5.4 - Reduction of Lists
Lecture 5.5 - Reasoning about lists
Assignments
A Closer Look at Lists
Tuples and Generic Methods
Higher-order list functions
Reduction of Lists
Reasoning about list
Videos
Week 5: Introduction
Lecture 6.1 - Other Collections
Lecture 6.2 - Combinatorial Search and For-Expressions