Что?

Это книга с теорией и практикой. Мы создадим приложение с нуля и без фреймворков, рассмотрим каждый аспект приложения: как моделировать предметную область, как описывать сценарии, как тестировать, как доставить приложение клиенту с помощью web, как работать с базами данных.

Мы познакомимся с языком Clojure(LISP для JVM), принципами SOLID, Clean Architecture, паттернами Data Mapper, Unit of Work, Identity Map. Научимся откладывать принятие технических решений.

Хорошую характеристику языку дал Никита Прокопов в интервью:

Clojure — это язык для старых, уставших программистов. К нему не приходят в начале карьеры, а он становится интересен уже после 10-15 лет. Во-первых, у тебя абсолютная свобода. Всё, что тебе нужно, ты делаешь сам или берешь из библиотек. В самом языке зашито минимум вещей. Всё остальное ты конструируешь, делаешь ровно так, как тебе нужно. Всё самодельное и можно поменять. Это опасно, когда ты новичок, но полезно, если ты уже эксперт и знаешь то, что тебе нужно.