Search

Upcoming Bootcamps

Back to Bootcamps Schedule
Dec 10, 2022 7 days, 09:00 AM CST - 05:00 PM CST

Android and Kotlin Essentials

Location: Online

Want to write Android applications? New to Kotlin and Android development? This course is just what you need.

  • $3,000.00 excl.
Register13 places remaining

Overview

This 6.5 day course introduces students to developing applications for Android using the Kotlin programming language. Students will first learn the Kotlin programming language during a 2-day intensive study. Then students spend 4.5 days learning the fundamental building blocks of Android, as well as common patterns and conventions to help propel their Android development skills forward.

Bootcamp Price (In Person): $5200 - price includes hotel, meals, and a shuttle to and from the hotel.

Bootcamp Price (Online): $3000

In the Atlanta area? Interested in commuting to an in person class? Contact training@bignerdranch.com to discuss commuting options and discounts.

WHO SHOULD TAKE THIS CLASS?

  • Developers who want or need to create Android apps using the Kotlin programming language but have little to no experience with Kotlin and little to no experience with Android.

  • Students should already be familiar with basic programming concepts: variables, statements, functions, arrays, data structures and common programming problems.

WHAT YOU'LL LEARN

  • Fundamentals of Kotlin, including type system and nullable types, arrays and collections, control flow, and functional programming techniques

  • How to represent complex data structures with objects, inheritance, and extensions in Kotlin

  • Java and Kotlin interoperability, including how to port your existing Android application from Java to Kotlin

  • Construct Android applications using Activities and Fragments

  • Communicate with other applications

  • Understand Android’s threading model and access the web

  • Create custom views and handle raw touch events

  • Safely perform background tasks even after the user has left your app

HOW TO PREPARE

  • Install the latest version of the JDK.

  • Install IntelliJ Community Edition (for the Kotlin portion of the course).

  • Install Android Studio.

    • Once installed, start Android Studio and follow the additional installation instructions. Once you have installed all of the software and SDK components, make sure that you can create and run a new application on an emulator or on a device.

SYLLABUS

KOTLIN PROGRAMMING

  • Understand writable & read-only properties, take a look at Kotlin’s type system, and learn about nullable and non-nullable types

  • Work with control flow statements as assignable expressions

  • See Kotlin’s scope functions — apply, let, run, with, also, takeIf, and takeUnless — and use them to write more concise and idiomatic Kotlin code

  • Take a closer look at collections, including destructuring, type checking, smart casting, and type parameter constraints

  • 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 functional programming paradigms to write complex algorithms using just a few operations, including map, flatMap, associate, filter, zip, and fold

OBJECT ORIENTED PROGRAMMING IN KOTLIN

  • Apply object-oriented programming concepts in Kotlin to define your own types

  • Learn about constructors, preconditions, and initialization requirements for object creation

  • Inherit and override class behavior using abstract and open classes

  • Define general sets of behaviors using interfaces

  • Learn how to use data classes to define types that represent your application’s models

  • Use Kotlin’s built-in singleton implementation

  • Learn how to define algebraic data types with enums and sealed classes

  • See how to define value classes to create more efficient classes that wrap a single property

ADVANCED KOTLIN

  • Understand type variance and generic type parameters

  • Use extensions to add functionality to a type without modifying the original class

  • Leverage coroutines to efficiently and safely move work between threads

ANDROID FOUNDATIONS

  • Understand what an Activity is and how they are used to construct Android apps

  • Master the activity lifecycle to elegantly respond to device changes

  • Maintain UI state across rotation and process death

  • Use the debugger to find and fix bugs

  • Write unit tests to verify the behavior of your app

  • Safely communicate across Activities

  • Explore the differences between versions of Android and use new features while maintaining compatibility with older versions

FULL-FEATURED ANDROID

  • Use Fragments to create reusable components and to respond elegantly to different types of devices

  • Display lists of items performantly with the RecyclerView API

  • Peek behind the scenes at Android’s layout system and understand how to use layout tools such as ConstraintLayout

  • Customize a dialog to present modal content to the user

  • Add navigation and menu options to the Toolbar

BEYOND THE BASICS

  • Use Room to access a database and performantly store application data

  • Use Kotlin coroutines to efficiently execute background work

  • Seamlessly communicate with other applications using Android’s intent system

  • Increase the potential user base of an app by supporting multiple languages and improving the accessibility

CONNECTING TO THE WEB

  • Download, parse, and present data from a web service

  • Learn more about the Toolbar on Android and how to add custom views

  • Perform background work safely in your application

  • Display content from a web site in your application

ADDING SOME FUN

  • Learn how to create your own custom views when the default widgets just won’t do

  • Receive and respond to raw touch events

  • Understand how to increase the delightfulness of an app through animation

Click this link for a print-friendly syllabus.

Speak with a Nerd

Schedule a call today! Our team team of Nerds are ready to discuss your business needs.

Let's Talk

What our students have to say

I did the swift and iOS bootcamp in Georgia. It was incredible and totally worth it. I had only played around and pieced together iOS apps before I went to the bootcamp. After everything made so much more sense and I was able to create and publish new iOS apps with ease.

Anna Sherman, Developer, Carbon Five

I used other online free courses to learn basic Kotlin and some advanced topics. It was nice to have the classroom setting, with the Kotlin Essentials course, to gain better-detailed knowledge. I do feel more confident with the basics of Kotlin, and I am looking forward to taking the more advanced courses.

Steve Hamilton, Android Software Engineer, Disney

I was able to start my research lab, HealthHawks, because Big Nerd Ranch gave me the skills to build software on mobile applications. I equip medical professionals with software that they test to be able to determine if it helps clinical outcomes. It is awesome. Big Nerd Ranch taught me how to change the world for the better, one line of code at a time.

Elizabeth Baker, Associate Professor of Information Systems, UNC Wilmington

Our clients
Android and Kotlin Essentials

Other Services

If you think this is pretty cool, just wait till you see what else we can do.

View All Services

Digital Product Development

From the first discovery session to launch, you’ll get a whole team of dedicated Nerds.v

Learn More

Embedded Experts

Whether you have to fill in some gaps on your team, need some support in an unfamiliar language, or a different design perspective, our team is ready to help.

Learn More

We are ready to discuss your needs.

Stay in Touch WITH Big Nerd Ranch News