Mastering High Performance with Kotlin

Mastering High Performance with Kotlin

Author: Igor Kucherenko

Publisher: Packt Publishing Ltd

Published: 2018-06-15

Total Pages: 308

ISBN-13: 1788998359

DOWNLOAD EBOOK

Find out how to write Kotlin code without overhead and how to use different profiling tools and bytecode viewer to inspect expressions of Kotlin language. Key Features Apply modern Kotlin features to speed up processing and implement highly efficient and reliable codes. Learn memory optimization, concurrency, multi-threading, scaling, and caching techniques to achieve high performance. Learn how to prevent unnecessary overhead and use profiling tools to detect performance issues. Book Description The ease with which we write applications has been increasing, but with it comes the need to address their performance. A balancing act between easily implementing complex applications and keeping their performance optimal is a present-day requirement In this book, we explore how to achieve this crucial balance, while developing and deploying applications with Kotlin. The book starts by analyzing various Kotlin specifcations to identify those that have a potentially adverse effect on performance. Then, we move on to monitor techniques that enable us to identify performance bottlenecks and optimize performance metrics. Next, we look at techniques that help to us achieve high performance: memory optimization, concurrency, multi threading, scaling, and caching. We also look at fault tolerance solutions and the importance of logging. We'll also cover best practices of Kotlin programming that will help you to improve the quality of your code base. By the end of the book, you will have gained some insight into various techniques and solutions that will help to create high-performance applications in the Kotlin environment What you will learn Understand the importance of high performance Learn performance metrics Learn popular design patterns currently being used in Kotlin Understand how to apply modern Kotlin features to data processing Learn how to use profling tools Discover how to read bytecode Learn to perform memory optimizations Uncover approaches to the multithreading environment Who this book is for This book is for Kotlin developers who would like to build reliable and high-performance applications. Prior Kotlin programming knowledge is assumed.


Mastering Android Development with Kotlin

Mastering Android Development with Kotlin

Author: Milos Vasic

Publisher: Packt Publishing Ltd

Published: 2017-11-08

Total Pages: 366

ISBN-13: 178847466X

DOWNLOAD EBOOK

Master Android development using a variety of Kotlin features About This Book Leverage specific features of Kotlin to ease Android application development An illustrative guide that will help you write code based Kotlin language to build robust Android applications Filled with various practical examples build amazing Android project using Kotlin so you can easily apply your knowledge to real world scenarios Who This Book Is For The book is for developers who want to build amazing Android applications in an easy and effective way. Basic knowledge of Kotlin is assumed, but you do not need any familiarity with Android development. What You Will Learn Understand the basics of Android development with Kotlin Get to know the key concepts in Android development See how to create modern mobile applications for the Android platform Adjust your application's look and feel Know how to persist and share application database Work with Services and other concurrency mechanisms Write effective tests Migrate an existing Java-based project to Kotlin In Detail Kotlin is a programming language intended to be a better Java, and it's designed to be usable and readable across large teams with different levels of knowledge. As a language, it helps developers build amazing Android applications in an easy and effective way. This book begins by giving you a strong grasp of Kotlin's features in the context of Android development and its APIs. Moving on, you'll take steps toward building stunning applications for Android. The book will show you how to set up the environment, and the difficulty level will grow steadily with the applications covered in the upcoming chapters. Later on, the book will introduce you to the Android Studio IDE, which plays an integral role in Android development. We'll use Kotlin's basic programming concepts such as functions, lambdas, properties, object-oriented code, safety aspects, type parameterization, testing, and concurrency, which will guide you through writing Kotlin code into production. We'll also show you how to integrate Kotlin into any existing Android project. Style and approach In this book, you'll master Android development using Kotlin through real application examples. We'll introduce you to basic Android concepts and offer guidance from the first steps to the final project. In each chapter, we'll develop one important application functionality as a development milestone. As we progress, you'll become more experienced in Android and our application will progress toward a real-world product. Finally, when we complete the application's development, we'll write proper tests to ensure it's production ready.


