Введение в идиоматический Котлин весна 2025 — различия между версиями
(Новая страница: «Test») |
Irinaiv (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
− | + | == Общий сведения == | |
+ | * Начало курса: 15 февраля | ||
+ | * Срок обучения: 4 месяца, 2 раза в неделю | ||
+ | |||
+ | == Общие сведения == | ||
+ | На курсе разобраны основные особенности языка Kotlin, а также основы численных методов и решение практических численных и научных задач на Kotlin. Существенное внимание уделено подходам к проектированию научных библиотек и приложений, асинхронному программированию, а также методам повышения производительности вычислений. | ||
+ | |||
+ | == План курса == | ||
+ | '''От жесткого к мягкому''' | ||
+ | * Программа как набор инструкций. Эволюция программ. | ||
+ | * Структура памяти. Segmentation fault. | ||
+ | * Парадигмы программирования. Генеалогия языков. | ||
+ | * Виртуальные машины, байт-код. | ||
+ | * Компиляция и оптимизации. | ||
+ | * Статическая и динамическая линковка. Библиотеки. | ||
+ | * Структура программы. Точки входа. | ||
+ | '''Инструменты современного программиста''' | ||
+ | * Системы автоматической сборки. | ||
+ | * Системы контроля версий. | ||
+ | * Интегрированные среды разработки. | ||
+ | '''Язык Kotlin''' | ||
+ | * Переменные, классы и объекты. | ||
+ | * Control flow. Процедурный и функциональный подход. | ||
+ | * Замыкания. | ||
+ | * Структуры данных и операции над ними. | ||
+ | * Свойства и делегаты. | ||
+ | * Параметрические типы. | ||
+ | * Расширения. | ||
+ | * Боксинг. | ||
+ | * Мультиплатформные проекты | ||
+ | '''Архитектура программы''' | ||
+ | * Абстракции и интерфейсы. | ||
+ | * Основы коллективной разработки при помощи современных инструментов. | ||
+ | * Идеология объектного программирования. Разделение поведений. | ||
+ | * Идеология функционального программирования. | ||
+ | '''Научное программирование''' | ||
+ | * Основы численных методов. Понятие о численной точности. Сложность алгоритмов. | ||
+ | * Численное дифференцирование и интегрирование. | ||
+ | * Генераторы случайных чисел и Монте-Карло моделирование. | ||
+ | * Высокопроизводительные параллельные и конкурентные вычисления. | ||
+ | * Проблема ввода-вывода и основные методы ее решения. | ||
+ | * Системы сбора данных. Протоколы обмена данными. | ||
+ | * Основы работы с большими данными. | ||
+ | * Поточная обработка данных. |
Версия 13:23, 19 декабря 2024
Общий сведения
- Начало курса: 15 февраля
- Срок обучения: 4 месяца, 2 раза в неделю
Общие сведения
На курсе разобраны основные особенности языка Kotlin, а также основы численных методов и решение практических численных и научных задач на Kotlin. Существенное внимание уделено подходам к проектированию научных библиотек и приложений, асинхронному программированию, а также методам повышения производительности вычислений.
План курса
От жесткого к мягкому
- Программа как набор инструкций. Эволюция программ.
- Структура памяти. Segmentation fault.
- Парадигмы программирования. Генеалогия языков.
- Виртуальные машины, байт-код.
- Компиляция и оптимизации.
- Статическая и динамическая линковка. Библиотеки.
- Структура программы. Точки входа.
Инструменты современного программиста
- Системы автоматической сборки.
- Системы контроля версий.
- Интегрированные среды разработки.
Язык Kotlin
- Переменные, классы и объекты.
- Control flow. Процедурный и функциональный подход.
- Замыкания.
- Структуры данных и операции над ними.
- Свойства и делегаты.
- Параметрические типы.
- Расширения.
- Боксинг.
- Мультиплатформные проекты
Архитектура программы
- Абстракции и интерфейсы.
- Основы коллективной разработки при помощи современных инструментов.
- Идеология объектного программирования. Разделение поведений.
- Идеология функционального программирования.
Научное программирование
- Основы численных методов. Понятие о численной точности. Сложность алгоритмов.
- Численное дифференцирование и интегрирование.
- Генераторы случайных чисел и Монте-Карло моделирование.
- Высокопроизводительные параллельные и конкурентные вычисления.
- Проблема ввода-вывода и основные методы ее решения.
- Системы сбора данных. Протоколы обмена данными.
- Основы работы с большими данными.
- Поточная обработка данных.