План на курса
Въведение
Опресняване на Kotlin Основи
Използване на разширени функции в Kotlin
- Използване на вложени функции за повторно използване на функционалност в Kotlin Използване на Infix нотация за извикване на функции в Kotlin Деклариране на анонимни функции в Kotlin Използване на вграден модификатор за ефективност в Kotlin Внедряване на връщания и локални връщания при работа с разширени функции в [ 2] Внедряване на рекурсия на опашката за оптимизиране в Kotlin Използване на претоварване на оператор в Kotlin Използване на ламбда с приемници за създаване на ограничения върху DSL в Kotlin Извикване на екземпляри в Kotlin Използване на функционални конструкции в Kotlin Композиция на функции Curry други конструкции
Внедряване на полета в Kotlin Използване на модификатора "lateinit" в Kotlin Разбиране на вложени и вътрешни класове в Kotlin Дефиниране на "статични методи" в Kotlin Използване на придружаващи обекти Скриване на конструктори на класове в Kotlin Маркиране на класове като запечатани в [ 2] Използване на псевдоними на типове в Kotlin Резюме на разширените функции на Kotlin за класове
- Изпълнение на делегирането в Kotlin
Разбиране на концепцията за делегиране на член в Kotlin Делегиране на функции на член на друг клас в Kotlin Делегиране на свойства в Kotlin за ефективност на повторно използване на код Използване на вградени делегирани свойства в Kotlin Делегиране на локални свойства в Kotlin за повторно използване на код Внедряване на свойства на разширение в класове в Kotlin Обобщение на различните аспекти на делегирането в Kotlin
- Получаване на задълбочено разбиране на генеричните лекарства в Kotlin
Разбиране на генеричните ограничения Разбиране на вариацията и инвариантността в генериците Използване на модификатора "out" за изразяване на ковариация в генериците в Kotlin Изразяване на контравариантност в Kotlin Проучване на концепцията за типови проекции и звездни проекции в Kotlin Резюме на разширените генерики в [2 ]
- Метапрограмиране в Kotlin
Общ преглед на Reflection Използване на Java Reflection с Kotlin Използване на Reflection API Използване на Reflection API на Kotlin Обработка на изтриване на типа в Kotlin Използване на Reified Generics в Kotlin Дефиниране на персонализирани анотации в Kotlin Резюме на техниките за метапрограмиране и интроспекция в Kotlin
- Изпълнение на Asynchronous Programming в Kotlin
Разбиране на проблема с асинхронното програмиране Внедряване на асинхронно програмиране и съпрограмми в Kotlin Внедряване на Async и Await в Kotlin Използване на съпрограмми Внедряване на Yield в Kotlin Разбиране на предимствата на съпрограммите пред Reactive разширения Обобщение на съпрограммите в Kotlin
- Обобщение и заключение
Изисквания
- Разбиране на основите на Kotlin
Публика
- Разработчици, които се интересуват от придобиване на по-задълбочени познания за Kotlin програмиране
Oтзиви от потребители (7)
Интензивност на курса, обхват на темите. Сложните теми са обяснени на добро ниво, така че въпреки че има някои бели петна, останали в тях (като DSL) -- няма да е трудно да продължа сам, тъй като вече имам общо разбиране за база и поне знам как да формулирам въпросите си към Google.
Alexey Baryshnev - C.T.Co SIA
Курс - Advanced Kotlin Programming
Машинен превод
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
Курс - 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
Курс - Advanced Kotlin Programming
live communication and good answers to questions
Alexander Semyonov - C.T.Co SIA
Курс - Advanced Kotlin Programming
Execute exercises in mode online, it is cool. Fast answer about additional questions
Oleg Sushik - C.T.Co SIA
Курс - Advanced Kotlin Programming
Positive approach
Arseniy - C.T.Co SIA
Курс - 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.