Návrh Školení
Úvod
Aktualizace na Kotlin Základy
Použití pokročilých funkcí v Kotlin
- Použití vnořených funkcí k opětovnému použití funkcí v Kotlin Použití infixové notace k volání funkcí v Kotlin Deklarace anonymních funkcí v Kotlin Použití inline modifikátoru pro efektivitu v Kotlin Implementace návratů a místních návratů při práci s pokročilými funkcemi v [ 2] Implementace Tail Recursion pro optimalizaci v Kotlin Použití přetížení operátora v Kotlin Použití lambdas s přijímači k vytvoření omezení DSL v Kotlin Vyvolání instancí v Kotlin Použití funkčních konstruktů v Kotlin Složení funkcí Currying Other Constructs
Implementace polí v Kotlin Použití modifikátoru "lateinit" v Kotlin Pochopení vnořených a vnitřních tříd v Kotlin Definování "statických metod" v Kotlin Použití doprovodných objektů Skrytí konstruktorů tříd v Kotlin Označení tříd jako zapečetěných v [ 2] Použití aliasů typu v Kotlin Souhrn pokročilých funkcí z Kotlin pro třídy
- Implementace delegace v Kotlin
Pochopení konceptu delegování členů v Kotlin Delegování členských funkcí na jinou třídu v Kotlin Delegování vlastností v Kotlin pro efektivitu opětovného použití kódu Použití vestavěných delegovaných vlastností v Kotlin Delegování místních vlastností v Kotlin pro opětovné použití kódu Implementace vlastností rozšíření ve třídách v Kotlin Shrnutí různých aspektů delegování v Kotlin
- Hluboké pochopení generik v Kotlin
Pochopení generických omezení Pochopení variance a invariance v generikách Použití modifikátoru "out" k vyjádření kovariance v generikách v Kotlin Vyjádření rozporuplnosti v Kotlin Zkoumání konceptu typových projekcí a hvězdicových projekcí v Kotlin Souhrn pokročilých generik v [2 ]
- Metaprogramování v Kotlin
Přehled reflexe pomocí Java Reflection s Kotlin Použití Reflection API Použití Kotlin's Reflection API Handling Type Erasure in Kotlin Using Reified Generics v Kotlin Definování vlastních anotací v Kotlin Shrnutí technik metaprogramování a introspekce v Kotlin
- Provádění asynchronního Programming v Kotlin
Pochopení problému asynchronního programování Implementace asynchronního programování a korutin v Kotlin Implementace Async a čekání v Kotlinu pomocí korutin Implementace výnosu v Kotlin Pochopení výhod korutin oproti Reactivním rozšířením Shrnutí korutin v Kotlin
- Shrnutí a závěr
Požadavky
- Pochopení základů Kotlin
Publikum
- Vývojáři se zájmem o získání hlubších znalostí Kotlin programování
Reference (7)
Intenzita kurzu, pokrytí témat. Složitá témata jsou vysvětlena na dobré úrovni, takže i když v nich zbyla nějaká bílá místa (jako DSL) - nebude těžké pokračovat sám, protože už mám společné chápání základů a alespoň vědět, jak formulovat své otázky, abych Google.
Alexey Baryshnev - C.T.Co SIA
Kurz - Advanced Kotlin Programming
Machine Translated
A format - lot of new info, but it felt pretty understandable and comfortable to learn, most of it I managed to remember and use when necessary at the next topics.
Alina Karpovich - C.T.Co SIA
Kurz - Advanced Kotlin Programming
Trainer competence, wide subject knowledge. I have learned a lot new stuff, received valuable comments and answers to my questions.
Ilya Ginter - C.T.Co SIA
Kurz - Advanced Kotlin Programming
live communication and good answers to questions
Alexander Semyonov - C.T.Co SIA
Kurz - Advanced Kotlin Programming
Execute exercises in mode online, it is cool. Fast answer about additional questions
Oleg Sushik - C.T.Co SIA
Kurz - Advanced Kotlin Programming
Positive approach
Arseniy - C.T.Co SIA
Kurz - Advanced Kotlin Programming
I liked exercises and questions where we should think like a compiler. Sometimes it feels like you understand topic we are discussing and with exercise we could make sure not only that we feel that way but really understood. In case exercise was difficult for someone, solution was provided by clear steps what and why we do to make this working. Also by going further with these exercises it was really nice that we looked at previous ones understanding how we can improve something that was already done by one solution.