Covers the basics of functional programming in Scala, including evaluation strategies, conditionals, and value definitions, with a focus on computing square roots with Newton's method.
Explores the core features of object-oriented programming, including dynamic dispatch, encapsulation, inheritance, and subtyping, using Java examples and practical insights.