Search

Upcoming Bootcamps

Back to Bootcamps Schedule

No events to show

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.

Online Bootcamp Price: $3000

Who Should Take This Course

  • 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.

 

 

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.

Not applicable? Click here to schedule a call.

Stay in Touch WITH Big Nerd Ranch News