User Avatar

Corso Kotlin

40 ore
Qualsiasi livello

Kotlin è un linguaggio open-source, multi-paradigma sviluppato da Jetbrains, l’azienda creatrice di IntelliJ ed Android Studio (IDE).

Il linguaggio Kotlin è un linguaggio tipizzato staticamente. Il suo nome deriva dall’Isola Kotlin situata in Russia vicino San Pietroburgo.

Kotlin è semplice, asincrono, funzionale ed orientato agli oggetti. Inoltre Kotlin è espressivo ed interoperabile con Java.

L’interoperabilità con Java è al 100%. Significa che Kotlin è pensato per compilare su JVM. Quando si programma in Kotlin è possibile usare delle classi/librerie Java e viceversa. Non c’è discriminazione tra una classe/libreria scritta in Java ed una scritta in Kotlin. Sia IntelliJ che Android Studio consentono la conversione automatica di un file Java in Kotlin.

Nel 2017 Google ha dichiarato Kotlin come linguaggio ufficiale per Android tanto come Java.

Quali sono i vantaggi di programmare in Kotlin per applicazioni Android? Kotlin è un linguaggio più conciso e sintetico. Consente di scrivere meno codice rispetto a Java. Kotlin è interoperabile con Java come già menzionato prima. Maggiore sicurezza della sua architettura rispetto a Java. Kotlin si basa sulla libreria “runtime” che conferisce maggiore velocità di utilizzo delle app sui dispositivi.

Oggi Kotlin si sta diffondendo con una buona community. Aziende che usano Kotlin per lo sviluppo Android sono AirBnb, Uber, Amazon, Netflix, Pinterest ecc.

Obiettivi del Corso-Kotlin: formare lo studente con conoscenze basi e tecniche per lo sviluppo di applicazioni per dispositivi Android con il linguaggio Kotlin.
Requisiti per i discenti Corso-Kotlin: sviluppatori con conoscenze di un linguaggio ad oggetti

Corso-Kotlin erogato solo per aziende e su richiesta. Modalità virtual classroom online o frontale.

PROGRAMMA Corso-Kotlin (40 ore):

  • Introduzione
    • Panoramica linguaggio Kotlin
    • Installazione JDK ed Android Studio
    • Configurazione Ambiente di sviluppo e set up progetto

  • Basi del linguaggio
    • Introduzione
    • Variabili e Data type
    • Null Safety in Kotlin
    • Conditionals: if e when expression
    • Collections
    • For Loops e while Loops
    • Functions
    • Setup IntelliJ
    • Creazione Main() function
    • Exceptions

  • Functional Programming
    • Introduzione programmazione funzionale
    • Lambdas e Higther-Order Funtion
    • Utilizzo Map() e flatMap ()
    • Utilizzo take() e drop(), zip()
    • Lazy Sequences e performance
    • Utilizzo operatore “let” for Scoping e Nullables
    • Utilizzo “with” per many call e same object
    • Utilizzo closeable
    • Inline Functions

  • Object-Oriented in Kotlin
    • Classi
    • Proprietà con Getter e Setters
    • Primary e Secondary Constructor
    • Methods
    • Data Classes
    • Enhums
    • Ereditarietà
    • Classe Astratte
    • Interface
    • Overriding rules
    • Smart Casts
    • Visibilities
    • Object declarations e singletons
    • Packadges e imports
    • Generic classes e generic functions
    • Covariance (Java vs Kotlin)
    • Contravariance

  • Kotlin per Android
    • Creazione App Project
    • CardView Layout e UI Elements
    • Kotlin Android Extensions
    • Implementare RecyclerView
    • Data Class “Habit”
    • HabitsAdapter
    • Consentire agli utenti di creare Habits
    • Aggiungere menu e second activity
    • Utilizzare gli Intents per cambiare activity
    • Costruire una activity layout
    • SQLite in Kotlin
    • Definire i Contracts
    • Database Helper
    • Salvare Habit in SQLite
    • Implementare Secure Transactions (support Rollback)
    • Salvare in Habit “CreateHabitActivity”
    • Leggere All Habits da SQLite

  • Companio Object
    • Object Class
    • Companion Object
    • Object Expression
    • Processi in background

  • Coroutines
    • The background work
    • Sincrono vs Asincrono
    • Diagnosi e Fix problemi di performance

  • Testing
    • Emulatore
    • Test su dispositivo reale

Vuoi essere ricontattato?

Lasciaci il tuo numero telefonico e la tua email, ti richiameremo nelle 24h:

    Contattaci su Whatsapp