Programming Kotlin

Programming Kotlin

Author: Stephen Samuel

Publisher: Packt Publishing Ltd

Published: 2017-01-18

Total Pages: 413

ISBN-13: 1787122654

DOWNLOAD EBOOK

Familiarize yourself with all of Kotlin's features with this in-depth guide About This Book Get a thorough introduction to Kotlin Learn to use Java code alongside Kotlin without any hiccups Get a complete overview of null safety, Generics, and many more interesting features Who This Book Is For The book is for existing Java developers who want to learn more about an alternative JVM language. If you want to see what Kotlin has to offer, this book is ideal for you. What You Will Learn Use new features to write structured and readable object-oriented code Find out how to use lambdas and higher order functions to write clean, reusable, and simple code Write unit tests and integrate Kotlin tests with Java code in a transitioning code base Write real-world production code in Kotlin in the style of microservices Leverage Kotlin's extensions to the Java collections library Use destructuring expressions and find out how to write your own Write code that avoids null pointer errors and see how Java-nullable code can integrate with features in a Kotlin codebase Discover how to write functions in Kotlin, see the new features available, and extend existing libraries Learn to write an algebraic data types and figure out when they should be used In Detail Kotlin has been making waves ever since it was open sourced by JetBrains in 2011; it has been praised by developers across the world and is already being adopted by companies. This book provides a detailed introduction to Kotlin that shows you all its features and will enable you to write Kotlin code to production. We start with the basics: get you familiar with running Kotlin code, setting up, tools, and instructions that you can use to write basic programs. Next, we cover object oriented code: functions, lambdas, and properties – all while using Kotlin's new features. Then, we move on to null safety aspects and type parameterization. We show you how to destructure expressions and even write your own. We also take you through important topics like testing, concurrency, microservices, and a whole lot more. By the end of this book you will be able to compose different services and build your own applications. Style and approach An easy to follow guide that covers the full set of features in Kotlin programming.


Kotlin Standard Library Cookbook

Kotlin Standard Library Cookbook

Author: Samuel Urbanowicz

Publisher: Packt Publishing Ltd

Published: 2018-07-30

Total Pages: 233

ISBN-13: 178883464X

DOWNLOAD EBOOK

Build optimized applications in Kotlin by learning how to make use of the standard library features the smart way Key Features Get the most out of the Kotlin library to develop high-quality portable applications Explore the powerful support for data processing and I/O operations Discover ways to enhance your Android application development Book Description Given the verbosity of Java, developers have turned to Kotlin for effective software development. The Kotlin standard library provides vital tools that make day-to-day Kotlin programming easier. This library features the core attributes of the language, such as algorithmic problems, design patterns, data processing, and working with files and data streams. The recipes in this book offer coding solutions that can be readily executed. The book covers various topics related to data processing, I/O operations, and collections transformation. We'll walk through effective design patterns in Kotlin and you'll understand how coroutines add new features to JavaScript. As you make your way through the chapters, you'll learn how to implement clean, reusable functions and scalable interfaces containing default implementations. In the concluding chapters, we'll provide recipes on functional programming concepts, such as lambdas, monads, functors, and Kotlin scoping functions. By the end of the book, you'll be able to address a range of problems that Kotlin developers face by implementing easy-to-follow solutions. What you will learn Work with ranges, progressions, and sequences in use cases Add new functionalities to current classes with Kotlin extensions Understand elements such as lambdas, closures, and monads Build a REST API consumer with Retrofit and a coroutine adapter Discover useful tips and solutions for making your Android projects Explore the benefits of standard library features Who this book is for This book is for software developers who are familiar with Kotlin’s basics and want to discover more advanced features and concepts, especially those provided by the Kotlin standard library. It’s also ideal for experienced software developers who are familiar with the functional programming paradigm and other programming languages who want to switch to Kotlin. It will also help Java developers switch to Kotlin and integrate it into existing Java Virtual Machine (JVM) projects.


Hands-On Object-Oriented Programming with Kotlin

