LibCoder

Kotlin. Программирование для профессионалов. 2 изд

1C Agda Kotlin
Kotlin. Программирование для профессионалов. 2 изд
Дата выхода: 2022
Издательство: Питер
Количество страниц: 993
Тип файла: PDF
Добавил: LibCoder
Оглавление
Благодарности....5 Представляем Kotlin....8 Почему Kotlin?....8 Для кого написана эта книга....9 Как пользоваться этой книгой....10 Шрифтовые обозначения....12 Заглядывая вперед....13 От издательства....13 Часть I. Первые шаги....15 1. Ваше первое приложение на Kotlin....16 Установка IntelliJ IDEA....16 Ваш первый проект на Kotlin....17 Ваш первый файл на Kotlin....26 Запуск вашего файла на языке Kotlin....29 Kotlin REPL....31 Для любознательных: зачем использовать IntelliJ....34 Для любознательных: программирование для JVM....35 Задание: арифметические вычисления в REPL....36 2. Переменные, константы и типы....38 Типы....38 Объявление переменной....39 Встроенные типы языка Kotlin....44 Переменные, доступные только для чтения....46 Автоматическое определение типов....51 Константы времени компиляции....54 Изучаем байт-код Kotlin....57 Для любознательных: простые типы Java в Kotlin....61 Задание: hasSteed....63 Задание: «Рог единорога»....64 Задание: волшебное зеркало....65 Часть II. Базовый синтаксис....67 3. Условные конструкции....68 Операторы if/else....68 Добавление условий....75 Вложенные операторы if/else....79 Более элегантные условные выражения....82 Интервалы....98 Условное выражение when....101 Выражения when c объявлением переменных....106 Задание: эксперименты с интервалами....109 4. Функции....111 Выделение кода в функции....111 Анатомия функции....116 Вызов функции....125 Пишем свои функции....128 Аргументы по умолчанию....132 Функции с единственным выражением....135 Функции с возвращаемым типом Unit....140 Именованные аргументы функций....142 Для любознательных: тип Nothing....146 Для любознательных: функции уровня файла в Java....149 Для любознательных: перегрузка функций....151 Для любознательных: имена функций в обратных кавычках....154 5. Числа....157 Числовые типы....157 Целые числа....160 Дробные числа....162 Форматирование значений типа Double....166 Преобразования числовых типов....170 Для любознательных: числа без знака....172 Для любознательных: манипуляции с битами....177 6. Строки....180 Интерполяция строк....180 Необработанные строки....187 Чтение ввода с консоли....190 Преобразование строк в числа....192 Регулярные выражения....197 Операции со строками....200 Сравнение строк....203 Для любознательных: Юникод....206 7. Null-безопасность и исключения....208 Допустимость null....208 Явный тип null в Kotlin....213 Время компиляции и время выполнения....218 Null-безопасность....219 Первый вариант: проверка null в операторе if....221 Второй вариант: оператор безопасного вызова....224 Третий вариант: оператор проверки....234 Исключения....237 Для любознательных: пользовательские исключения....251 Для любознательных: проверяемые и непроверяемые исключения....254 Часть III. Функциональное программирование и коллекции....256 8. Лямбда-выражения и тип функции....258 Представляем NyetHack....258 Анонимные функции....260 Лямбда-выражения....262 Неявный возврат....267 Поддержка автоматического определения типов....273 Более эффективные лямбда-выражения....275 Определение функции, которая получает функцию....281 Встраиваемые функции....286 Лямбда-выражения и стандартная библиотека Kotlin....289 Для любознательных: ссылки на функции....294 Для любознательных: захват лямбда-выражений....296 Задание: новые титулы и настроения....298 9. Списки и множества....301 Списки....305 Итерация....321 Чтение файла в список....329 Деструктуризация....332 Множества....337 Цикл while....345 Преобразование коллекций....348 Для любознательных: типы массивов....350 Для любознательных: «только для чтения» vs «неизменяемый»....352 Для любознательных: выражение break....354 Для любознательных: метки return....356 Задание: форматированный вывод меню таверны....359 Задание: улучшенное форматирование меню таверны....359 10. Ассоциативные массивы....361 Создание ассоциативного массива....361 Доступ к значениям в ассоциативном массиве....365 Добавление записей в ассоциативный массив....368 Изменение значений в ассоциативном массиве....372 Преобразования между списками и ассоциативными массивами....376 Перебор элементов ассоциативного массива....382 Задание: составные заказы....388 11. Основы функционального программирования....390 Преобразование данных....391 Фильтрация данных....408 Комбинирование данных....412 Почему именно функциональное программирование?....416 Последовательности....419 Для любознательных: профилирование....423 Для любознательных: агрегирование данных....424 Для любознательных: ключевое слово vararg....428 Для любознательных: Arrow.kt....430 Задание: перестановка ключей и значений в ассоциативном массиве....432 Задание: поиск самого популярного пункта меню....433 12. Функции области видимости....434 apply....434 let....436 run....440 with....441 also....442 takeIf....443 Часть IV. Объектно-ориентированное программирование....450 13. Классы....451 Объявление класса....451 Создание экземпляров....452 Функции класса....453 Видимость и инкапсуляция....455 Свойства класса....458 Get-методы и set-методы свойств....462 Видимость свойств....468 Вычисляемые свойства....470 Использование пакетов....475 Для любознательных: более пристальный взгляд на свойства var и val....478 Для любознательных: защита от изменяемости....484 Для любознательных: ограничение видимости рамками пакета....487 14. Инициализация....489 Конструкторы....490 Главный конструктор....491 Объявление свойств в главном конструкторе....495 Дополнительные конструкторы....496 Аргументы по умолчанию....500 Именованные аргументы....503 Блок инициализации....505 Порядок инициализации....508 Задержка инициализации....510 Для любознательных: подводные камни инициализации....525 Для любознательных: делегаты свойств....529 Задание: загадка Экскалибура....530 15. Наследование....533 Объявление класса Room....533 Создание подкласса....537 Проверка типов....548 Иерархия типов в языке Kotlin....552 Приведение типа....553 Умное приведение типа....556 Рефакторинг кода таверны....558 Для любознательных: Any....576 Для любознательных: оператор безопасного приведения типа....578 16. Объекты, классы данных и перечисления....580 Ключевое слово object....580 Классы данных....601 Перегрузка операторов....613 Исследуем мир NyetHack....617 Для любознательных: объявление структурного сравнения....624 Для любознательных: алгебраические типы данных....627 Для любознательных: классы-значения....632 Задание: другие команды....634 Задание: реализация карты мира....634 Задание: колокольный звон....635 17. Интерфейсы и абстрактные классы....636 Определение интерфейса....636 Реализация интерфейса....638 Реализация по умолчанию....644 Абстрактные классы....645 Сражение в NyetHack....652 Задание: дополнительные монстры....660 Часть V. Kotlin для опытных программистов....662 18. Обобщения....663 Определение обобщенных типов....663 Обобщенные функции....667 Ограничения обобщений....670 in и out....675 Добавление наград в NyetHack....682 Для любознательных: ключевое слово reified....696 19. Расширения....699 Определение функции-расширения....699 Объявление расширения для суперкласса....704 Обобщенные функции-расширения....705 Свойства-расширения....712 Расширения для типов, допускающих null....716 Расширения: как это устроено....718 Видимость расширений....721 Расширения в стандартной библиотеке Kotlin....722 Для любознательных: литералы функций с получателями....724 Задание: расширение рамок....727 20. Сопрограммы....729 Блокирующие вызовы....731 Включение сопрограмм....735 Строители сопрограмм....737 Области видимости сопрограмм....739 Структурированный параллелизм....741 Использование клиента HTTP....746 async и await....757 Для любознательных: состояние гонки....762 Для любознательных: Kotlin на стороне сервера....767 Задание: никаких отмен....769 21. Потоки данных....770 Создание потоков данных....771 MutableStateFlow....787 Завершение потоков данных....796 Преобразования потоков данных....801 Обработка ошибок в потоках данных....805 Для любознательных: SharedFlow....810 22. Каналы....817 Распределение работы с использованием каналов....818 Отправка данных в канал....820 Получение данных из канала....821 Закрытие канала....829 Объединение заданий....831 Для любознательных: другие особенности поведения каналов....839 Часть VI. Совместимость и мультиплатформенные приложения....844 23. Совместимость с Java....845 Взаимодействие с классом Java....846 Совместимость и null....849 Соответствие типов....854 Get-методы, set-методы и совместимость....858 За пределами класса....861 Исключения и совместимость....878 24. Знакомство с Kotlin Multiplatform....888 Что такое Kotlin Multiplatform?....889 Планирование мультиплатформенного проекта....891 Первый мультиплатформенный проект....893 Определение целевой платформы Kotlin/JVM....895 Определение общего кода....898 expect и actual....901 25. Kotlin/Native....912 Написание нативного кода на Kotlin....917 Для любознательных: Kotlin Multiplatform Mobile....928 Для любознательных: другие нативные платформы....930 26. Kotlin/JS....934 Объявление поддержки Kotlin/JS....934 Взаимодействие с DOM....942 Для любознательных: фреймворки клиентской части....964 Задание: комиссионные при обмене валюты....965 Послесловие....967 Что дальше?....967 Глоссарий....969 Рекомендуем прочитать....984

