Kotlin és un llenguatge de programació de propòsit general, multiplataforma i multiparadigma.
Fonaments
Computació
El propòsit inicial dels computadors era computar números.
Algoritme
Pendent de fer
Funció
Una funció és com un petit programa que té un nom propi, i es pot executar (invocar) cridant aquest nom des d’una altra funció
Nul
Un valor nul representa "cap valor" o dades "desconegudes/absents".
Llista
Una llista és un conjunt d'elements agrupats un a continuació de l'altre.
Map
Data
Unes dades (o "data") és un conjunt de valors que estan relacionats i que es gestionen com un conjunt.
Function type
Les funcions es poden tractar com un tipus de dades.
Col·lecció
Una col·lecció és un conjunt de dades.
Extension Function
Kotlin et permet estendre una classe amb noves funcions sense tenir que modificar la classe o crear una classe nova que estengui la classe a la cual vols afegir una nova funcionalitat.
Desenvolupament
Idea
Idea és una IDE per Kotlin.
Amper
Amper és una eina de construcció per als llenguatges Kotlin i Java.
Logging
Logging is an essential part of any production-ready application.
Test
Les proves unitàries són petites proves aïllades que comproven si un mètode, classe, funcionalitat o component implementa correctament la seva lògica empresarial.
Kotest
Power-assert
Kotlin Symbol Processing
KSP is a tool that allows feeding Kotlin source code to processors, which can in turn use this information to generate code, classes, or resources, for instance.
Input/Output
Serialització
La serialització consisteix en convertir un arbre d'objectes en un string o en una seqüència de bytes.
File
El sistema de fitxers de l'ordinador ens permet persistir les dades en memòria secundària.
Ktorfit
Ktorfit is an HTTP client/Kotlin Symbol Processor for Kotlin Multiplatform
Objectes
Objecte
Els objectes emmagatzemen dades mitjançant propietats (vals i vars) i efectuen operacions amb aquestes dades mitjançant funcions.
UI
Compose
Compose te permite definir la interfaz gráfica mediante funciones descriptivas.
Concurrent
Thread
Corutines
Bases de dades
Room
Room is an abstraction layer over SQLite to allow fluent database access while harnessing the full power of SQLite.
Exposed
Exposed és una biblioteca SQL de Kotlin que proporciona un llenguatge específic de domini (DSL) amb seguretat de tipus per construir consultes, un estil d'interacció de mapeig objecte-relacional (ORM), i un marc de treball d'Objectes d'Accés a Dades (DAO)
Supabase
MongoDB
MongoDB nos permite gestionar datos documentales.
Web
Ktor
Ktor et permet crear aplicacions client i servidor asíncrones, des de microserveis fins a aplicacions client HTTP multiplataforma de manera senzilla.
HTML
The kotlinx.html library provides the ability to generate DOM elements using statically typed HTML builders (and besides JavaScript, it is even available on the JVM target!)
Wasm
Kotlin/Wasm pot compilar el codi Kotlin en format WebAssembly (Wasm).