<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://wikicshse.ru/index.php?action=history&amp;feed=atom&amp;title=KotlinElective</id>
	<title>KotlinElective - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://wikicshse.ru/index.php?action=history&amp;feed=atom&amp;title=KotlinElective"/>
	<link rel="alternate" type="text/html" href="https://wikicshse.ru/index.php?title=KotlinElective&amp;action=history"/>
	<updated>2026-06-06T14:43:23Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://wikicshse.ru/index.php?title=KotlinElective&amp;diff=408&amp;oldid=prev</id>
		<title>imported&gt;Alexmitsyuk: /* Осень 2021 */</title>
		<link rel="alternate" type="text/html" href="https://wikicshse.ru/index.php?title=KotlinElective&amp;diff=408&amp;oldid=prev"/>
		<updated>2021-09-24T21:58:06Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Осень 2021&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Файл:240px-Kotlin-logo.png|100px|мини|справа]]&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Kotlin&amp;#039;&amp;#039;&amp;#039; — активно развивающийся язык программирования для различных платформ. Хотя этот язык создан прежде всего для того, чтобы упрощать и ускорять процесс разработки для специалистов, использующих Java, сейчас поддерживается его компиляция не только в JVM-байткод, но и в JavaScript и в машинный код ([https://kotlinlang.org/docs/reference/native-overview.html Kotlin/Native]). Во всех вариантах компиляции сделан упор на возможность использования уже существующих библиотек другого языка. Таким образом, Kotlin используется для разработки приложений для настольных компьютеров, браузеров, серверов и мобильных устройств. Язык довольно прост в освоении, но содержит массу любопытных возможностей и особенностей, которые присущи языкам, предполагающим, что любая языковая конструкция является выражением (как, например, Python). Вместе с тем, код на Kotlin относительно компактен и безопасен. Изучение этого языка будет хорошим вложением в свое будущее. К тому же это просто интересно.&lt;br /&gt;
