Course Outline
Introduction
Configuring Tools for Kotlin
- Utilising Command Line Tools
- Installing the JDK for Kotlin
- Installing and Configuring the IDE: IntelliJ
- Installing Plugins
Commencing with Kotlin and its Syntax
- Understanding Kotlin Architecture
- Learning Kotlin Syntax
- Leveraging Key Kotlin Features
Object-Oriented Programming with Kotlin
- Overview of Object-Oriented Programming
- Creating Classes
- Adding Methods to Classes
- Defining Basic Constructors
- Utilising Named Parameters and Default Values
- Using Open Classes for Inheritance
- Utilising Abstract Classes
- Creating and Implementing Interfaces
- Managing Method Overriding
- Creating Data Classes
- Utilising Singletons and Companion Objects
- Utilising Enumerations
- Grouping Classes into Packages
- Using Imports
- Implementing Information Hiding
- Utilising Getters and Setters
- Implementing Visibility Modifiers
- Understanding Generics
- Implementing a Generic Stack
- Utilising Generic Functions
Android App Development Using Kotlin
- Configuring Tools for Android Development
- Installing Android Studio
- Initiating a New Project
- Configuring the Emulator
- Configuring 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
- Managing Web Services and APIs
- Handling 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 Customised Responsive Android App Using Kotlin
- Publishing Your Android Application to Google Play Store
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
- Optimising the iOS User Experience through UX and UI Design
- Adding User Interaction for Improved User Experience
- Optimising Performance
- Debugging an iOS App
- Building a Customised Responsive iOS App Using Kotlin
- Publishing Your iOS Application to the Apple App Store
Troubleshooting
Summary and Conclusion
Requirements
- Experience with Java programming
- Foundational experience or familiarity with Android development
- Experience with Swift programming
Testimonials (3)
The in-depth knowledge and the examples
Ankur Kapila - Deutsche Bank
Course - Programming with Kotlin
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
Intensity of a course, coverage of topics. Complicated topics are explained on a good level, so even though there are some white spots left in of them (like DSL) -- it won't be hard to go on by myself as I already have a common understanding of basis and at least know how to form my questions to Google.