Partiamo dal presupposto che in Kotlin non esiste il concetto di statico.

Quindi è possibile usare il pattern Singleton, ma in maniera un pò differente da Java.

Avremmo sempre il costruttore (primario) privato, e al posto di metodi statici useremo i companion object.

Fuel è un'altra libreria per eseguire richieste HTTP in Kotlin.

Di base ha due dipendenze; se usate Maven:

    <dependencies>
        <dependency>
            <groupId>com.github.kittinunf.fuel</groupId>
            <artifactId>fuel</artifactId>
            <version>1.8.0</version>
        </dependency>
        <dependency>
            <groupId>com.github.kittinunf.result</groupId>
            <artifactId>result</artifactId>
            <version>1.1.0</version>
        </dependency>
    </dependencies>

Kotlin ha un supporto completo per gli Enum, e mette anche a disposizione alcuni metodi statici abbastanza comodi.

Vediamo un esempio basico.

Per tipo di variabile intendo che tipo di oggetto è una determinata variabile.

Può essere utile in alcuni per capire bene cosa restituisce un determinato oggetto.

In Java si usa instanceof, che corrisponde alla parola chiave is in Kotlin.

Tra le varie librerie messe a disposizione dalla Apache Foundation, ne ho trovato una apposita per la gestione delle email: Apache Commons Email!

Questa libreria migliora le API standard di Java, ed ho deciso di usarla per fare qualche test sulle email in Kotlin.

Se usate Maven, dovete aggiungere questo al file pom.xml:

        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-email</artifactId>
            <version>1.4</version>
        </dependency>