Google Refactors Kotlin Courses
Written by Mike James   
Monday, 23 September 2019

Google has overhauled the two Kotlin courses that it co-created with Udacity, Kotlin Bootcamp for Programmers and Developing Android Apps with Kotlin, and made them available on Google Codelabs. 

The announcement of more Android-related Kotlin courses on Codelabs was made on the Android Developers blog by Jocelyn Becker, Senior Program Manager for Google Developer Training. She explains there that while there are still the video-based versions of both the courses on the Udacity platform, they have been reworked to a tutorial-based format:

"to help people that learn in different ways".

She also notes that:

More than 2.5 million users have worked through Google codelabs like this just this year.

Among the existing codelabs courses you find Refactoring to Kotlin, aimed at Java programmers which Nikos Vaggalis reported on when it was launched in July. 

Nikos has also written about the Udacity versions of the two Kotlin courses that now have dopplegangers on Codelabs. Referring to as Google's attempt to bring Kotlin to the masses he reports;

It doesn't presume knowledge of Java; knowledge of any  modern object-oriented language will do, as candidates ought to be at least familiar with the concepts of OOP, the likes of classes, methods, inheritance and so on.

While the Codelabs version is text-only rather than video-based it still makes use of the intelliJ IDE and many of the examples use the aquarium theme relied upon in the Udacity course. As Nikos explained the aquarium methaphor means that:

tasks such as adding, multiplying or "deleting" fishes [are used] as a reflection of the plus, minus and times operators; the support of different types of water showcase the Generic types; while Interfaces let us clean different water supplies; or water and Filters let us iterate and filter Collections through the use of lambdas.

kotlinaqarium

The course overview of the Codelabs Kotlin Bootcamp states:

In this course, you learn the basics of Kotlin as you create various small programs in IntelliJ IDEA.The course materials include course codelabs with suggested homework assignments.

This course is geared towards programmers who know an object-oriented language such as Java or C++. If you're familiar with C#, some of the features of Kotlin will be familiar.

The curriculum is only slightly tweaked from the Udacity version and is now:

  • Lesson 1 - Get started Introduces the benefits of Kotlin, asks you to install JDK and IntelliJ and by its end you'll understand how to work with the Kotlin REPL (Read-Eval-Print Loop) interactive shell and the basic syntax of Kotlin code
  • Lesson 2 - Kotlin Basics goes through data types, operators  and variables, and how to work with booleans and conditions. You explore the difference between nullable and non-nullable variables, and you practice using arrays, lists, and loops in Kotlin.
  • Lesson 3 - Functions shows how to create a program with a main() function and arguments in IntelliJ IDEA. You create small programs as you learn about default values, compact functions, list filters, basic lambdas, and higher-order functions.
  • Lesson 4 - Classes and Objects looks at  classes, objects, and inheritance in Kotlin. You create small programs as you learn about abstract classes, interfaces, and interface delegation.constructors, inheritance and interfaces
  • Lesson 5.1 - Extensions  tackles pairs, collections, extension functions in Kotlin. You create small programs as you learn about pairs, triples, lists, and hash maps for storing data, and implement extension functions to add functionality to existing classes.
  • Lesson 5. 2 - Generics is about generic classes, methods, and functions in Kotlin. You create a type hierarchy, make classes more flexible by making them generic, and extend their functionality with generic methods and functions.
  • Lesson 6 - Functional Manipulation introduces annotations labeled breaks and Single Abstract Methods (SAMs). You also review lambdas and higher-order functions. You then create and use lambdas and higher-order functions, and learn about higher-order functions in the Kotlin Standard Library.

 

Codelabsbadge

The Kotlin BootCamp is good preparation for the Android Kotlin Fundamentals Course, which leads you through a series of codelabs that teach you the fundamentals of building Android apps in Kotlin.This is the Codelabs equivalent of Udacity's Developing Android Apps with Kotlin with each of its ten lessons split into small chunks, each with its own codelab. As you work through it you create several apps. Both the source code for starter apps and solution code for the apps that you create is on GitHub.

As Jocelyn Becker explains in her blog post:

This course takes you from "Hello World" to connecting with the world. You start building a basic interactive user interface on one screen, and end with a multi-screen Google Developer Group (GDG) Finder app that gets data from a live server on the internet. In between, you learn about Android Jetpack components, such as Room for databases, Work Manager for background processing, the Navigation component, and more. You'll use popular community libraries to simplify common tasks, such as Glide for image loading, Retrofit for networking, and Moshi for JSON parsing. The course teaches key Kotlin features such as coroutines to help you write your app code more quickly and concisely.

If you come to this course with a Java background you will quickly realize that Google's new approach to app development is via Kotlin and the range of new APIs in JetPack.    

  • Mike James is the author of The Programmer's Guide to Kotlin and Android Programming in Kotlin: Starting With An App from the I Programmer Library, many extracts from which are available on this site.

More Information

New! Android Kotlin codelab courses are here

Kotlin Bootcamp Course

Related Articles

Refactoring to Kotlin Codelab

Udacity Kotlin BootCamp for Programmers

Udacity's Developing Android Apps with Kotlin 

Learn Kotlin Online In 25 Hours

Android Programming In Kotlin: Basic Controls

Android Programming In Kotlin: Events 

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

Banner


Apache Fury Adds Optimized Serializers For Scala
31/10/2024

Apache Fury has been updated to add GraalVM native images and with optimized serializers for Scala collection. The update also reduces Scala collection serialization cost via the use of  encoding [ ... ]



Wasmer 5 Adds iOS Support
12/11/2024

The Wasmer team has released Wasmer 5.0. The WebAssembly runtime adds experimental support for more back ends including V8, Wasmi and WAMR. It also now has iOS support, and upgraded compilers includin [ ... ]


More News

espbook

 

Comments




or email your comment to: comments@i-programmer.info

<ASIN:1871962536>

<ASIN:1871962544>

 

 

 

Last Updated ( Tuesday, 24 September 2019 )