Extension functions, and Lambdas and even Extension Lambdas have both been discussed already (and are assumed knowledge for this page). But the uses of lambdas goes beyond just functionality, and into the realm of expressive code. Expressive code is about having the code represent the ideas behind the code more clearly, allowing better reading of the… Continue reading From Extension Lambdas to expressive Kotlin DSLs
Introduction. Previous pages have introduced the concept of lambdas and closures, and explained how the concept of the closure relates to methods, static and class methods in both python on kotlin. This page builds on the concept of lambdas and closures, and provides more details on the workings in kotlin and how this differs from… Continue reading Closures, callbacks, Lambdas and Lambda parameters
Both scrum and Kanban project boards allow for different issue types. In many tools for project boards, developers can even choose their own issue types. This page covers the standard scrum issue types, and particularly the differences between stories, tasks and epics. Kanban and Scrum: What is the point? the key to agile: stories vs… Continue reading Issues: bug, task, story and epic
Contents: Kotlin DSL list of other pages Build Basics in Gradle Plugins Dependencies and Artifact Repositories A Simple Practical Example Varying the Source Locations: SourceSets Application Testing - JUnit local jars as dependencies Build Basics with Gradle. The build file prepares a configuration for gradle and for any optional extra build tools. The basic configuration… Continue reading Gradle Kotlin DSL 1.0: Basic App Build
Kotlin has Interface, Abstract Classes and Delegation, while Python has multiple inheritance. Different tools, same problems. The different tools reflect an evolution of what Object Oriented best summed up by: Composition over inheritance. The rethink, the new concepts and how to use them are explained here. Abstract Classes Interfaces: Duck Typing with Safety Multiple Interfaces… Continue reading Interfaces, Delegation & Composition vs Multiple Inheritance & Duck Typing
The theme for these pages is on learning Kotlin with Python as the starting point. Python is applicable desktop/server applications, as is every language on this page. However some also deliver: Native Code, Browser Code, Mobile Apps and JVM applications. Is Kotlin the best choice to compliment Python? Kotlin rates very highly on 'liked scales'… Continue reading Kotlin? Or another alternative?
Some meanings here are genuinely in 'universal' use (the universe being limited geographically to Earth). However, 'universal' agreement is extremely rare. So very often this is about the definition I have chosen to work with. In fact, in some cases, there are at least two common uses of the same term. These also make… Continue reading Glossary