SHAREWOOD
SHAREWOOD
Редактор
- Регистрация
- 25/11/2019
- Сообщения
- 157.055
- Репутация
- 90.784
Последние темы автора:
- Скачать «Испытание и удача 2026 [Павел Андреев]»
- Скачать «Феноменальная психосоматика: секрет истинной причины болезни [Тариф Профи] [Григорий Семчук]»
- Скачать «Код пищеварения [Тариф с записью] [EDPRO + Сеченовский Университет] [Татьяна Шарковская, Татьяна Кузнецова, Аалия Маджид]»
- Скачать «Сладкое золото [Натали Хутас]»
- Скачать «Уникальное методическое пособие по аренде коммерческой недвижимости [Елена Шильникова]»
Складчина: Сборник TopKotlin + DocJava + Многомодульный Maven, многопоточность, JavaEE (MasterJava) [Java Online Projects]
Описание:
Практика на Kotlin
- Как известно, лучший способ выучить новый язык программирования - это сделать на нем проект.
- Для Java программистов самый простой и эффективный способ - взять собственный небольшой Spring Boot REST API проект и сделать его миграцию.
- Вместе с миграцией на Kotlin REST-приложения BootJava, перепиши на него свой проект, добавь репозиторий в своё резюме и получай на 30% больше возможностей!
- Для миграции рекомендуется взять свой проект, например выпускной TopJava, миграцию TopJava на Spring Boot или любой другой на этом стеке, делая свой Kotlin проект в параллели с занятиями курса.
Документация
- Kotlin Docs (на русском ссылки можно заменять на "/ru/", у меня работает только из VPN)
- Вопросы и ответы для собеседования по Kotlin. Часть 1–4
- Ссылки
- Wiki Gradle
- Understanding the Gradle Build
- Get started with Kotlin/JVM
- Клонируем референсный проект
- Создаем новый Gradle-Kotlin проект
- Create a Spring Boot project
- Конфигурируем Gradle
- Обновляем версии JVM и Kotlin
- Плагины kotlin-spring и kotlin-JPA
- Опции компиляции
- Resources
- Errors
- IDEA конвертация
- Открытые классы
- Multiple classes in one file
- Nullable and non-nullable types
- !! operator
- Validation
- Kotlin скрипты
- String templates
- Single-expression functions
- Base interfaces
- Properties in interfaces
- Annotation use-site targets
- Transfer Objects
- Data classes
- Generation parameterless constructor
- Основной конструктор
- Entities
- Persistence with JPA
- Properties
- Control flow statements
- Elvis operator
- Collections overview
- Secondary constructors
- Named arguments
- Repositories
- Spring Data repository default method
- Java Optionals and Kotlin Nulls
- Scope functions
- Scope function selection
- AuthUser
- Companion objects
- Top-level functions
- Smart casts
- Preconditions
- Imports as keyword
- Utils
- Object declarations
- Late-initialized properties
- Kotlin KClass
- Web validation
- When expression
- Kotlin null-safety ifPresent
- Return to labels
- Compile-time constants
- Logging
- Kotlin logging
- Controllers
- Unit-returning functions
- Configuration
- Kotlin null-safety orElseThrow
- Checked exceptions
- Initialize a Map in Kotlin
- Package kotlin.sequences
- Difference between constant in companion object and top level
- Companion object vs top level val
- Extensions
- Extensions
- Extension Oriented Design
- Fix
- Restrict compiler not to auto-generate getters/setters
- Tests
- Named arguments
Работа с документами в Java
- Работа с документами присутствует в большинстве даже небольших Java проектов.
- Правильный выбор технологий и фреймворков и уже готовые для использования Java-классы позволяет сэкономить большое количество ресурсов разработчика и компании.
- Лучший способ обучения программированию - практика!
- Реализация небольшого консольного приложение на Spring Shell, которое демонстрирует основы эффективной работы с документами
- XML(JAXB, StAX, XPath, XSLT 2.0, XSD),
- PDF(Apache FOP, iText PDF), Excel(Apache POI, Jxls)
Инициализация и валидация (открытое занятие)
- Создание консольного Spring Shell приложения
- Создаем usersWithMeals.xml данные пользователей с едой и схему usersWithMeals.xsd
- Реализация xsd: Validate XML file against XSD (XML Schema)
- xsd: Validate XML files against XSD (XML Schema)
- jaxb: Process XML file via JAXB
- stax: Process XML file via StAX
- xpath: Evaluate XPath against XML
- xslt: Transform XML with XSLT
- pdf-fop: Convert XML to PDF via Apache FOP
- iText: Convert XML to PDF via iText PDF
- excel-poi: Convert XML to Excel via Apache POI
- jxls: Convert XML to Excel via Apache Jxls
- html2pdf: Convert HTML to PDF via iText pdfHTML
- -i (input) Input file
- -o (output) Output file
- -s (schema) XSD schema file (for xsd)
- -e (exp) XPath expression (for xpath)
- -x (xsl) XSL transformation file (for xslt)
- -e (email) User email (for stax)
- -f (filter) Filter params: startDate=2023-01-30,endDate=2023-01-30,startTime=11:00,endTime=...
- -t (template) Transform template file (for pdf/excel transformation)
- XML файл с пользователями и едой
- XSD схема
- Генерируем из XSD схемы Java-классы
- JAXB unmarshalling (десериализация)
- Тестирование
- Обработка Filter params
- JAXB marshalling (сериализация)
- Ищем пользователя с переданным email, фильтруем и маршализуем
- Тестируем StaxUtil с параметризацией
- stax.xml (для user@yandex.ru)
Transform XML with XSLT
- Базовая реализация XSLT
- XSLT 2.0: форматирование времени и даты
- Вызов методов Java из xslt (Saxon)
- Добавляем параметры фильтра
- xslt.html
- Преобразуем XML в XSL-FO (XSLT)
- Преобразуем XSL-FO в PDF (Formatting Objects Processor)
- fop.pdf
- Создание и вывод PDF документа
- Регистрация и установка шрифтов
- itext.pdf
- Вывод пользователей в отдельные вкладки (excel sheet)
- Обработка паттерна ${простая_подстановка_значения}
- Обработка паттерна #{требуется_модификация_страницы}
- Добавляем цвет
- Рефакторинг Util классов
- poiTemplate.xlsx
- poi.xlsx
- Подготовка к реализации
- Базовая реализация на основе шаблона
- Кастомизация: добавляем цвет
- jxlsTemplate.xlsx
- jxls.xlsx
- Ввод: users.html
- Вывод: users.pdf
Многомодульный Maven, многопоточность, JavaEE
- Многомодульный Maven проект, состоящий из трех веб-приложений (MasterJava)
- На проекте мы разрабатываем полнофункциональный многомодульный Maven проект, состоящего из трех веб-приложений.
- Опыт работы с XML(JAXB, StAX, XPath, XSLT), SOAP (JAX-WS, MTOM), JAX-RS (Jersey), JMS (ActiveMQ), AKKA (Typed и Untyped Actors), servlet 3.0, jDBI, миграция базы LiquiBase, Guava, Thymeleaf, Lombok, StreamEx, Typesafe, Config, Java Microbenchmark JMH.
- Многопоточность – очень важная тема, на собеседованиях о ней спрашивают с особым пристрастием. Guava, веб-сервисы и JMS используются в большинстве коммерческих проектов. Многопоточность и многомодульный Maven присутствуют практически на каждом проекте, с обработкой XML я сталкивался ~ в 60% проектов.
Открытое занятие 1. Многопоточность
- Вступление. Многопоточность и параллельность
- Структура памяти Java. Ленивая инициализация
- Реализация многопоточности в Java
- Реализация многопоточной отправки писем. Execution Framework
- Разбор ДЗ: многопоточная реализация умножения матриц
- Java Microbenchmark JMH (от Алексея Шипилева)
- Формат XML. Создание схемы XSD
- Работа с XML в Java
- JAXB, JAXP, StAX, XPath, XSLT
- Разбор ДЗ: работа с XML
- Обзор Guava
- Монады. flatMap
- SOA и микросервисы
- Многомодульный Maven проект
- Разбор ДЗ: реализация структуры проекта, загрузка и разбор XML
- Thymeleaf
- Maven. Поиск и разрешение конфликтов зависимостей
- Подключаем логирование с общими настройками
- Библиотеки и фреймворки для работы с JDBC
- Модуль persistence
- Разбор ДЗ: сохранение в базу в batch-mode с обработкой конфликтов, вставка в несколько потоков
- Конфигурирование приложения (Typesafe config)
- Lombok
- Разбор ДЗ: доработка модели и модуля export
- Миграция DB
- Веб-сервисы (REST/SOAP)
- Java реализация SOAP
- Имплементируем Mail Service
- Разбор ДЗ: реализация MailSender, сохранение результатов отправки в DB, импорт проектов и групп
- Стили WSDL. Кастомизация WSDL
- Публикация кастомизированного WSDL. Автогенерация
- Деплой в Tomcat
- Создание клиента почтового сервиса
- Реализация массовой и групповой отправки почты. HW7
- Разбор ДЗ: делаем общий mailService.wsdl, обновление WSDL, отправка почты из модуля webapp
- Доступ к переменным Maven в приложении
- SOAP Exception. Выделение общей части схемы
- Коррекция схемы
- Добавление Maven плагинов:
- copy-rename-maven-plugin
- maven-antrun-plugin
- liquibase-maven-plugin
- Разбор ДЗ: реализация вложений в веб-сервисе, подключение MTOM, реализация загрузки вложений в модуле webapp, реализация вложений в почте
- JAX-WS Message Context. Авторизация
- JAX-WS Handlers (логирование SOAP)
- Домашнее задание. Статистика
- Разбор ДЗ: реализация SOAP handlers, конфигурирование сервисов
- JavaEE
- JAX-RS. Интеграция с Jersey
- JMS. Интеграция с ActiveMQ
- Авторизация в контейнере Tomcat
- Отправка почты с вложениями по JAX-RS, по JMS
- Рефакторинг: исключения в лямбдах Java 8
- Concurrent and distributed applications toolkit AKKA
- Отсылка почты через AKKA Actors (Typed и Untyped Actors)
- Асинхронные сервлеты 3.0
- Разбор ДЗ: решения с асинхронными сервлетами
- Выбор языка программирования
- День 1. Составим карьерную стратегию
- День 2. Научишься откликаться на вакансии
- День 3. Создашь работающее резюме
- День 4–5. Научишься писать сопроводительные письма и оформлять портфолио
- День 6–7. Составишь профиль на LinkedIn и научишься искать на нем работу
- День 8–13. Активный поиск работы по плану
- День 14. Разбор твоих результатов
Цена 5750 руб.
Скрытая ссылка
Материал «Сборник TopKotlin + DocJava + Многомодульный Maven, многопоточность, JavaEE (MasterJava) [Java Online Projects]», возможно, скоро появится на SHAREWOOD.
Воспользуйтесь поиском, может быть, он уже опубликован.
