The Many Shapes of Polymorphism
Offered By: Devoxx via YouTube
Course Description
Overview
Syllabus
Intro
Optical Illusion
Why do we use Types in programming languages?
A type system is a tractable syntactic method for proving the absence of certain program behaviors by classifying phrases according to the kinds of values they compute.'
The need for polymorphism
There are new discoveries in type systems
Hypothesis: the way the Polymorphism is used defines the shape of our code
Let's start working
Let's try (real) subtype polymorphism
We're mixing domain logic and behaviour
Adapter Pattern
Ad-Hoc polymorphism
Type class cannot provide new types at runtime
Mixing different types of polymorphism
Mix subtype polymorphism with generic
Mix generic polymorphism with ad-hoc?
Polyglot programming
Can type classes replace subtype polymorphism?
Are type classes only for Functional Programming language?
Addendum
Thank you for your time Feedback please!
Scala is a bridge from OOP to FP world
Type inference and subtypes
Taught by
Devoxx
Related Courses
Algorithms, Part IPrinceton University via Coursera Introduction à la programmation orientée objet (en Java)
École Polytechnique Fédérale de Lausanne via Coursera MongoDB for Java Developers
MongoDB University Initiation à la programmation (en Java)
École Polytechnique Fédérale de Lausanne via Coursera Intro to Java Programming
San Jose State University via Udacity