Book Image

Programming Kotlin

Book Image

Programming Kotlin

Overview of this book

Quickly learn the fundamentals of the Kotlin language and see it in action on the web. Easy to follow and covering the full set of programming features, this book will get you fluent in Kotlin for Android.
Table of Contents (20 chapters)
Programming Kotlin
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Customer Feedback
Preface

Type alias


Kotlin 1.1 has introduced a new feature for referring to verbose types called type aliases. As the name suggests, a type alias allow us to declare a new type that is simply an alias of an existing type. We do this using the typealias keyword:

    typealias Cache = HashMap<String, Boolean> 

They are especially useful as a replacement for complex type signatures. Compare the following and see which you think is more readable:

    fun process(exchange: Exchange<HttpRequest, HttpResponse>):  Exchange<HttpRequest, HttpResponse>

Or:

    typealias HttpExchange = Exchange<HttpRequest, HttpResponse> 
    fun process2(exchange: HttpExchange): HttpExchange 

A typealias carries no runtime overhead or benefit. The alias is simply replaced by the compiler. This means that new types are not created or allocated, so we suffer no performance penalty. It also means that two aliases that have the same right-hand side, can be used interchangeably. For example, these...