0. Занятие на самостоятельную проработку дома до начала курсов. Нужно установить Java и изучить базовый синтаксис. Подробнее можно почитать здесь
- Введение. На первом занятии мы рассказывали об общей структуре курсов и занятий. Научились работать с системой контроля версий, сделали первые комиты кода и разрешили конфликты. Поучили базовые навыки работы со средой разработки (IDE), в т.ч. попробовали на практике базовые рефакторинги.
- Пишем для Web с Play framework. Потрогали его руками и сделали первое Web-приложение на основе данного фреймворка.
- Долгоживущие данные. Вспомнили DDL и DML, разобрали как можно отображать данные с помощью современных ORM (JPA, Hibernate), подключили транзакции, организовали кеширование данных
- Без права на ошибку. Занятие посвящено контролю качеству. В т.ч. рассмотрели виды тестирования, непрерывную интеграцию. Разобрались как писать автоматические тесты для веб-приложений.
- Модульное тестирование. Почему важно писать модульные тесты и почему это нужно делать до написания кода. Выяснили, для чего нужны мок-объекты и как их использовать. Выучили мантру TDD и уяснили, какие есть антипаттерны.
- Чистый код. Рефакторинг. Что это? Признаки дурного "запаха" кода и как от него избавиться с помощью рефакторинга. Приемы рефакторинга и инструментарий.
- Agile`n`Scrum. Рассмотрели как в целом может быть организован производственный процесс на основе гибких методологий. Взяли колоду карт и сыграли в планирование. Интегрированный инструментарий для управления проектами на примере assembla.com.
- Встречают по одёжке. Как правильно организовать слой представления в веб-приложении: HTML, CSS, JS. Инструментарий для отладки, клиентской части. Обзор CSS и JS библиотек, с помощью которых можно быстро привести в порядок веб-слой и сделать его вид более привлекательным для пользователя.
- Исключительные ситуации. Со студенческой скамьи все знают что такое исключения, как они порождаются и как они обрабатываются. Нужно знать много нюансов, чтобы делать это правильно. Об этом и пойдет речь на этом занятии.
- Многопоточность. Эта тем приобретает особенную популярность с развитием многоядерных архитектур, поэтому важно понимать, как рационально управлять предоставляемыми процессорными ресурсами, а для этого нужно знать чуть больше, высокоуровневое API для работы с процессами и потоками. Много наглядных примеров, которые мы выполнили все вместе продемонстрировали различные аспекты построения многопоточных приложений.
- Шаблоны проектирования. Зависмости. Наиболее распространенные шаблоны проектирования, которые вы уже возможно использовали на предыдущих занятиях, но не подозревали об этом. Управление зависимостями внешних библиотек, репозитории артефактов, автоматизация.
- Всегда есть Другой подход. Кроме процедурного и объектного, есть и другие подходы в программировании - об этом и шла речь. Как с помощью этих подходов можно элегантно решать типовые и не очень задачи.
Комментариев нет:
Отправить комментарий