Android Development with Kotlin
Learn Android application development with the extensive features of Kotlin
Marcin Moskala
Igor Wojda
BIRMINGHAM - MUMBAI
Android Development with Kotlin
Copyright 2017 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the authors, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
First published: August 2017
Production reference: 1280817
Published by Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham
B3 2PB, UK.
ISBN 978-1-78712-368-7
www.packtpub.com
Credits
Authors Marcin Moskala Igor Wojda | Copy Editor Safis Editing |
Reviewers Mikhail Glukhikh Stepan Goncharov | Project Coordinator Vaidehi Sawant |
Commissioning Editor Aaron Lazar | Proofreader Safis Editing |
Acquisition Editor Chaitanya Nair | Indexer Francy Puthiry |
ContentDevelopmentEditor Rohit Kumar Singh | Graphics Abhinash Sahu |
Technical Editor Pavan Ramchandani | Production Coordinator Nilesh Mohite |
About the Authors
Marcin Moskala is an experienced Android developer who is always looking for ways to improve. He has been passionate about Kotlin since its early beta release. He writes articles for Trade press and speaks at programming conferences.
Marcin is quite active in the programming and open source community and is also passionate about cognitive and data science. You can visit his website (marcinmoskala.com), or follow him on GitHub (MarcinMoskala) and on Twitter (@marcinmoskala).
I would like to thank my co-workers in Gamekit, Docplanner, and Apreel. I especially want to thank my supervisors, who were not only supportive, but who are also constant source of knowledge and inspiration: Mateusz Mikulski, Krzyysztof Wolniak, Bartek Wilczynski and Rafal Trzeciak.
I would like to thank Marek Kaminski, Gleb Smirnov, Jacek Jablonski, and Maciej Gorski for the corrections, and Dariusz Bacinski and James Shvarts for reviewing the code of example application.
Also I would like to thank my family and my girlfriend, Maja Markiewicz for her support, help, making an environment that is supporting passion and self-realization.
Igor Wojda is an experienced engineer with over 11 years of experience in software development. His adventure with Android started a few years ago, and he is currently working as a senior Android developer in the healthcare industry. Igor has been deeply interested in Kotlin development long before the 1.0 version was officially released, and he is an active member of the Kotlin community. He enjoys sharing his passion for coding with developers.
To learn more about him, you can visit on Medium (@igorwojda) and follow him on Twitter ( @igorwojda).
I would also like to thank amazing team at Babylon, who are not only professionals but also the inspiring and very helpful people, especially Mikolaj Leszczynski, Sakis Kaliakoudas, Simon Attard, Balachandar Kolathur Mani, Sergio Carabantes, Joao Alves, Tomas Navickas, Mario Sanoguera, Sebastien Rouif.
I offer thanks to all the reviewers, especially technical reviewer Stepan Goncharov, Mikhail Glukhikh and my colleagues who lived us feedback on the drafts, especially Micha Jankowski.
I also thankful to my family for all of their love and support. I'd like to thank my parents for allowing me to follow my ambitions throughout my childhood and for all the education.
Thanks also go to JetBrains for creating this awesome language and to the Kotlin community for sharing the knowledge, being helpful, open and inspiring. This book could not be written without you!
I offer special thanks to my friends, especially Konrad Hamela, Marcin Sobolski, Maciej Gierasimiuk, Rafal Cupial, Michal Mazur and Edyta Skiba for their friendship, inspiration and continuous support. I value your advice immensely.
About the Reviewers
Mikhail Glukhikh has graduated from Ioffe Physical Technical School in 1995 and from Saint Petersburg State Polytechnical University in 2001 with master degree in informational technologies. During 2001-2004, he was PhD student in the same university, and then he defended PhD thesis in 2007. The title of his thesis is Synthesis method development of special-purpose informational and control systems with structural redundancy.
Mikhail worked in Kodeks Software Development Center during 1999-2000, and in Efremov Research Institute of Electrophysical Apparatus during 2001-2002. Since 2002, he is a lead developer in Digitek Labs at computer system and software engineering department. He was a senior lecturer of the department from 2004 to 2007, from 2007 he is an associate professor. In 2013 he had one-year stay in Clausthal University of Technology as an invited researcher. In 2014, he worked at SPb office of Intel corporation, since March 2015, he participates in Kotlin language development at JetBrains company.
Mikhail is one of Digitek Aegis defect detection tool authors, also he is one of Digitek RA tool authors. Nowadays primary R&D areas include code analysis, code verification, code refactoring and code reliability estimation methods. Before he had also interests in fault-tolerant system design and analysis and also in high-productive digital signal processing complexes developing.
Stepan Goncharov is currently working at Grab as the engineering lead of the Driver Android app. He is an organizer of Kotlin User Group Singapore who has developed apps and games for Android since 2008. He is a Kotlin and RxJava addict, and obsessed with elegant and functional style code. He is mainly focused on mobile apps architecture.
Stepan is making a difference by spending more and more time contributing to open-source projects. He is the reviewer of Learning RxJava, by Thomas Nield, published by Packt.
www.PacktPub.com
For support files and downloads related to your book, please visit www.PacktPub.com .
Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy.