Scala Object-Oriented Programming

More Information
Learn
  • Learn to write truly object-oriented code, without ever resorting to static methods
  • Use mixin inheritance to transcend the restrictions typically associated with hierarchical inheritance
  • Fully understand mixin, composition, and classical inheritance, and when to apply each to solve your domain problem
  • Develop modular reusable code and swap between a MySQL and a NoSQL storage engine with just one line of code
  • Use the Option monad to avoid NullPointerException
  • Get familiar with the native support for XML to prevent JavaScript injection and other security flaws in your web apps
  • Be a type-system guru: know the difference between �covariance� and �contravariance�, �bottom type� and �unit type�, and when to use each one
  • Detect and prove the non-existence of large classes of bugs without even needing to run your program
  • Learn how to manually detect and fix the bugs in your JVM application, and how you can automatically sidestep them in Scala
About

Scala smoothly integrates object-oriented and functional programming. It is designed to express common programming patterns in a concise, elegant, and typesafe way. Pattern matching over class hierarchies uni?es functional and object-oriented data access, which greatly simpli?es the processing of XML trees.

This book uses your existing Java knowledge as a springboard to accelerate into the advanced topic of object-oriented design using Scala. You will develop applications using OOP principles and methods. This book allows the reader to go from a competent Java programmer, dipping his or her toe into Scala, to a full-fledged productive Scala programmer ready to employ Scala in a real working environment.
 
The book starts with the mechanics of the Scala language such as the �object� and �trait� keywords as building blocks to show the types of patterns that a fluent Scala programmer would regularly employ, such as companion-classes and mixin inheritance. This will make you comfortable with intermediate topics and will help you to move on to the advanced global view of object-oriented design such as the Liskov Subtitution Principle, modular design and design-by-contract, and how it can be applied in Scala programming.


Scala Object-Oriented Programming will enhance your knowledge from what you already know by working with Java, and so it is the fastest way for a Java programmer to master the Scala language.

Features
  • Master object-oriented programming and design in Scala
  • With the help of illustrations learn about plenty of �mini-projects� such as an audio editor, a social network site, an online bookstore, and so on
  • Get to know best practices on matters such as class design, modularity, and automated testing
Page Count 173
Course Length 5 hours 11 minutes
ISBN 9781783281657
Date Of Publication 24 Feb 2015

Authors

Oliver Wong

Oliver Wong is a compiler designer, and a programming language and static-analysis enthusiast with a passion for helping people write bug-free code. His influence on the software development world includes co-writing standard specifications for OMG to publishing open sourced JavaScript plugins for video gaming websites, and everything in between.