This ebook is for cell builders and managers who need to discover how they will use Kotlin Multiplatform in several use circumstances to share code throughout Android, iOS and desktop apps. If you wish to cut back improvement and testing time by writing sure elements of your apps solely as soon as, this ebook will assist.
- Jetpack Compose Android
- Compose Multiplatform
- SwiftUI
- Testing
- Dependency Injection with Koin
- Persistence utilizing SQLDelight
- Serialization
- Ktor
- Concurrency utilizing coroutines
The most effective ebook to show you methods to share code throughout platforms utilizing Kotlin Multiplatform. You’ll achieve the inspiration of making person interfaces utilizing native UI toolkits after which writing frequent code for serialization, networking and persistence. You’ll additionally find out how dependency injection, testing and totally different architectures slot in with…
extra
This part tells you a couple of issues it’s worthwhile to know earlier than you get began, akin to what you’ll want for {hardware} and software program, the place to search out the mission information for this ebook, and extra.
One of many core advantages of Kotlin Multiplatform is that you would be able to share code throughout native apps. You possibly can proceed to develop the UI layer utilizing native UI toolkits like Jetpack Compose for Android and SwiftUI for iOS.
On this part, you’ll learn to add a brand new Gradle module to jot down your online business logic solely as soon as. You’ll additionally learn to create the native UI for Android, iOS and desktop apps, all whereas sharing the frequent module.
Kotlin Multiplatform (KMP) is likely one of the newest applied sciences that can assist you share code throughout platforms. This chapter introduces you to KMP, how you need to use it throughout app layers and methods to arrange your first KMP mission.
Having dependable construct instruments and constant dependency variations is essential to getting began on a multiplatform mission. This chapter will cowl how you need to use Gradle and its buildSrc module to offer dependencies to all modules. You may additionally learn to share enterprise logic throughout goal platforms utilizing a multiplatform time zone library.
Jetpack Compose is a brand new declarative library geared toward simplifying UI improvement on Android. This chapter will stroll you thru creating a number of screens in your app utilizing Jetpack Compose.
SwiftUI is the fashionable method to program UI for iOS purposes. On this chapter, you may learn to develop the UI for iOS utilizing the SwiftUI framework.
It is now potential to share the identical UI code throughout desktop and Android purposes. On this chapter, you may learn to develop the UI for desktop utilizing the brand new Compose Multiplatform declarative library.
To successfully share code throughout apps, there are a number of issues to bear in mind: entry to platform-specific APIs, assist for current software program engineering practices and persistence.
On this part, you’ll learn to use Kotlin options to entry platform-specific APIs in your shared module and the way Kotlin Multiplatform suits in along with your present structure. You’ll additionally study dependency injection and the way you need to use it to check options current in your shared modules. Lastly, you’ll learn to use a typical codebase to deal with persistence on totally different platforms.
When working with KMP, you may typically must entry platform-specific APIs. On this chapter, you may take a deeper dive into the count on/precise sample and the way you need to use them to entry platform-specific APIs.
Software program structure is likely one of the most important elements that have an effect on high quality and maintainability over time. On this chapter, you may get an outline of various architectures and the way you need to use one among them in your KMP software.
Writing assessments is a crucial a part of writing code confidently. This chapter will present an outline of including unit assessments and UI assessments to an app created utilizing KMP.
Dependency Injection is a way that results in maintainable and testable code. This chapter will present an outline of integrating the Koin dependency injection library right into a multiplatform mission.
Most fashionable purposes must persist information throughout classes. This chapter will present an outline of information persistence in KMP. It discusses key-value saving in addition to utilizing an SQL database.
Networking is essential to most fashionable apps, and it often entails implementing related logic utilizing totally different frameworks and languages. Underneath the hood, it additionally entails ideas like serialization and concurrency. Fortuitously, Kotlin Multiplatform has devoted libraries for every of those.
On this part, you’ll learn to use serialization to decode JSON information to Kotlin objects. You’ll then learn to use a typical networking library that leverages this frequent serialization to fetch information from the web. To make the networking performant, you’ll additionally study concurrency in Kotlin utilizing coroutines and the concerns for various platforms. Lastly, you’ll learn to extract an current characteristic to a Kotlin Multiplatform library and likewise alternative ways of publishing this library.
When transmitting information over a community, it’s worthwhile to serialize and deserialize it. On this chapter, you may learn to use serialization in a Kotlin Multiplatform mission.
Networking is likely one of the core options of any fashionable app. On this chapter, you may lean methods to use networking in a Kotlin Multiplatform mission.
On this chapter, you may learn to take care of concurrency in your Kotlin Multiplatform tasks.
On this chapter, you may be taught how one can migrate an current characteristic to KMP. You additionally learn to publish a shared library and make it accessible for Android, iOS and desktop.
On this chapter, you may study a number of functionalities of Kotlin and their comparability with Swift.
Xcode does not assist debugging Kotlin Native code out of the field. On this chapter, you may be taught how one can debug your shared code module from Xcode.
On this chapter, you may be taught how one can share your Compose UI between Android, desktop, and iOS apps.