Hands-On Object-Oriented Programming with Kotlin

Author: Abid Khan

Publisher: Packt Publishing Ltd

Published: 2018-10-31

Total Pages: 364

ISBN-13: 1789619645

DOWNLOAD EBOOK

Learn everything you need to know about object-oriented programming with the latest features of Kotlin 1.3 Key FeaturesA practical guide to understand objects and classes in KotlinLearn to write asynchronous, non-blocking codes with Kotlin coroutinesExplore Encapsulation, Inheritance, Polymorphism, and Abstraction in KotlinBook Description Kotlin is an object-oriented programming language. The book is based on the latest version of Kotlin. The book provides you with a thorough understanding of programming concepts, object-oriented programming techniques, and design patterns. It includes numerous examples, explanation of concepts and keynotes. Where possible, examples and programming exercises are included. The main purpose of the book is to provide a comprehensive coverage of Kotlin features such as classes, data classes, and inheritance. It also provides a good understanding of design pattern and how Kotlin syntax works with object-oriented techniques. You will also gain familiarity with syntax in this book by writing labeled for loop and when as an expression. An introduction to the advanced concepts such as sealed classes and package level functions and coroutines is provided and we will also learn how these concepts can make the software development easy. Supported libraries for serialization, regular expression and testing are also covered in this book. By the end of the book, you would have learnt building robust and maintainable software with object oriented design patterns in Kotlin. What you will learnGet an overview of the Kotlin programming languageDiscover Object-oriented programming techniques in Kotlin Understand Object-oriented design patternsUncover multithreading by Kotlin wayUnderstand about arrays and collectionsUnderstand the importance of object-oriented design patternsUnderstand about exception handling and testing in OOP with KotlinWho this book is for This book is for programmers and developers who wish to learn Object-oriented programming principles and apply them to build robust and scalable applications. Basic knowledge in Kotlin programming is assumed


Android High Performance Programming

Android High Performance Programming

Author: Enrique Lopez Manas

Publisher: Packt Publishing Ltd

Published: 2016-08-29

Total Pages: 412

ISBN-13: 1785283383

DOWNLOAD EBOOK

Build fast and efficient Android apps that run as reliably as clockwork in a multi-device world About This Book Wide coverage of various topics that help in developing optimal applications Explore the concepts of Advanced Native Coding in depth A must-have for professional-standard Android developers for whom performance failures and the sloppy use of resources are simply unacceptable Who This Book Is For This book is aimed at developers with an advanced knowledge of Android and who want to test their skills and learn new techniques to increase the performance of their applications. We assume they are comfortable working with the entire Android SDK, and have been doing it for a few years. They need to be familiar with frameworks such as NDK to use native code, which is crucial for app performance What You Will Learn Create Android applications that squeeze the most from the limited resource capacity of devices Swap code that isn't performing Efficient memory management by identifying problems such as leaks Reap the benefits of multithreaded and asynchronous programming Maximize the security and encryption mechanisms natively provided by Android Perform efficient network operations and techniques to retrieve data from servers Master the NDK to write native code that can perform faster operations In Detail Performant applications are one of the key drivers of success in the mobile world. Users may abandon an app if it runs slowly. Learning how to build applications that balance speed and performance with functionality and UX can be a challenge; however, it's now more important than ever to get that balance right. Android High Performance will start you thinking about how to wring the most from any hardware your app is installed on, so you can increase your reach and engagement. The book begins by providing an introduction to state–of-the-art Android techniques and the importance of performance in an Android application. Then, we will explain the Android SDK tools regularly used to debug and profile Android applications. We will also learn about some advanced topics such as building layouts, multithreading, networking, and security. Battery life is one of the biggest bottlenecks in applications; and this book will show typical examples of code that exhausts battery life, how to prevent this, and how to measure battery consumption from an application in every kind of situation to ensure your apps don't drain more than they should. This book explains techniques for building optimized and efficient systems that do not drain the battery, cause memory leaks, or slow down with time. Style and approach The book follows a tutorial-based approach to take the reader from the basic fundamentals of debugging to advanced performance-improvement concepts.


