Swift to Kotlin Android Conversion Training in Germany

  • Learn via: Classroom / Virtual Classroom / Online
  • Duration: 4 Days
  • Price: Please contact for booking options
We can host this training at your preferred location. Contact us!

This is an intensive conversion course for coders who are experienced in creating iOS mobile applications using Swift and wish to move to Android development with Kotlin. The course builds on the delegates existing experience and omits any material which would be redundant or self-evident. Instead the delivery focuses on those areas in the language and platform which will be novel and/or confusing.

By the end of the delivery the delegates will be able to build complete Android applications which conform to modern best practices and take advantage of popular frameworks like Dagger and RxJava. The course is workshop based, with delegates spending the majority of their time extending sample applications.


It is assumed that delegates will have several years experience in Swift / iOS and be familiar with the core concepts of object-oriented and functional programming.


Core Concepts of the Java Platform

  • How Kotlin emerged from Java and Scala
  • The current JSE platform and toolset
  • Why Google broke Android away from Oracle
  • Java 8+ features not available on Android
  • How Kotlin modernises coding on Android
  • Creating Kotlin projects in IntelliJ Community
  • Creating mobile apps in Android Studio

Core Tooling in JSE and Android

  • Comparing XCode to Android Studio
  • Managing dependencies using Gradle
  • Pros and cons of Android emulators
  • How Intel HAXM improves emulation speeds
  • Configuring sample devices for testing
  • Developer features available on devices
  • Command-line interaction using ADB

Making the Most of Android Studio

  • Core functionality of Android Studio
  • Best practises for editing Kotlin codebases
  • Working with the Layout Inspector and Editor
  • Configuring the SDK and AVD Manager
  • Monitoring resource usage via the Profiler
  • Viewing and filtering logs via LogCat

Converting from Swift to Kotlin

  • Minor variations in the basic syntax
  • Mutability in Kotlin vs. Swift
  • Similarities in support for OO and FP
  • Limitations of class extensions in Kotlin
  • Differences in working with collections
  • Representing ranges in Swift and Kotlin
  • Optionals in Swift vs. null safety in Kotlin
  • Swift has tuples, Kotlin has Pair and Triple
  • Destructuring data classes and lists in Kotlin
  • Shorthand notation for parameters in closures
  • Comparing protocols in Swift to Kotlin interfaces
  • Taking advantage of reflection and delegates

Essentials of Android Applications

  • Android has no Storyboard equivalent
  • Understanding and editing the Manifest File
  • Introducing Android Activities and Fragments
  • Navigation between Activities and Fragments
  • How a device manages the lifecycle of an Activity
  • Designing an application around the MVVM pattern
  • Using databinding to push data into the model

Building Basic User Interfaces

  • Specifying a view hierarchy as XML
  • Reasons to avoid specifying hierarchies in code
  • Limits of the ‘drag and drop’ approach in the IDE
  • Using and combining the standard Android widgets
  • The support libraries and targeting legacy versions of Android
  • Special considerating when accepting textual input
  • Positioning widgets by creating and nesting layouts
  • Different options for attaching event handlers to views
  • Using binding adapters to bind views to data sources
  • Customizing widgets using styles and themes
  • Creating new widgets by extending existing ones

Enhancing the User Interface

  • Understanding the lifecycle of an Activity
  • How to preserve mutable state via callbacks and bundles
  • Starting one activity from another via intents
  • Processing intents using filtering and receivers
  • Creating and using files in a range of locations
  • Advantages of Kotlin Coroutines over AsyncTask
  • Using the JetBrains Kotlin Android Extensions
  • Using the Google Android Kotlin Extensions

Dependency Injection

  • Using the Dagger framework for DI
  • Understanding Compile Time Injection
  • Configuring dependencies via @Inject
  • Using @Provides for factory methods
  • Considerations when injecting into Activities

Reactive Coding in Android

  • Review of Rx and the RxJava framework
  • Using RxKotlin for syntactic sugar
  • Combining Rx and Kotlin Coroutines

Accessing RESTful Services

  • Introducing the Retrofit library
  • Creating service clients via annotations
  • Support for reactive streams in Retrofit
  • Marshalling to and from JSON and XML
  • Customizing object serialization

