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
Practice-based activities.
Łukasz Kołodziejczak
tests, threads, services, support tools
Grzegorz Wodyński
exercises presentation of examples
Łukasz Jaworski
A large number of examples and a wide range of knowledge of the teacher
Piotr Pabiasz
Antonio gave is much background information, best practices and showed us useful tools to speed up our development process.
Philipp Hunger
I really enjoyed the fairly broad coverage of topics.
john harrigan
Learning about the overall ease of using Android Studios to build android apps.
Joshua Anderson
Very comprehensive of a general overview. Exactly what I was after.
Matt Shelton
All of it was excellent and well taught. Very interesting.
Daniel Welch
It was very interesting and I gained a lot of valuable knowledge.
Shaun Lawlor
The trainer's passion and extensive commercial experience thanks to which he is perfectly listened to.
- Weegree Sp. z o.o. Sp.k.
Exercises were fun and it was good to see how quickly an application can be developed in Android Studio.
- Sepura
Detail level and number of labs
- FedEx
I like the teaching style very friendly and informative on the subject.
- FedEx
breaking down the multiple services, actions, devices, etc into the component parts.
Delaine Stoutenburgh - FedEx
The detail given about each topic was really nice, he made sure we understood each topic before moving to the next.
Richie Wood - FedEx
Training materials, Exercise's & Trainer
- FedEx
Knowledge of trainer
- FedEx
The lecture book and lab
- FedEx
Lectures (David is very knowledgeable on Android)
Johnny Miller - FedEx
Instructor's great knowledge about the material.
- FedEx
Clear and repeated emphasis on important aspects of Android development
- FedEx
The set of lab material seems really good. It's a great resource to keep after the training.
- FedEx
Documentation-based translation
- Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie
I really appreciated the instructor's openness to questions and the thorough, justified answers provided. He was clearly keenly interested in the subject and as a result the course was much more enjoyable.