Mastering Kotlin

Mastering Kotlin

Author: Nate Ebel

Publisher: Packt Publishing Ltd

Published: 2019-10-11

Total Pages: 417

ISBN-13: 1838552367

DOWNLOAD EBOOK

Explore popular language features, Java to Kotlin interoperability, advanced topics, and practical applications by building a variety of sample projects Key FeaturesUnderstand and leverage the syntax, tools, and patterns by writing code in KotlinExplore practical topics such as Java interop, concurrency with coroutines, and functional programmingDiscover how to use Kotlin for build targets like Android, iOS, JavaScript, and backend serviceBook Description Using Kotlin without taking advantage of its power and interoperability is like owning a sports car and never taking it out of the garage. While documentation and introductory resources can help you learn the basics of Kotlin, the fact that it’s a new language means that there are limited learning resources and code bases available in comparison to Java and other established languages. This Kotlin book will show you how to leverage software designs and concepts that have made Java the most dominant enterprise programming language. You’ll understand how Kotlin is a modern approach to object-oriented programming (OOP). This book will take you through the vast array of features that Kotlin provides over other languages. These features include seamless interoperability with Java, efficient syntax, built-in functional programming constructs, and support for creating your own DSL. Finally, you will gain an understanding of implementing practical design patterns and best practices to help you master the Kotlin language. By the end of the book, you'll have obtained an advanced understanding of Kotlin in order to be able to build production-grade applications. What you will learnModel data using interfaces, classes, and data classesGrapple with practical interoperability challenges and solutions with JavaBuild parallel apps using concurrency solutions such as coroutinesExplore functional, reactive, and imperative programming to build flexible appsDiscover how to build your own domain-specific languageEmbrace functional programming using the standard library and ArrowDelve into the use of Kotlin for frontend JavaScript developmentBuild server-side services using Kotlin and KtorWho this book is for If you’re a Kotlin developer looking to further their skills or a professional Java developer looking for better or professional resources in order to make a switch to Kotlin, this book is for you. Familiarity with Kotlin programming will assist with understanding key concepts covered in the book.


Learn Kotlin Programming

Learn Kotlin Programming

Author: Stephen Samuel

Publisher: Packt Publishing Ltd

Published: 2019-05-29

Total Pages: 497

ISBN-13: 178980874X

DOWNLOAD EBOOK

Delve into the world of Kotlin and learn to build powerful Android and web applications Key FeaturesLearn the fundamentals of Kotlin to write high-quality codeTest and debug your applications with the different unit testing frameworks in KotlinExplore Kotlin's interesting features such as null safety, reflection, and annotationsBook Description Kotlin is a general-purpose programming language used for developing cross-platform applications. Complete with a comprehensive introduction and projects covering the full set of Kotlin programming features, this book will take you through the fundamentals of Kotlin and get you up to speed in no time. Learn Kotlin Programming covers the installation, tools, and how to write basic programs in Kotlin. You'll learn how to implement object-oriented programming in Kotlin and easily reuse your program or parts of it. The book explains DSL construction, serialization, null safety aspects, and type parameterization to help you build robust apps. You'll learn how to destructure expressions and write your own. You'll then get to grips with building scalable apps by exploring advanced topics such as testing, concurrency, microservices, coroutines, and Kotlin DSL builders. Furthermore, you'll be introduced to the kotlinx.serialization framework, which is used to persist objects in JSON, Protobuf, and other formats. By the end of this book, you'll be well versed with all the new features in Kotlin and will be able to build robust applications skillfully. What you will learnExplore the latest Kotlin features in order to write structured and readable object-oriented codeGet to grips with using lambdas and higher-order functionsWrite unit tests and integrate Kotlin with Java codeCreate real-world apps in Kotlin in the microservices styleUse Kotlin extensions with the Java collections libraryUncover destructuring expressions and find out how to write your ownUnderstand how Java-nullable code can be integrated with Kotlin featuresWho this book is for If you’re a beginner or intermediate programmer who wants to learn Kotlin to build applications, this book is for you. You’ll also find this book useful if you’re a Java developer interested in switching to Kotlin.


