Students will walk away with the confidence they need to leverage Kotlin to create cleaner code + Upon completion, students will earn a Big Nerd Ranch Graduate Certification in Kotlin Fundamentals.
Cost includes:
2 full days of instruction
Kotlin Programming: Big Nerd Ranch Guide
Coffee/Tea and Snacks
Networking opportunities
Understand writable & read-only properties and take a look at Kotlin’s type system.
Work with conditionals & control flow statements and gain the additional support of control flow statements as assignable expressions
Learn about nullable and non-nullable types and how to work with null safely
Understand exceptions & how they may be safely handled
Learn about the standard functions included with Kotlin's standard library: let, apply, also, takeIf, and run
Learn how to represent series of data with mutable and read-only collection types
See how to work with data using for loops, while loops, break, and continue
Take a closer look at collections, including destructuring, type checking, smart casting, and type parameter constraints
Learn about defining package and file level functions and specifying their return types
Use the function type to define functions that accept other functions, and learn how to optimize them by using the inlining feature of the Kotlin compiler
Use the functional programming features of Kotlin to clean up code, including map, flatMap, filter, and reduce, as well as how to define your own functional operators and higher order functions.
Work with object-oriented programming concepts
Learn about primary and secondary constructors, equality, and preconditions for object construction
Learn how to use data classes and enums to represent data and algebraic data types
Override classes, and define abstract, open or closed classes
Use Kotlin's built-in singleton implementation
Understand extension functions to safely add behavior to classes you don't control.
Learn how to interoperate with Java classes and supports Java compatibility.
Explore Kotlin’s platform independence
Use coroutines to spin up lightweight threads for doing work in the background
Use extensions with receivers to define a domain-specific language