Kotlin с нуля. Курс для начинающих
Курс для тех, кто не знаком с программированием или имеет о нем слабое представление, но хотел бы сразу начать изучение с перспективного языка, нацеленного на эффективную практическую разработку.
Курс «Kotlin с нуля» следует рассматривать как введение в программирование. В нем даются примерно такие же базовые основы императивного (программа как последовательность команд, составление выражений, присваивание переменным) и структурного (из каких частей состоит программа, в какой последовательности и как они выполняются) программирования, как и при изучении других языков. Однако вы сразу привыкаете к синтаксису языка, который Google выбрал в качестве приоритетного для программирования под ОС Android.
В курсе не рассматриваются все особенности и возможности языка Котлин, в том числе объектно-ориентированное программирование, которому посвящен отдельный курс. В данном курсе изучаются основные типы и коллекции данных, используемые в Kotlin, операторы ветвления, циклы и функции.
Обновлено: февраль, 2023
X Скрыть Наверх
Kotlin с нуля. Курс для начинающих
Основы Kotlin. Введение
Языки программирования — интереснейшая область современной техники. За последние 30-40 лет информационные технологии разрослись до невероятных пределов, и сейчас мало кто в состоянии обозреть эту область в полном объёме. Компьютерные программы выросли с нескольких сотен строк до десятков миллионов строк, применяются сейчас в самых разных областях и запускаются на самых разных платформах, например:
- обыкновенные программы для персонального компьютера, часто называемые desktop-программами;
- web-программы, которые делятся, в свою очередь, на клиентскую часть, выполняющуюся на компьютере пользователя, и серверную, выполняющуюся на сервере;
- мобильные приложения для планшетов, смартфонов и других мобильных устройств;
- системные программы, являющиеся частью операционной системы;
- встраиваемые программы, являющиеся частью встраиваемых систем управления (применяемые, например, в транспорте, банкоматах, станках с программным управлением, при программировании роботов).
Языки программирования
Для написания разных видов программ сейчас применяются разные языки программирования. Например, в сфере разработки мобильных приложений основными являются языки Java и Kotlin (устройства под управлением Android), а также Swift (мобильные устройства под управлением iOS).
Системные программы, как правило, пишутся на языках C или C++. Эти же языки долгое время использовались и для создания встраиваемых программ, но в последние годы в этой области набирает популярность язык Java. Для написания web-клиентов часто используется JavaScript, а в простых случаях — язык разметки страниц HTML. Web-серверы используют опять-таки Java (в сложных случаях), а также Python и PHP (в более простых). Наконец, простые desktop-программы сейчас могут быть написаны на самых разных языках, и выбор во многом зависит от сложности программы, области её использования, предполагаемой операционной системы. В первую очередь следует назвать языки Java, C++, C#, Python, Visual Basic, Ruby, Swift.
В каком-то смысле самым универсальным и одновременно самым распространённым языком программирования на данный момент следует считать язык Java. Java в широком смысле — не только язык, но и платформа для выполнения программ под самыми разными операционными системами и на разной аппаратуре. Такая универсальность обеспечивается наличием виртуальной машины Java — специальной системной программы, интерпретирующей Java байт-код в машинные коды конкретного компьютера или системы. Java также включает богатейший набор библиотек для разработки.
Почему Kotlin
Однако для начинающих язык Java является несколько многословным и сложным. Это пособие посвящено другому языку программирования, спутнику Java — языку Котлин. Котлин — молодой, лёгкий для изучения язык программирования, позволяющий писать программы под платформы JVM и Android более лаконично, просто и с меньшим количеством ошибок по сравнению с языком Java. Котлин и Java — полностью интероперабельные языки, поэтому одна и та же программа может быть частично написана на Котлине, частично на Java. Программы на Котлине могут использовать все имеющиеся Java-библиотеки, и наоборот. На данный момент программы на Котлине пишут сотни тысяч программистов, основная ниша его промышленного применения — мобильные приложения под платформу Android и, в несколько меньшей степени, web-разработка.
В ходе изучения Котлина мы изучим также многие элементы стандартной библиотеки Java, а понимание работы программ на Котлине во многом упростит понимание работы Java-программ. После освоения основ языка Kotlin вы сможете уверенно освоить уроки по разработке андроид-приложений на языке Котлин.
Также на нашем сайте есть Продвинутые курсы по созданию реальных андроид-приложений на языке Котлин
Что требуется для начала
Самый простой способ начать программировать на Котлине — зайти на сайт http://try.kotlinlang.org. Имеющаяся там “песочница” позволяет писать программы прямо в браузере, с возможностью выполнять и сохранять свои программы и проходить обучающие курсы.
Масштабы песочницы, однако, достаточны только для небольших программ, а более-менее серьёзные программы, как правило, разрабатываются в интегрированной среде (IDE). Разработка под платформу Java в любом случае требует установки пакета JDK, который необходимо скачать с сайта компании Oracle. Первое время вам потребуется Java Platform, Standard Edition, рекомендуется 8-я её редакция, на сентябрь 2018 года последняя её версия — Java SE 8u181.
Среда разработки IntelliJ IDEA
В качестве интегрированной среды разработки рекомендую установить IntelliJ IDEA Community Edition, её следует брать отсюда. Community Edition является полностью бесплатной, базовая версия обеспечивает поддержку программирования на Java, Kotlin, Scala, Groovy, поддержку систем контроля версий Git, Mercurial, SVN, интеграцию с системами сборки Maven и Gradle.
Для интеграции IDEA с системой контроля версий Git необходимо установить один из клиентов Git. Таких клиентов существует много; “родной” Git клиент можно скачать здесь. Имейте в виду, что в IDEA интегрирован собственный Git-плагин, уже имеющий графический интерфейс, поэтому скачивать и устанавливать клиенты Git с графическим интерфейсом (GUI Clients) необязательно.
Учебный проект
В ходе обучения мы будем активно использовать проект “Котлин как первый язык программирования”, содержащий текст данного пособия и около сотни различных задач на языке Kotlin. Оригинальный код данного проекта доступен по адресу https://github.com/Kotlin-Polytech/KotlinAsFirst2018 на сайте GitHub, который является специализированным хранилищем программных кодов и основан на системе контроля версий Git. Для того, чтобы начать работать с этим проектом, Вам необходимо выполнить следующие действия.
- Зарегистрироваться на https://github.com/ (в случае, если у Вас еще нет GitHub аккаунта). Далее выбранное Вами имя будет обозначаться как .
- Создать специальную копию репозитория проекта — форк. Для этого достаточно зайти на страницу проекта https://github.com/Kotlin-Polytech/KotlinAsFirst2018 и нажать кнопку Fork в правом верхнем углу страницы. После этого Ваша персональная копия проекта станет доступна по адресу https://github.com//KotlinAsFirst2018, и всю работу по решению различных задач Вы должны выполнять именно с Вашей копией.
- Для загрузки проекта в IntelliJ IDEA следует выполнить команду Check out from Version Control → GitHub из окна Welcome to Intellij IDEA (или File → New → Project from Version Control → GitHub из окна проекта), в появившемся окне ввести Git Repository URL https://github.com//KotlinAsFirst2018 и место на компьютере, куда будет скачан проект (Parent Directory).
- Далее следуйте инструкциям среды для настройки проекта. Подробное руководство вы можете найти здесь.
Проект содержит задачи, разбитые на девять уроков (lesson). Тексты задач доступны через окно Project в IntelliJ IDEA (открывается комбинацией клавиш Alt + 1 ). В папках src/lessonX , где X — номер урока, находятся примеры решённых задач к данному уроку, тексты задач, которые необходимо решить, и готовые заглушки функций для написания решения. В папках test/lessonX находятся тестовые функции к задачам. Подробнее о задачах и тестах см. раздел 1 этого пособия.
Список уроков по основам Котлин
- Основы Kotlin. Простые функции
- Основы Kotlin. Ветвления
- Основы Kotlin. Рекурсии и циклы
- Основы Kotlin. Списки
- Основы Kotlin. Хранение данных в памяти компьютера
- Основы Kotlin. Ассоциативные массивы Maps и множества Sets
- Основы Kotlin. Основы текстового ввода-вывода
- Основы Kotlin. Регулярные выражения RegExp
- Основы Kotlin. Файловые операции
- Основы Kotlin. Простые классы
- Основы Kotlin. Графы
- Основы Kotlin. Классы и интерфейсы
- Основы Kotlin. Дополнительные главы
Вопросы
В ходе изучения нового языка у вас, конечно, будут возникать вопросы, не стесняйтесь их задавать. У вас есть следующие возможности:
- посмотреть “часто задаваемые вопросы” далее по тексту
- поискать ответ на вопрос с помощью поисковой системы в Интернете
- почитать разнообразную информацию о Котлине в его документации
- русскоязычная документация по Котлину здесь
- задать нам вопрос в Kotlin Slack (получить приглашение можно здесь) в канале russian-kotlinasfirst
- воспользоваться другими ресурсами для общения
Kotlin Slack — это система общения, созданная специально для программистов на Котлине. Система состоит из множества каналов, посвящённых разным аспектам программирования на Котлине — в большинстве из них общение идёт на английском языке. Нашему курсу посвящён канал russian-kotlinasfirst, и там вы сможете задать любые вопросы по этому курсу на русском языке. В качестве других важных каналов имеется general — канал с общими обсуждениями, касающимися Котлина, и russian — общий канал для русскоязычных Котлин-программистов.
Часто задаваемые вопросы (F.A.Q.)
- Что делать, если при открытии файла расширением .kt из учебного проекта (например, Simple.kt) вы видите сообщение над ним Project SDK is not defined ?
Нажмите на ссылку Setup SDK в правой части сообщения. Выберете JDK 1.8 для работы с проектом в появившемся окне. Если список JDK в окне пуст или не содержит JDK 1.8, следует нажать на клавишу Configure , затем зелёный плюс в верхнем левом углу и зарегистрировать установленную на Вашем компьютере JDK 1.8 в Intellij IDEA. Если Вы забыли установить JDK, это следует сделать, предварительно скачав её с сайта Oracle.
- Что делать, если отсутствует зелёный треугольник напротив функции main и тестовых функций?
Откройте окно Maven Projects на панели в правой части окна IDEA (если вы не видите там такой надписи, откройте его через меню — View > Tool Windows > Maven Projects) и нажмите в нём на кнопку с изображением двух стрелок в круге. Дождитесь окончания импортирования Maven-проекта (наблюдайте за надписями в нижней части окна IDEA), после чего зелёные треугольники должны появиться. Проверьте также отсутствие надписи Project SDK is not defined в верхней части окна (см. вопрос выше).
Если вам не удаётся открыть окно Maven Projects, попробуйте выйти из Intellij IDEA и войти в неё заново.
Что дальше?
Уроки создания андроид-приложений на Kotlin
Раздел с уроками по андроид разработке на языке Котлин на нашем сайте по ссылке.
Также предлагаем Продвинутые курсы:
- Продвинутый курс по созданию android-приложения Radio App на языке Kotlin с Jetpack Compose
- Продвинутый курс по созданию андроид-приложения «Диктофон» на языке Котлин
- Продвинутый курс по разработке android-приложения «Чат-мессенджер» с push-уведомлениями на Kotlin
- Продвинутый курс по разработке android-приложения «ТОП-100 криптовалют» на Котлин
- Как создать простое мобильное приложение для любого сайта (с push-уведомлениями) на Kotlin
- Продвинутый курс по созданию андроид-приложения QuizApp (викторина, тест, экзамен, опрос)
- Продвинутый курс по разработке андроид-приложения для Twitter и Facebook
- Продвинутый курс по созданию андроид-приложения для сайта с push-уведомлениями
- Продвинутый курс по разработке андроид-приложения HD Обои с покупками в приложении
- Продвинутый курс по созданию андроид-приложения Вконтакте
- Как создать полноценное приложение-напоминалку на андроид
- Как создать мобильное приложение-клиент для YouTube
- Как создать игру Flappy Bird для андроид
- Создание игры для android Lunar Rover
Использованы материалы онлайн-курса “Котлин как первый язык программирования” в соответствии с лицензией
Вам також може сподобатися
Инструменты android разработчика 0 8 220
Перевод статьи Laurence Moroney, Developer Advocate, ссылка на оригинал В релизе выпуска Google Play
Дизайн android приложений 0 879
Рассматриваем новые шаблоны для быстрого создания андроид-проекта, которые добавлены в последнем обновлении Android Studio.
Инструменты android разработчика 0 278
Команда опытных android разработчиков делится опытом на бесплатных вебинарах по андроид-программированию и разработке. В
Создаем android-приложения 5 8 426
Сегодня в рубрике “как создать android application” мы с вами напишем небольшое приложение, которое
Уроки по android разработке на Java 2 138
Вернуться к уроку 6 Перейти к уроку 7 [mlw_quizmaster quiz=6]
Дизайн android приложений 2 6 593
Библиотека поддержки Android Design Support Library облегчает разработку, обеспечивая обратную совместимость множества компонентов в материальном стиле, вплоть
Коментарі: 4
Здравствуйте!
Не могу запустить ни один урок
Kotlin: Language version 1.2 is no longer supported; please, use version 1.3 or greater.
Пробую с 1.3 до 1.6 все равно ошибка остается Что можно сделать?
admin (автор)
Для загрузки проекта в IntelliJ IDEA следует выполнить команду Check out from Version Control → GitHub из окна Welcome to Intellij IDEA (или File → New → Project from Version Control → GitHub из окна проекта), в появившемся окне ввести Git Repository URL https://github.com/ /KotlinAsFirst2018 и место на компьютере, куда будет скачан проект (Parent Directory).
Не могу запустить тест функций:
Kotlin: Language version 1.2 is no longer supported; please, use version 1.4 or greater. Что делать?
C чего начать программировать под Android на Kotlin?
Так случилось, что я решил попробовать создать себе кучу проблем и научиться разрабатывать приложения под Android. Чтобы была понятна вся эпичность ситуации — я не программист и что еще хуже, я маркетолог и мне 31 год. Тем не менее, буду стараться и пробовать. С платформой определился, все-таки, это будет андроид. Соответственно, писать надо учиться на Java, но коллега разработчик на работе сказал, что сейчас набирает популярность Kotlin и появилось желание попробовать изучить именно этот язык.
Есть книги Kotlin for Android Developers от Antonio Leiva, Kotlin in Action от Дмитрия Жемерова и Светланы Исаковой и официальная документация на оф сайте.
Вся проблема в том, что все эти материалы предназначены для разработчиков, которые понимают основы и даже уже имеют опыт работы на java, но не могу найти материала для людей, совершенно без опыта.
Подскажите, пожалуйста, с чего начать?
- Вопрос задан более трёх лет назад
- 5001 просмотр
Комментировать
Решения вопроса 0
Ответы на вопрос 5
fullstack developer
Изучите Java, изучить еще 100500+ фреймоврков, может еще потренироваться на С и С++.Люди. Алло им кодить надо а не потратить 10 лет на изучение языков.
Я бы так посоветовал: берете сразу kolin и вперед учить синтаксис и основы, через неделю написать простенькое Application приложение, потом берете Jetpack Compose и еще через неделю забахаете свое приложение на андроиде. Если терпения хватит начинайте более тонко и глубоко изучать язык, посмотрите краем глаза на Java. Успехов.
ps я был такой же как и вы, но у меня хороший ментор был с которым я быстро въехал что к чему
Ответ написан более двух лет назад
Комментировать
Нравится 2 Комментировать
Параллельно изучайте, изучая что-то новое сначала пишите на Java, потом на Kotlin, так же делают и на платформах Apple с Obj-C/Swift.
Ответ написан более трёх лет назад
mintfoto @mintfoto Автор вопроса
На работе пообщался с iOS рзаработчиком, который сразу на Swift учился писать. Может тут так же можно поступить и перешагнуть через Java? Или сперва Java, а потом Kotlin?
mintfoto: Сразу на Swift менее удобно и эффективно, много исходного кода на Obj-C, получается пока не переведешь — и опробовать не сможешь, и уж тем более на Kotlin, который совсем новый.
mintfoto @mintfoto Автор вопроса
Спасибо, можно в рамках этого вопроса попросить дать совет из каких источников посоветуете брать обучающий материал по java?
Kotlin в JetBrains Academy: изучайте основы бесплатно или улучшайте существующие навыки
Отличные новости для тех, кто ищет возможности освоить новый язык, — мы запустили новый трек « Основы Kotlin »! Обучение построено вокруг написания настоящих полнофункциональных приложений. Поскольку Kotlin — язык, созданный в JetBrains, мы решили сделать этот трек бесплатным для индивидуальных пользователей.
Ну а тем, кто уже знает основы Kotlin, предлагаем прокачать свои навыки. Благодаря вашей обратной связи трек « Kotlin-разработка » прошел стадию бета-тестирования и теперь доступен в виде стабильной версии! Он дает возможность попробовать свои силы в более сложных проектах и углубить знания Kotlin.
Мы изменили систему лицензирования JetBrains Academy для новых пользователей. Теперь, если вы не пользовались платформой ранее и выбираете бесплатный трек (например, «Основы Kotlin»), вам назначается бесплатный план. Так вы сможете начать обучение, ничего не оплачивая и не активируя пробный период. Если же вы выбираете платный трек (например, «Kotlin-разработка»), активируется бесплатный пробный период, и можно позже решить, нужна ли вам платная подписка. Работая над своим первым проектом, вы сможете добавить до 2 месяцев бесплатно к неделе пробного периода.
Далее рассказываем подробнее:
- Почему Kotlin?
- Бесплатный трек «Основы Kotlin»
- Трек для выхода на продвинутый уровень
Чтобы написать рабочее приложение, необязательно иметь опыт программирования: вы сможете с нуля создать собственный чат-бот или конвертер единиц измерения. JetBrains Academy поможет вам шаг за шагом получить новые навыки и пополнить свое портфолио. Начните изучать основы Kotlin !
Трек для выхода на продвинутый уровень
Уже знаете основы Kotlin и хотите прокачать навыки? Тогда вам подойдет трек «Kotlin-разработка» — мы как раз закончили бета-тестирование. Если вы пока не пользовались JetBrains Academy, учитесь 7 дней бесплатно. Пробный период можно продлить еще на 2 месяца в дополнение к неделе пробного периода: если за неделю вы успеете закончить первый этап своего проекта, мы продлим пробный период на один месяц, а если в течение этого месяца вы завершите целый проект, то сможете еще один месяц учиться бесплатно.
С момента запуска трек претерпел много изменений и был сильно улучшен. Мы обрабатывали полученные отзывы, тестировали юзабилити, корректировали теоретические и практические задания.
Более 28 000 человек уже учатся на треке «Kotlin-разработка». В их распоряжении 11 интерактивных проектов, 219 тем и более 330 задач — все это позволяет осваивать продвинутые темы с максимальным упором на практику.
Трек «Kotlin-разработка» затрагивает фундаментальные аспекты программирования на Kotlin, необходимые профессиональному разработчику, от анализа строк и использования многомерных массивов до работы с изображениями и реализации алгоритмов. Основной принцип обучения в JetBrains Academy — это работа над проектами: каждая теоретическая тема закрепляется в процессе написания реального приложения.
Наш пользователь Влад-Эмиль Флоре делится впечатлениями от курса:
«На мой взгляд, очень полезно работать над реальными проектами. Писать приложение и в то же время изучать новое — отличная комбинация, позволяющая поддерживать мотивацию и закреплять полученные знания. В общем, это один из лучших способов учиться, которые я когда-либо пробовал!»
Платформа JetBrains Academy дает массу возможностей, чтобы помочь вам в освоении языка. К примеру, можно работать над проектами прямо в IDE JetBrains: умные функции среды разработки упрощают процесс обучения, а вы осваиваете инструменты, без которых невозможно представить работу в индустрии. Кроме того, вы сможете выложить завершенные проекты на GitHub и добавить их в свое портфолио.
Надеемся, треки «Основы Kotlin» и «Kotlin-разработка» будут для вас полезны.
Нам очень важно, что вы думаете. Делитесь своими мыслями и предложениями в комментариях к посту, а также в Twitter , Facebook или на Reddit .
Учитесь с удовольствием!
Ваша команда JetBrains Academy
Автор оригинальной статьи: