001440313 000__ 04527cam\a2200529\i\4500 001440313 001__ 1440313 001440313 003__ OCoLC 001440313 005__ 20230309004555.0 001440313 006__ m\\\\\o\\d\\\\\\\\ 001440313 007__ cr\un\nnnunnun 001440313 008__ 211013s2021\\\\sz\a\\\\o\\\\\000\0\eng\d 001440313 019__ $$a1275427947$$a1276775183$$a1276856271$$a1287775610$$a1287877884$$a1292517922 001440313 020__ $$a9783030808938$$q(electronic bk.) 001440313 020__ $$a3030808939$$q(electronic bk.) 001440313 020__ $$z9783030808921 001440313 020__ $$z3030808920 001440313 0247_ $$a10.1007/978-3-030-80893-8$$2doi 001440313 035__ $$aSP(OCoLC)1275359653 001440313 040__ $$aYDX$$beng$$erda$$epn$$cYDX$$dGW5XE$$dEBLCP$$dOCLCF$$dDCT$$dUKAHL$$dN$T$$dBRX$$dDKU$$dOCLCO$$dOCLCQ$$dCOM$$dOCLCO$$dOCLCQ 001440313 049__ $$aISEA 001440313 050_4 $$aQA76.73.K68$$bH88 2021 001440313 08204 $$a005.13/3$$223 001440313 1001_ $$aHunt, John,$$eauthor. 001440313 24510 $$aBeginner's guide to Kotlin programming /$$cJohn Hunt. 001440313 264_1 $$aCham :$$bSpringer,$$c[2021] 001440313 264_4 $$c©2021 001440313 300__ $$a1 online resource :$$billustrations (some color) 001440313 336__ $$atext$$btxt$$2rdacontent 001440313 337__ $$acomputer$$bc$$2rdamedia 001440313 338__ $$aonline resource$$bcr$$2rdacarrier 001440313 347__ $$atext file 001440313 347__ $$bPDF 001440313 5050_ $$aIntroduction -- Part 1: Kotlin Programming -- A First Kotlin Program -- Flow of Control -- Number Guessing Game -- Functions in Kotlin -- Higher Order Functions -- Curried Functions -- Part 2: Object Oriented Kotlin -- Kotlin Classes -- Objects and Companion Objects, -- Further Kotlin Properties -- Scope and Conditional Functions -- Class Inheritance -- Abstract Classes -- Interfaces, Delegation and Enumerated Types -- Packages -- Nested and Inner Types -- Data Classes -- Sealed and Inline Classes and Typealias -- Operator Overloading -- Error and Exception Handling -- Extension Functions and Properties -- Part 3: Data Containers -- Arrays -- Collections -- Lists -- Sets -- Maps -- Pairs and Triples -- Generic Types -- Functional Programming and Containers -- Part 4: Concurrent Kotlin -- Coroutines -- Coroutine Channel Communications -- Part 5: Android Development -- Android Overview -- Applications and Activities -- Android Layouts and Events -- Android Tic Tac Toe. 001440313 506__ $$aAccess limited to authorized users. 001440313 520__ $$aKotlin is an exciting new language that runs on Windows, macOS and Linux operating systems. It has also been adopted by Google as their preferred language for Android development. This textbook assumes very little knowledge of programming so whether you have dabbled with a little JavaScript, played with a bit of Python, written Java or have virtually no programming experience at all you will find that it is for you. The first part of the book introduces Kotlin program structures as well as conditional flow of control features such as if and when expressions as well as iteration loops such as for, while and do-while. Subsequent chapters explain how functions are implemented in Kotlin and introduce concepts from functional programming such as higher order functions and curried functions. The second part focusses on object oriented programming techniques, these include classes, inheritance, abstraction and interfaces. The third part presents container data types such as Arrays, and collections including Lists, Sets and Maps and the fourth part considers concurrency and parallelism using Kotlin coroutines. The book concludes with an introduction to Android mobile application development using Kotlin. Clear steps are provided explaining how to set up your environment and get started writing your own Kotlin programs. An important aspect of the book is teaching by example and there are many examples presented throughout the chapters. These examples are supported by a public GitHub repository that provides complete working code as well as sample solutions to the chapter exercises. This helps illustrate how to write well structured, clear, idiomatic Kotlin to build real applications. 001440313 588__ $$aOnline resource; title from PDF title page (SpringerLink, viewed October 18, 2021). 001440313 650_0 $$aComputer programming. 001440313 650_0 $$aProgramming languages (Electronic computers) 001440313 650_6 $$aProgrammation (Informatique) 001440313 655_0 $$aElectronic books. 001440313 77608 $$iPrint version:$$z3030808920$$z9783030808921$$w(OCoLC)1256264324 001440313 852__ $$bebk 001440313 85640 $$3Springer Nature$$uhttps://univsouthin.idm.oclc.org/login?url=https://link.springer.com/10.1007/978-3-030-80893-8$$zOnline Access$$91397441.1 001440313 909CO $$ooai:library.usi.edu:1440313$$pGLOBAL_SET 001440313 980__ $$aBIB 001440313 980__ $$aEBOOK 001440313 982__ $$aEbook 001440313 983__ $$aOnline 001440313 994__ $$a92$$bISE