Android and Apple Platforms

Developers familiar with iOS and other Apple platforms use a number of different tools and technologies, such as Swift, Xcode, and SwiftPM. When beginning to work with the Android platform, much of the terminology around Android development may seem alien at first. But in general, each component of iOS development has an analogue in the world of Android development.

Skip handles translating some of these elements between Apple platforms and Android. This table outlines the various Apple-specific terms and maps them to their equivalent Android term, as well as highlighting whether Skip helps in the translation process.

Platform Apple [Skip] Android
Language (modern) Swift1 ‚Üí Kotlin2
Language (legacy) Objective-C3   Java4
UI Framework (modern) SwiftUI5 ‚Üí Jetpack Compose6
UI Framework (legacy) UIKit7   Android Views8
Build Tool SwiftPM9 ‚Üí Gradle10
IDE Xcode11   Android Studio12
Debugger lldb13   adb14
Unit Testing XCTest15 ‚Üí JUnit16
UI Testing XCUITest17   Espresso18
Local Testing macOS19 ‚Üí JVM w/ Robolectric20
Local App Runner iOS Simulator21 ‚Üí Android Emulator22
Design Language HIG23   Material Design24
  1. Swift: 

  2. Kotlin: 

  3. Objective-C:‚Äčlibrary/‚Äčarchive/‚Äčdocumentation/‚ÄčCocoa/‚ÄčConceptual/‚ÄčObjectiveC/‚ÄčIntroduction/‚ÄčintroObjectiveC.html¬†

  4. Java: 

  5. SwiftUI: 

  6. Jetpack Compose: 

  7. UIKit: 

  8. Android Views: 

  9. Swift Package Manager (SwiftPM): 

  10. Gradle: 

  11. Xcode: 

  12. Android Studio: 

  13. The LLDB Debugger: 

  14. Android Debug Bridge (adb): 

  15. XCTest: 

  16. JUnit: 

  17. User Interface Tests (XCUITest): 

  18. Espresso: 

  19. Cross-platform testing: 

  20. Robolectric: 

  21. iOS Simulator: 

  22. Android Emulator: 

  23. HIG: 

  24. Material Design: