OOP: Using Kotlin to improve OOP Skills

Ok, Object Oriented Programming (OOP)is not exactly new, and there are lots of pages on OOP on the web.  This page comes from a background of both Python and Kotlin, and how improved programming styles offered by Kotlin can change how you program.  Although Kotlin automates newer techniques and provides assistance coding, you can 'backport'… Continue reading OOP: Using Kotlin to improve OOP Skills

Advertisements

TDD or Not TDD? That is the question!

What actually is TDD (Test Driven Development) ? Is TDD Dead? Do you associate this term for when Tests actually Drive Development,  or use the label TDD for the practice of ensuring code coverage by having units tests? TDD can be taken to mean different things than the original meaning, and there are some risks… Continue reading TDD or Not TDD? That is the question!

Evaluation of Kotlin Native for mobile: January 2018

We have been looking at Kotlin Native (KN) as a viable solution for mobile development, and as a competitive solution to those like Xamarin - or to completely separate developments for iOS and Android. To be a viable mobile solution in general requires Kotlin Native(KN)  to be workable for iOS as first announced On my… Continue reading Evaluation of Kotlin Native for mobile: January 2018

Building: No need with python?

Yes, building is needed with python.  Python normally uses an environment build approach which allows the developer to run code without noticing a build, and simple programs even when shared can seem to need no build.  To get started with programming with python, you just don't notice builds, although usually they become important later.  But… Continue reading Building: No need with python?

Gradle with Intellij: Using build.gradle

When first opening a kotlin project that has a gradle configuration, If you haven't installed gradle, check the following tutorial to install it: https://gradle.org/install/ Open Intellij: Open: If Intellij is already running: From "File" menu, click "Open" If Intellij is not already running: Choose "Import Project" Select the build.gradle from the project you want to open Click "Open as… Continue reading Gradle with Intellij: Using build.gradle

When will your project ‘grow up’ and require typesafe code?

There is common belief that after an initial very agile development period,  "grown up projects should switch to a static typed language".  This also raises the question, "are type-safe languages less suitable for early stage development?"  This page considers the evidence for these beliefs, plus considers if there is a benefit to starting dynamic and… Continue reading When will your project ‘grow up’ and require typesafe code?

Class Level Objects, Companion Objects & Instances

Topics for this section: Class Level Objects & Companion Objects:  Key Terminology. the simplest case - one object type Python - an additional object type requires precise terminology Kotlin: the companion object equates to the Python class object Class & Companion Variables and Methods vs instance methods and variables  Terminology for Clarity: Class Level Object,… Continue reading Class Level Objects, Companion Objects & Instances