Kursplan
Introduktion
Repetition av grundläggande Kotlin
Använda avancerade funktioner i Kotlin
- Använda kapslade funktioner för att återanvända funktionalitet i Kotlin
- Använda infiksnotationen för att anropa funktioner i Kotlin
- Deklarera anonyma funktioner i Kotlin
- Använda inline-modifieraren för effektivitet i Kotlin
- Implementera retur och lokala returer när man arbetar med avancerade funktioner i Kotlin
- Implementera svansrekursion för optimering i Kotlin
- Använda operatoröverladdning i Kotlin
- Använda lambdar med mottagare för att skapa begränsningar på DSL:er i Kotlin
- Anropa instanser i Kotlin
- Använda funktionskonstruktioner i Kotlin
- Funktionskomposition
- Kurrying
- Andra konstruktioner
- Sammanfattning av avancerade funktionsaspekter i Kotlin
Granska klassscenarier i Kotlin
- Implementera fält i Kotlin
- Använda "lateinit"-modifieraren i Kotlin
- Förstå kapslade och inre klasser i Kotlin
- Deklarera "statiska metoder" i Kotlin med hjälp av companionobjekt
- Dölja klasskonstruktorer i Kotlin
- Markera klasser som sealed i Kotlin
- Använda typealiasar i Kotlin
- Sammanfattning av avancerade funktioner för klasser i Kotlin
Implementera delegation i Kotlin
- Förstå konceptet med medlemsdelegation i Kotlin
- Dela ut medlemsfunktioner till en annan klass i Kotlin
- Dela ut egenskaper i Kotlin för effektiv återanvändning av kod
- Använda inbyggda delegerade egenskaper i Kotlin
- Dela ut lokala egenskaper i Kotlin för effektiv återanvändning av kod
- Implementera extension-egenskaper i klasser i Kotlin
- Sammanfattning av de olika aspekterna av delegation i Kotlin
Få djupare förståelse för generiska typer i Kotlin
- Förstå generiska begränsningar
- Förstå varianter och invariant i generiska typer
- Använda "out"-modifieraren för att uttrycka kovarians i generiska typer i Kotlin
- Uttrycka kontravarians i Kotlin
- Utforska konceptet med typprojektioner och stjärneprojektioner i Kotlin
- Sammanfattning av avancerade generiska typer i Kotlin
Metaprogrammering i Kotlin
- Översikt över reflektion
- Använda Java-reflektion med Kotlin med hjälp av Reflektions-API:t
- Använda Kottins Reflektions-API
- Hantera typsuddning i Kotlin
- Använda reified generiska typer i Kotlin
- Deklarera anpassade annotationer i Kotlin
- Sammanfattning av metaprogrammerings- och introspektionstekniker i Kotlin
Föra ut asynkron programmering i Kotlin
- Förstå problemet med asynkron programmering
- Implementera asynkron programmering och coroutines i Kotlin
- Implementera async och await i Kotlin med hjälp av coroutines
- Implementera yield i Kotlin
- Förstå fördelarna med coroutines gentemot reaktiva extensioner
- Sammanfattning av coroutines i Kotlin
Sammanfattning och slutsats
Krav
- Förståelse för grundläggande Kotlin
Målgrupp
- Utvecklare som är intresserade av att få djupare kunskap i Kotlin-programmering
Vittnesmål (7)
Intensitet av kursen och täckning av ämnen. Komplexa ämnen förklaras på ett bra nivå, så även om det finns några blankställen kvar (som DSL) -- kommer det inte att vara svårt att fortsätta själv eftersom jag redan har en grundläggande förståelse och åtminstone vet hur jag ska formulera mina frågor till Google.
Alexey Baryshnev - C.T.Co SIA
Kurs - Advanced Kotlin Programming
Maskintolkat
Ett format – mycket ny information, men det kändes ganska förståeligt och behagligt att lära sig. Mest av det lyckades jag komma ihåg och använda när det behövdes i de följande ämnena.
Alina Karpovich - C.T.Co SIA
Kurs - Advanced Kotlin Programming
Maskintolkat
Instruktörs kompetens, bred kunskap om ämnet. Jag har lärt mig mycket nytt, fått värdefulla kommentarer och svar på mina frågor.
Ilya Ginter - C.T.Co SIA
Kurs - Advanced Kotlin Programming
Maskintolkat
levande kommunikation och bra svar på frågor
Alexander Semyonov - C.T.Co SIA
Kurs - Advanced Kotlin Programming
Maskintolkat
Utför övningar i online-läge, det är kul. Snabb svar på ytterligare frågor
Oleg Sushik - C.T.Co SIA
Kurs - Advanced Kotlin Programming
Maskintolkat
Positiv tillgångsväg
Arseniy - C.T.Co SIA
Kurs - Advanced Kotlin Programming
Maskintolkat
Jag tyckte om övningarna och frågorna där vi skulle tänka som en compiler. Ibland kändes det som att man förstod ämnet vi diskuterade, och med övningarna kunde vi inte bara försäkra oss om att vi kände så utan också att vi verkligen förstod. Om en övning var svår för någon, gavs lösningen genom tydliga steg som visade vad och varför vi gjorde det för att få det att fungera. Det var också riktigt trevligt att när vi fortsatte med dessa övningar såg vi på tidigare övningar och förstod hur vi kunde förbättra något som redan hade lösts en gång.
Kristaps Reinis Lipsha - C.T.Co SIA
Kurs - Advanced Kotlin Programming
Maskintolkat