Persistence in Android

  • Supported databases on Android devices
  • Persisting data in SQLite using Room
  • Using annotations to specify Entity Types
  • Using annotations to specify Data Access Objects
  • Migrating databases between schema versions
  • Switching databases for testing

Security in Android

  • Managing key pairs via the Android Keystore
  • The security model and permissions available
  • Prompting the user to acquire permissions
  • Signing applications for distribution

Background Processing

  • Android services and their lifecycles
  • Using the Work Manager for scheduling jobs

Testing Android Applications

  • TDD with JUnit, Mockito and Hamcrest
  • User Interface testing with Espresso
  • Best practices for running tests in CI/CD
  • Options for mocking RESTful services

Deploying and Monitoring Applications

  • Platforms for distributing beta versions
  • Options for recording and reporting crashes
  • Techniques for monitoring the full system


Contact us for more detail about our trainings and for all other enquiries!

Upcoming Trainings

Join our public courses in our Germany facilities. Private class trainings will be organized at the location of your preference, according to your schedule.

Classroom / Virtual Classroom
22 November 2024
Berlin, Hamburg, Münih
4 Days
Classroom / Virtual Classroom
22 November 2024
Berlin, Hamburg, Münih
4 Days
Classroom / Virtual Classroom
23 November 2024
Berlin, Hamburg, Münih
4 Days
Classroom / Virtual Classroom
25 November 2024
Berlin, Hamburg, Münih
4 Days
Classroom / Virtual Classroom
27 November 2024
Berlin, Hamburg, Münih
4 Days
Classroom / Virtual Classroom
27 November 2024
Berlin, Hamburg, Münih
4 Days
Classroom / Virtual Classroom
22 November 2024
Berlin, Hamburg, Münih
4 Days
Classroom / Virtual Classroom
22 November 2024
Berlin, Hamburg, Münih
4 Days
Swift to Kotlin Android Conversion Training Course in Germany

The Federal Republic of Germany is the second most populous country in Europe and is located in Central Europe. The official language of the country is German. Germany is one of the richest countries in the world. The main exports of the country include motor vehicles and iron and steel products.

Here are some fun facts about Germany:
The fairy tale writer, the Brothers Grimm, came from Germany and wrote many famous stories such as Cinderella, Snow White, and Sleeping Beauty.
Germany is home to the largest theme park in Europe, the Europa-Park.
The famous composer Ludwig van Beethoven was born in Germany.
The Autobahn, the German highway system, is known for having no general speed limit.


Berlin was divided by the Berlin Wall from 1961 to 1989. Known for its street art, Berlin has many colorful murals and graffiti throughout the city. Also, Berlin is home to many famous museums, such as the Pergamon Museum and the Museum Island. Many clubs and bars stay open until the early hours of the morning in this big city.

Another popular city is Munich, which is famous for its Oktoberfest beer festival that attracts millions of visitors every year. Munich is also home to many historic buildings, including Nymphenburg Palace and the Marienplatz town square.

The country's capital and largest city is Berlin, however Frankfurt is considered to be the business and financial center of Germany. It is home to the Frankfurt Stock Exchange, the European Central Bank, and many other financial institutions. Because of its central location within Europe and its status as a major financial hub, Frankfurt is often referred to as the "Mainhattan," a play on the city's name and its association with the Manhattan financial district in New York City.

Frankfurt is also a major transportation hub, with the largest airport in Germany and one of the largest in Europe, Frankfurt Airport. Additionally, it is a popular destination for tourists, with its historic city center, beautiful parks, and vibrant cultural scene.

Some of the top German technology companies like Siemens AG, Bosch, SAP SE, Deutsche Telekom, Daimler AG and Volkswagen has business centers in Frankfurt. The country has a strong tradition of engineering and innovation, and is home to many other world-class technology companies and research institutions.

Tailored to meet the specific needs of Germany, Bilginç IT Academy combines cutting-edge training methodologies with our comprehensive range of Certification Exam preparation courses and accredited corporate training programs. Experience a transformative approach to IT training that will redefine your expectations.
By using this website you agree to let us use cookies. For further information about our use of cookies, check out our Cookie Policy.