Course Outline
Introduction
Setting Up the Tools for Kotlin
- Using the Command Line Tools
- Installing the JDK for Kotlin
- Installing and Setting Up the IDE: IntelliJ
- Installing the Plugins
Getting Started with Kotlin and the Kotlin Syntax
- Learning the Kotlin Architecture
- Learning the Kotlin Syntax
- Using Key Features of Kotlin
Object-Oriented Programming with Kotlin
- Overview of Programming with Objects
- Creating a Class
- Adding Methods to Classes
- Defining Basic Constructors
- Using Named Parameters and Default Values
- Using Open Classes to Allow Inheritance
- Using Abstract Classes
- Creating and Using Interfaces
- Handling Overriding
- Creating Data Classes
- Using Singletons and Companion Objects
- Using Enumerations
- Grouping Classes into Packages
- Using Imports
- Implementing Information Hiding
- Using Getters and Setters
- Implementing Visibility Modifiers
- Understanding Generics
- Implementing a Generic Stack
- Using Generic Functions
Android App Development Using Kotlin
- Setting Up the Tools for Android Development
- Installing Android Studio
- Starting a New Project
- Setting Up the Emulator
- Setting Up the Library
- Setting Up Kotlin in Android
- Working with the Hello Android Framework and Android SDK Tools
- Developing an Android App Using Kotlin
- Using ListActivity and ListView
- Using Intents and Intent Filters
- Working with Custom Views
- Using Layout Managers
- Handling Web Services and API's
- Dealing with Android Services
- Working with SQLite Database
- Using Content Providers
- Writing Adapters
- Implementing Dialogs and Alerts (Toasts)
- Designing Your UI
- Options and Context Menus
- WebView
- Implementing Android Notifications
- Building a Customized Responsive Android App Using Kotlin
- Publishing Your Android Application to Google PlayStore
iOS App Development Using Kotlin
- Overview of XCode 9 Features and Architecture
- Overview of Swift 4 Features and Architecture
- Comparing Similarities and Differences of Kotlin and Swift
- Basics
- Arrays
- Dictionaries
- Working with Web Services
- Performing Data Management
- Working with Variables, Constants, and Swift Data Types
- Optimizing the iOS User Experience through UX and UI Design
- Adding User Interaction for Improved User Experience
- Optimizing Performance
- Debugging an iOS App
- Building a Customized Responsive iOS App Using Kotlin
- Publishing Your iOS Application to the Apple AppStore
Troubleshooting
Summary and Conclusion
Requirements
- Experience in Java programming
- Basic experience or familiarity with Android development
- Experience with Swift programming
Testimonials (5)
Alex is a very friendly, personable guy. He made everyone feel comfortable working through together and volunteering to give slutions.
Kai Bergman - Red Embedded Consulting Sp. z o.o.
Course - Kotlin for Beginners
It was concise, well organised, had nice balance of tasks and lectures and everything was on point.
Alexander Illarionov - C.T.Co SIA
Course - Advanced Kotlin Programming
The way of transferring knowledge and the knowledge of the trainer.
Jakub Rekas - Bitcomp Sp. z o.o.
Course - Machine Learning on iOS
Great content, excellent exercises. Covered a lot of information. Friendly to new Kotlin programmers but also a lot to still learn for those of us already using Kotlin. Highly recommend this course. The pace of the course was perfect, not too slow, not too fast. Alternating between instruction and exercises helped cement the knowledge from each section.
Mark Sorenson - Los Alamos National Laboratory
Course - Programming with Kotlin
Pacing, depth, and explanations were all superb. It's clear Scott is an expert on the subject and learning from him was super enjoyable.