&lt;br /&gt;
== Для кого этот курс ==&lt;br /&gt;
&lt;br /&gt;
Для студентов 1-4 курсов бакалавриата, которые уже умеют программировать, заинтересованы в изучении новых перспективных технологии, планируют работать (или уже подрабатывают в свободное от учебы время) как программисты-практики, думают о том, каким образом повысить эффективность процесса программирования. Студенты первого курса могут записываться на курс, но должны предварительно хорошо рассчитать свои силы.&lt;br /&gt;
Магистры могут записаться на курс, но должны подумать, насколько это им интересно и важно.&lt;br /&gt;
&lt;br /&gt;
=== Требования к слушателям ===&lt;br /&gt;
Умение программировать хотя бы на одном языке программирования высокого уровня (Java, C#, C++, Python). &lt;br /&gt;
Для решения задач курса надо будет запускать Kotlin-код в основном в среде JRE, поэтому знание языка Java и особенностей виртуальной машины JVM будет плюсом. &lt;br /&gt;
Однако, это знание совсем &amp;#039;&amp;#039;не является обязательным&amp;#039;&amp;#039;: среди успешно окончивших курс немало студентов, которые впервые познакомились с JVM именно в ходе данного факультатива.&lt;br /&gt;
&lt;br /&gt;
== Организация курса ==&lt;br /&gt;
Курс продлится 16 недель (в 2021/22 учебном году - 8 недель). Еженедельно нужно будет посетить одно занятие и выполнить домашнее задание. Каждое занятие продлится 2 пары и будет состоять из теоретической и практической частей. Практика будет занимать большую часть времени. На занятии будут разбираться конкретные «фишки» языка. От студентов ожидается самостоятельность при решении задач, активное взаимодействие друг с другом. &lt;br /&gt;
Предполагается, что студенты будут приносить с собой на занятие свои портативные компьютеры с настроенной средой IntelliJ IDEA с установленным расширением для разработки на языке Kotlin версии 1.4 (в современных версиях IDEA язык Kotlin 1.4 поддерживается &amp;quot;из коробки&amp;quot;, так как расширение уже предустановлено). Тем не менее, наличие своего ноутбука не является обязательным: занятия будут проходить в компьютерном классе (в 2020, 2021 году - онлайн).&lt;br /&gt;
&lt;br /&gt;
== Записаться на курс ==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Участники курса должны [https://forms.gle/JQa8dxzMstoPPc6K6 заполнить анкету]&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Не переживайте, если мест для официальной записи на факультатив нет. &lt;br /&gt;
Если вам интересен курс, имеет смысл всё равно появиться на первом занятии.&lt;br /&gt;
Мы что-нибудь придумаем.&lt;br /&gt;
&lt;br /&gt;
== Где задать вопросы? ==&lt;br /&gt;
У курса есть [https://discord.gg/tMgmmgG канал в discord], где можно задать вопросы.&lt;br /&gt;
&lt;br /&gt;
== Расписание ==&lt;br /&gt;
&lt;br /&gt;
=== Осень 2021 ===&lt;br /&gt;
&lt;br /&gt;
В связи с распространением коронавируса факультатив будет проходить &amp;#039;&amp;#039;&amp;#039;в онлайн-режиме&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Занятия будут проходить &amp;#039;&amp;#039;&amp;#039;по пятницам с 14:40 до 17:40&amp;#039;&amp;#039;&amp;#039;:&amp;lt;br /&amp;gt;&lt;br /&gt;
В 2021/22 учебном году всего планируется 8 недель занятий в ноябре и декабре.&amp;lt;br /&amp;gt;&lt;br /&gt;
Каждую неделю планируется проводить лекцию или две, некоторые из пар будут предназначены для ответов на вопросы студентов.&amp;lt;br /&amp;gt;&lt;br /&gt;
Первое занятие должно состояться &amp;#039;&amp;#039;&amp;#039;29 октября&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
Ссылка на подключение к лекции будет разослана студентам, зарегистрировавшимся на курс.&lt;br /&gt;
&lt;br /&gt;
=== Осень 2020 - Весна 2021 ===&lt;br /&gt;
&lt;br /&gt;
В связи с распространением коронавируса факультатив будет проходить в онлайн-режиме.&lt;br /&gt;
&lt;br /&gt;
В третьем модуле занятия будут проходить по пятницам с 14:40 до 17:40:&amp;lt;br /&amp;gt;&lt;br /&gt;
6, 13, 20, 27 ноября&amp;lt;br /&amp;gt;&lt;br /&gt;
4, 11, 18 декабря&amp;lt;br /&amp;gt;&lt;br /&gt;
Каждую неделю планируется проводить лекцию и практическое занятие.&amp;lt;br /&amp;gt;&lt;br /&gt;
Первое занятие должно состояться 6 ноября.&lt;br /&gt;
Ссылка на подключение к лекции будет разослана студентам, зарегистрировавшимся на курс.&lt;br /&gt;
&lt;br /&gt;
=== Осень 2019 - Весна 2020 ===&lt;br /&gt;
&lt;br /&gt;
В 2019/20 учебном году курс пройдёт уже в четвёртый раз и запланирован во 2 и 3 модулях.&amp;lt;br /&amp;gt;&lt;br /&gt;
Занятия будут проходить по пятницам с 15:10 до 18:10.&amp;lt;br /&amp;gt;&lt;br /&gt;
Каждую неделю планируется проводить лекцию и практическое занятие.&amp;lt;br /&amp;gt;&lt;br /&gt;
Первое занятие должно состояться 1 ноября.&lt;br /&gt;
&lt;br /&gt;
2 модуль: c 1 ноября по 21 декабря – ауд. R608&amp;lt;br /&amp;gt;&lt;br /&gt;
3 модуль: c 10 января 2020 по 6 марта 2020 – ауд. R608&lt;br /&gt;
&lt;br /&gt;
== Предварительный список тем курса ==&lt;br /&gt;
&lt;br /&gt;
*     Базовый синтаксис языка. Основные управляющие конструкции; &lt;br /&gt;
*     Система типов;&lt;br /&gt;
*     Массивы, диапазоны, строки, коллекции;&lt;br /&gt;
*     Операторы;&lt;br /&gt;
*     Объектно-ориентированное программирование с использованием языка Kotlin. Разбор конкретных приёмов и задач;&lt;br /&gt;
*     Функциональное программирование с использованием языка Kotlin. Разбор конкретных приёмов и задач;&lt;br /&gt;
*     Инструменты обобщенного программирования в языке;&lt;br /&gt;
*     Разработка предметно-ориентированных языков с использованием языка Kotlin;&lt;br /&gt;
*     Использование языка Kotlin совместно с Java;&lt;br /&gt;
*     и другие темы. &lt;br /&gt;
&lt;br /&gt;
Предварительно в рамках курса запланированы доклады от приглашенных лекторов. Их темы будут определены позднее.&lt;br /&gt;
&lt;br /&gt;
== Материалы курса ==&lt;br /&gt;
&lt;br /&gt;
Материалы курса будут доступны слушателям.&lt;br /&gt;
&lt;br /&gt;
[https://www.youtube.com/watch?v=-UjMx5pyPbo Видео] приглашенной лекции Михаила Глухих 6 марта 2020 года.&lt;br /&gt;
&lt;br /&gt;
== Другие полезные материалы ==&lt;br /&gt;
&lt;br /&gt;
* Официальный [https://kotlinlang.org/docs/home.html сайт] с материалами по языку&lt;br /&gt;
* Разные [https://kotlinlang.org/community/ ресурсы сообщества]&lt;br /&gt;
* Книга: Dmitry Jemerov, Svetlana Isakova — Kotlin in Action. 2017, Manning Publications. ISBN 9781617293290 ([https://www.manning.com/books/kotlin-in-action на сайте издательства], [https://dmkpress.com/catalog/computer/programming/java/978-5-97060-497-7/ на русском языке])&lt;br /&gt;
* [https://kotlin.link/ kotlin.link] - сайт с колоссальным количеством ссылок на материалы по Котлин&amp;#039;у, библиотеки, расширения, курсы и т.д.&lt;br /&gt;
* [https://abreslav.com Личная страница] и [https://twitter.com/abreslav твиттер] идеолога и главного проектировщика языка Котлин - Андрея Бреслава (много интересного и не только про Котлин)&lt;br /&gt;
* А ещё можно [https://play.kotlinlang.org/ попробовать программировать на Kotlin прямо в браузере], но лучше, конечно, делать это в [https://www.jetbrains.com/idea/ IntelliJ IDEA] (кстати, вот [https://www.jetbrains.com/community/education/#students тут] можно запросить студенческую лицензию, если версии community не хватает)&lt;br /&gt;
&lt;br /&gt;
== Как будут выставляться оценки ==&lt;br /&gt;
&lt;br /&gt;
=== 2021/22 учебный год ===&lt;br /&gt;
&lt;br /&gt;
Каждую неделю студенты получают отдельную оценку за решение задач: Н1, Н2, Н3, Н4, Н5, Н6, Н7.&lt;br /&gt;
Кроме этого студенты могут выполнить небольшую проектную работу: Проект.&amp;lt;br/&amp;gt;&lt;br /&gt;
Итог будет посчитан по такой формуле: &lt;br /&gt;
Итог = 0,05 * Н1 + 0,1 * Н2 + 0,1 * Н3 + 0,05 * Н4 + 0,2 * Н5 + 0,15 * Н6 + 0,15 * Н7 + 0,2 * Проект&amp;lt;br/&amp;gt;&lt;br /&gt;
Экзамен в 2021/22 учебном году не предусмотрен.&lt;br /&gt;
Оценка за каждый элемент контроля от 0 до 10. &lt;br /&gt;
Округляется только итоговая оценка по правилам арифметического округления. &lt;br /&gt;
Отличное выполнение всех задач даёт оценку 8.&lt;br /&gt;
Чтобы получить оценку 9 или 10 надо дополнительно выполнить небольшую проектную работу.&lt;br /&gt;
&lt;br /&gt;
=== Архивная формула ===&lt;br /&gt;
Каждую неделю студенты будут выполнять задания в аудитории и дома. Эти задачи составят 0.7 от итоговой оценки. &lt;br /&gt;
Еще 0.1 даёт большое домашнее задание, выполняемое в середине курса. &lt;br /&gt;
Экзамен, завершающий курс, имеет вес 0.2 от итоговой. &lt;br /&gt;
Кроме того, предусмотрено выполнение некоторых относительно больших проектов, которые могут быть зачтены вместо экзамена.&lt;br /&gt;
Все тонкости и особенности правил формирования оценки будут озвучены на первом занятии и опубликованы для участников курса.&lt;br /&gt;
&lt;br /&gt;
== Автор и преподаватели курса ==&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Алексей Мицюк&amp;#039;&amp;#039;&amp;#039; - автор и преподаватель курса - доцент [https://cs.hse.ru/dse/jetbrains/ базовой кафедры компании JetBrains] департамента программной инженерии ФКН ([https://www.hse.ru/staff/amitsyuk личная страница])&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Сергей Булгаков&amp;#039;&amp;#039;&amp;#039; - учебный ассистент курса в 2019/2020 и 2020/2021 учебных годах - студент ПМИ ФКН, разработчик в JetBrains ([https://github.com/SerVB GitHub-профиль])&lt;br /&gt;
&lt;br /&gt;
=== Приглашенные лекторы ===&lt;br /&gt;
&lt;br /&gt;
Приглашенные лекции и мастер-классы за все годы существования курса прочитали (в алфавитном порядке):&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Никита Афанасьев&amp;#039;&amp;#039;&amp;#039; - Android-разработчик в vk.com, выпускник факультатива и ПИ ФКН&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Михаил Глухих&amp;#039;&amp;#039;&amp;#039; - к.т.н., разработчик языка Котлин в JetBrains, [https://icst.spbstu.ru/person/gluhih_mihail_igorevich/ доцент] Высшей школы интеллектуальных систем и суперкомпьютерных технологий СПбГПУ, автор и преподаватель онлайн-курса [https://ru.coursera.org/learn/vvedenie-v-yazyk-kotlin Введение в язык Котлин]&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Александр Лютиков&amp;#039;&amp;#039;&amp;#039; - Android-разработчик в Яндексе, выпускник факультатива и студент ПИ ФКН&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Александр Нозик&amp;#039;&amp;#039;&amp;#039; - к.ф.-м.н., с.н.с., зам. заведующего [https://mipt.ru/science/labs/npm-mipt/ лаборатории методов ядерно-физических экспериментов МФТИ], руководитель группы в JetBrains Research&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Екатерина Самородова&amp;#039;&amp;#039;&amp;#039; - стажер в JetBrains Research, студентка ПМИ ФКН&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Павел Финкельштейн&amp;#039;&amp;#039;&amp;#039; - developer advocate в JetBrains и [https://asm0dey.ru/ не только]&lt;br /&gt;
&lt;br /&gt;
== Благодарности ==&lt;br /&gt;
&lt;br /&gt;
Факультатив проходит на ФКН при поддержке компании [https://jetbrains.ru/ JetBrains] с 2016 года.&lt;/div&gt;</summary>
		<author><name>imported&gt;Alexmitsyuk</name></author>
	</entry>
</feed>