LibCoder

От Java к Kotlin: Руководство по рефакторингу

1C Agda Java
От Java к Kotlin: Руководство по рефакторингу
Дата выхода: 2023
Издательство: БХВ-Петербург
Количество страниц: 450
Размер файла: 9,1 МБ
Тип файла: PDF
Добавил: LibCoder
Оглавление
Оглавление....6 Предисловие....12 Как устроена эта книга?....13 Как были выбраны темы?....13 Уровень сложности....14 Идеальный код....15 Форматирование кода....15 Условные обозначения....16 Использование примеров кода....17 Платформа онлайн-обучения O’Reilly....18 Как с нами связаться?....18 Благодарности....19 Благодарности Дункана....19 Благодарности Нэта....20 Глава 1. Введение....22 Сущность языка программирования....22 История стилей программирования на Java (на наш взгляд)....25 Первобытный стиль....25 Стиль JavaBeans....26 Корпоративный стиль....27 Инверсия абстракции....28 Современный стиль....30 Будущее....30 Сущность Kotlin....30 Рефракторинг на Kotlin....32 Принципы рефакторинга....33 Подразумеваем хорошее покрытие тестами....34 Фиксации изменений рассчитаны на Git Bisect....34 Над чем мы работаем?....35 Приступим!....35 Глава 2. Перевод проектов с Java на Kotlin....36 Стратегия....36 Добавление поддержки Kotlin в сборку Java....38 Другие системы сборки....41 Двигаемся дальше....41 Глава 3. От классов Java к классам Kotlin....42 Исходный код....42 Простой тип значений....42 Ограничения классов данных....49 Двигаемся дальше....53 Глава 4. От необязательных типов к обнуляемым....55 Как представить отсутствие чего-либо?....55 Рефракторинг от необязательных типов к обнуляемым....57 Итерация и цикл for....59 Рефракторинг с помощью Expand-and-Contract....65 Рефракторинг в код, характерный для Kotlin....65 Двигаемся дальше....72 Глава 5. От объектов JavaBeans к значениям....73 JavaBeans....73 Значения....74 Почему следует выбирать значения?....75 Рефакторинг экземпляров JavaBeans в значения....75 Равенство объектов....82 Двигаемся дальше....83 Глава 6. От коллекций Java к коллекциям Kotlin....84 Коллекции Java....84 Не изменяйте разделяемые коллекции....87 Коллекции Kotlin....87 Рефакторинг от коллекций Java к коллекциям Kotlin....90 Подправим код на Java....91 Преобразование в Kotlin....96 Двигаемся дальше....100 Глава 7. От действий к вычислениям....101 Функции....101 Вычисления....102 Вычисляемое свойство или функция?....103 Действия....103 Почему это должно нас волновать?....104 Процедурное программирование....105 Почему предпочтение отдается вычислениям?....105 Рефракторинг действий в вычисления....106 Существующий код....106 2015 был концом времени....110 Улучшенный проект....110 Конец игры....116 Двигаемся дальше....119 Глава 8. От статических методов к функциям верхнего уровня....120 Модификатор Static в Java....120 Статическое состояние....120 Функции верхнего уровня в Kotlin, объекты и объекты-компаньоны....121 Рефракторинг от статических методов к функциям верхнего уровня....123 Удобные функции....124 Перемещение на верхний уровень....127 Kotlin'изация....128 Перемещение функций верхнего уровня....130 Двигаемся дальше....130 Глава 9. От многострочных функций к однострочным....131 Попытка № 1: Замена встроенным выражением....133 Попытка № 2: Ввести функцию....134 Попытка № 3: Блок Let....139 Попытка № 4: Отступление....141 Что должен возвращать метод Parse?....144 Двигаемся дальше....144 Глава 10» От функций к функциям-расширениям....146 Функции и методы....146 Функции-расширения....148 Расширения и типы функций....149 Свойства-расширения....150 Преобразования....150 Как именовать преобразования?....151 Обнуляемые параметры....152 Обнуляемые получатели....153 Обобщенные расширения....155 Функции-расширения в качестве методов....156 Рефракторинг к функциям-расширениям....156 Двигаемся дальше....172 Глава 11. От методов к свойствам....173 Поля, акцессоры и свойства....173 Как выбрать?....177 Мутирующие свойства....179 Рефракторинг к свойствам....179 Двигаемся дальше....185 Глава 12. От функций к операторам....186 Базовый класс: Money....186 Добавление определяемого пользователем оператора....188 Вызов нашего оператора из существующего кода Kotlin....190 Операторы для существующих классов Java....192 Соглашения для аннотаций значений....192 Двигаемся дальше....196 Глава 13. От потоков к итерируемым объектам и последовательностям....197 Потоки в Java....197 Итераторы в Kotlin....199 Последовательности в Kotlin....200 Замена итераций и последовательностей....200 Множественные итерации....201 Выбор между потоками, итераторами и последовательностями....204 Алгебраическая трансформация....205 Рефракторинг от потоков к итераторам и последовательностям....208 Сначала итераторы....211 Последовательности....215 Извлечение части конвейера....219 Итоговая уборка....221 Двигаемся дальше....222 Глава 14. От накопления объектов к преобразованиям....223 Вычисление с использованием параметров накопления....223 Рефакторинг функций над немутирующими данными....228 Давайте проделаем это снова....234 Обогащение обнаруженной нами абстракции....238 По поводу имен....239 Двигаемся дальше....240 Глава 15. От инкапсулированных коллекции к псевдонимам типов....242 Защитные копии....243 Создание коллекций доменов....244 Коллекции с другими свойствами....245 Рефракторинг инкапсулированных коллекций....246 Преобразование операций в расширения....247 Замена псевдонима типа....249 Рефракторинг коллекций с другими свойствами....255 Двигаемся дальше....258 Глава 16. От интерфейсов к функциям....260 Объектно-ориентированная инкапсуляция....261 Функциональная инкапсуляция....264 Функциональные типы в Java....267 Сочетание и совмещение....270 Выразительные типы функций....272 Сравнение подходов....273 Соединение....276 Объектно-ориентированный или функциональный?....277 Наследие Java....280 Прослеживаемость....281 Рефракторинг от интерфейсов к функциям....281 Введение функций....285 Двигаемся дальше....289 Глава 17. От мокинга к маппингу....290 Повреждение теста, вызванное моком....291 Замена мокинга маппингом....293 Но действительно ли мы хотим уйти от моков?....298 Двигаемся дальше....302 Глава 18. От открытых классов к запечатанным....303 Полиморфизм или запечатанные классы?....307 Преобразование интерфейса в запечатанный класс....308 Двигаемся дальше....316 Глава 19. От проверяемых исключений к типам результатов....317 Перезагрузка интернет-соединения....317 Обработка ошибок до появления методов, основанных на исключениях....319 Обработка ошибок с исключениями....320 Java и проверяемые исключения....321 Как должен быть оформлен сбой parselnt?....322 Kotlin и исключения....323 За пределами исключений: функциональная обработка ошибок....323 Обработка ошибок в Kotlin....327 Рефракторинг от исключений к обработке ошибок....328 HTTP....329 Наша стратегия преобразования....330 Начнем с самого низа....331 Именование....332 Контракт....336 Отступление....340 Еще исправления....344 Слои....350 Двигаемся дальше....352 Глава 20. От выполнения ввода/вывода к передаче данных....354 Прослушивание тестов....354 Ввод/вывод данных....357 Рефакторинг для удобства чтения....362 Эффективное написание....362 Еще о стимулах к работе....362 Эффективное считывание....366 Двигаемся дальше....371 Глава 21. От исключений к значениям....372 Определение того, что может пойти не так....372 Представление ошибок....380 А как насчет ввода/вывода?....388 Двигаемся дальше....389 Глава 22. От классов к функциям....390 Приемочный тест....390 Модульное тестирование....395 Заголовки....400 Различные разделители полей....409 Последовательности....416 Считывание из файла....422 Сравнение с Commons CSV....427 Двигаемся дальше....433 Глава 23. Продолжение путешествия....434 О сущностях....434 Функциональное мышление....435 Простая конструкция....437 Функциональное программирование и текстуальные рассуждения....438 Рефакторинг....439 Рефакторинг и функциональное мышление....440 Предметный указатель....442 Об авторах....444 Об изображении на обложке....445