Описание

В этом материале разберём тему: java.

В 2011 году компания JetBrains анонсировала альтернативу языкам Java и Scala —язык программирования Kotlin, код которого тоже выполняется под управлением виртуальной машины Java (Java Virtual Machine). Шесть лет спустя Google объявил об официальной поддержке Kotlin как языка разработки для операционной системы Android.

И Kotlin оперативно превратился из просто «перспективного» в язык поддержки приложений для лидирующей мобильной операционной системы. Сегодня крупные компании вроде Google, Uber, Netflix, Capital One, Amazon и других официально приняли на вооружение Kotlin, чему способствовали его компактность, современные возможности и полная совместимость с Java.

Если материал оказался полезен — сохраните страницу.

kotlin java язык google операционной системы программирование профессионалов

Частые вопросы

Можно ли скачать «Kotlin. Программирование для профессионалов. 2 изд» бесплатно?

Да, «Kotlin. Программирование для профессионалов. 2 изд» доступна для бесплатного скачивания на нашем сайте в формате PDF. Ссылка на файл находится на этой странице.

В каком формате и какого размера файл?

Книга предоставляется в формате PDF.

Кто автор и когда вышла книга?

автор — Бэйли Эндрю , Гринхол Дэвид , Скин Джош, издательство Питер, год выпуска 2022, 993 страниц.

О чём книга «Kotlin. Программирование для профессионалов. 2 изд»?

В 2011 году компания JetBrains анонсировала альтернативу языкам Java и Scala —язык программирования Kotlin, код которого тоже выполняется под управлением виртуальной машины Java (Java Virtual Machine).

Похожие материалы