Mastering Kotlin

Mastering Kotlin

Author: Nate Ebel

Publisher:

Published: 2019-10-11

Total Pages: 434

ISBN-13: 9781838555726

DOWNLOAD EBOOK

Explore popular language features, Java to Kotlin interoperability, advanced topics, and practical applications by building a variety of sample projects Key Features Understand and leverage the syntax, tools, and patterns by writing code in Kotlin Explore practical topics such as Java interop, concurrency with coroutines, and functional programming Discover how to use Kotlin for build targets like Android, iOS, JavaScript, and backend service Book Description Using Kotlin without taking advantage of its power and interoperability is like owning a sports car and never taking it out of the garage. While documentation and introductory resources can help you learn the basics of Kotlin, the fact that it's a new language means that there are limited learning resources and code bases available in comparison to Java and other established languages. This Kotlin book will show you how to leverage software designs and concepts that have made Java the most dominant enterprise programming language. You'll understand how Kotlin is a modern approach to object-oriented programming (OOP). This book will take you through the vast array of features that Kotlin provides over other languages. These features include seamless interoperability with Java, efficient syntax, built-in functional programming constructs, and support for creating your own DSL. Finally, you will gain an understanding of implementing practical design patterns and best practices to help you master the Kotlin language. By the end of the book, you'll have obtained an advanced understanding of Kotlin in order to be able to build production-grade applications. What you will learn Model data using interfaces, classes, and data classes Grapple with practical interoperability challenges and solutions with Java Build parallel apps using concurrency solutions such as coroutines Explore functional, reactive, and imperative programming to build flexible apps Discover how to build your own domain-specific language Embrace functional programming using the standard library and Arrow Delve into the use of Kotlin for frontend JavaScript development Build server-side services using Kotlin and Ktor Who this book is for If you're a Kotlin developer looking to further their skills or a professional Java developer looking for better or professional resources in order to make a switch to Kotlin, this book is for you. Familiarity with Kotlin programming will assist with understanding key concepts covered in the book.


Kotlin Programming By Example

Kotlin Programming By Example

Author: Iyanu Adelekan

Publisher: Packt Publishing Ltd

Published: 2018-03-28

Total Pages: 490

ISBN-13: 1788479785

DOWNLOAD EBOOK

Enhance your Kotlin programming skills by building 3 real-world applications Key Features Build three full-fledged, engaging applications from scratch and learn to deploy them Enhance your app development and programming activities with Kotlin’s powerful and intuitive tools and utilities. Experience the gentle learning curve, expressiveness, and intuitiveness of Kotlin, as you develop your own applications Book Description Kotlin greatly reduces the verbosity of source code. With Google having announced their support for Kotlin as a first-class language for writing Android apps, now's the time learn how to create apps from scratch with Kotlin Kotlin Programming By Example takes you through the building blocks of Kotlin, such as functions and classes. You’ll explore various features of Kotlin by building three applications of varying complexity. For a quick start to Android development, we look at building a classic game, Tetris, and elaborate on object-oriented programming in Kotlin. Our next application will be a messenger app, a level up in terms of complexity. Before moving onto the third app, we take a look at data persistent methods, helping us learn about the storage and retrieval of useful applications. Our final app is a place reviewer: a web application that will make use of the Google Maps API and Place Picker. By the end of this book, you will have gained experience of of creating and deploying Android applications using Kotlin. What you will learn Learn the building blocks of the Kotlin programming language Develop powerful RESTful microservices for Android applications Create reactive Android applications efficiently Implement an MVC architecture pattern and dependency management using Kotlin Centralize, transform, and stash data with Logstash Secure applications using Spring Security Deploy Kotlin microservices to AWS and Android applications to the Play Store Who this book is for This book is for those who are new to Kotlin or are familiar with the basics, having dabbled with Java until now. Basic programming knowledge is mandatory.