Описание

Коротко и по делу о том, что важно знать про kotlin.

Приведено подробное сравнение этих двух языков, даны примеры перевода проектов с Java на Kotlin, добавления поддержки Kotlin в сборку Java. Книга описывает практические приемы рефакторинга и переноса кода написанных на Java мобильных приложений для Android  на язык Kotlin с сохранением совместимости. Показан переход от классов Java к классам Kotlin, от коллекций Java к коллекциям Kotlin, от объектов JavaBeans к значениям, от статических методов к функциям верхнего уровня. Даны советы по рефакторингу кода и функциональному программированию на Kotlin. Подробно рассматривается обработка ошибок, приведены практические приемы управления проектами со смешанной кодовой базой.

Для программистов

Чтобы преодолеть его, не пользуясь воздушным транспортом, понадобится как минимум неделя. Расстояние от острова Ява до острова Котлин составляет 9892 километра по прямой. Если вы — опытный Java-разработчик, который решил перейти на Kotlin, вам потребуется примерно столько же времени. Этот язык более функционален, у него больше возможностей, поэтому перенос кода ваших проектов с Java на Kotlin — отличная идея. Вы обнаружите, что в Kotlin все делается по-другому, он требует иных подходов к программированию.

Ваши гиды Дункан и Нэт уже проделали этот путь в 2015 году, и с тех пор помогли многим командам и отдельным разработчикам повторить его. Путешествуйте вместе с ними по проверенному маршруту, включающему такие промежуточные остановки, как переход от объектов JavaBeans к значениям, от коллекций Java к коллекциям Kotlin и от классов Java к классам Kotlin.

В результате код становится проще, выразительнее и удобнее для редактирования. Авторы подробно объясняют ключевые концепции, а затем показывают, как постепенно и безопасно перенести код Java в идиоматичный Kotlin, сохраняя при этом совместимость. К концу путешествия вы будете уверены в том, что сможете перевести все свои Java-проекты на платформу Kotlin, освоите Kotlin с нуля и научитесь управлять смешанной языковой базой кода по мере ее развития.

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

kotlin java кода рефакторингу практические приемы язык даны

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

Можно ли скачать «От Java к Kotlin: Руководство по рефакторингу» бесплатно?

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

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

Книга предоставляется в формате PDF, размер файла 9,1 МБ.

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

автор — Макгрегор Дункан , Прайс Нэт, издательство БХВ-Петербург, год выпуска 2023, 450 страниц.

О чём книга «От Java к Kotlin: Руководство по рефакторингу»?

Книга описывает практические приемы рефакторинга и переноса кода написанных на Java мобильных приложений для Android на язык Kotlin с сохранением совместимости.

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