Комментарии 14
Стыдно писать книги и не знать, что
Функционал — математическое понятие, возникшее в вариационном исчислении для обозначения переменной величины, заданной на множестве функций, т. е. зависящей от выбора одной или нескольких функций.


А набор возможностей (функций), которые предоставляет данная система или устройство — это ФУНКЦИОНАЛЬНОСТЬ!
Здравствуйте!

У меня каждое упоминание функционала вызывает сходные эмоции.
Ну тем не менее этот неправильный термин уже прочто закрепился и приходится его использовать.
Но ведь можно пофилософствовать) Есть пространство возможных функций (которые можно включить в продукт), из которых путём выбора каких-то из них и определения их взаимодействия образуется функционал (итогового продукта). То есть вполне натягивается сова на глобус.
О! Как раз последний месяц смотрю на clojure (после С, java, python и кучи всего). Вот было бы очень интересно затронуть тему инструментария. Мне, как старому хрену, удобен eclipse, на котором сижу уже лет 20. Но посмотрев последние обзоры вижу emacs и IDEA в фаворитах. Первый хорош, но что-то на него пока не тянет обратно, второй не хочется по идеологическим соображениям. И собственно, пока только это и останавливает начать пользовать clojure по-взрослому.
Так что был бы безмерно признателен за обзор или главку, как на нем взлетать, и на чём. Если emacs или что-то другое, так и написать «лучше ничего нет, ставьте и не пудрите мозги, все знакомые команды настоятельно советуют начинать с ХХХ». Думаю, такая глава была бы очень полезна и начинающим, вроде меня, и совсем начинающим.

В книге есть параграф про окружение.


Например, там описан отдельный repl, не встраиваемый в редактор, и плагин для расстановки скобок и выравнивания кода.


По поводу emacs — без нормальной клавиатуры, вроде kinesis, с ним очень сложно.


Надеюсь, это поможет.

REPL — это хорошо, я не про него. Что нужно (возможно я и ошибаюсь) современному программисту? (телевизор!)
1) Какой(ие)-то редактор(ы), которым пользуется большинство разработчиков
2) В нем же — поддержка git/mercurial
3) Важное для меня — автокомплит, про рефакторинг наверное в плане clojure говорить не стоит, хотя я же ламер, могу и не знать
4) Навигация по проекту, инструменты отладки, пусть даже такие, как в Go
5) Инструменты мониторинга — типа, а сколько у нас тута потоков, а к чему они, ресурсы там всякие… Да-да, наверное это как-то через JMX делается, или как-то иначе? (подозреваю)
6) Ну и как нам теперь всю эту написанную хрень развернуть удаленно…
7) Что там с производительностью, можно ли как-то мерить?
8) И не последнее — вот не все любят тесты, но иногда их нужно. Что там взамен (x)unit и mock?

Я понимаю, что большинство из этих вопросов к самому языку не относятся. Но… Взять любой стартинггайд по node.js, python, Go… И мы увидим все вот это…

Про clojure читаю уже как месяц, язык — супер! И люди на нем работают, и интенсивно. Вот и хотелось бы знать тот workflow (а лучше и пару альтернатив), с которого принято начинать. Я же вот прямо с явы вваливаюсь, мне и шашечки, и ехать. И да, 10-15 лет уже прошли — пора. :-)

1) emacs + sider или idea + cursive, я пользуюсь первым. Кто-то пишет в ms vs code, там есть какие-то плагины.
2) На любителя, кто-то просто git использует в терминале. Для emacs есть magit.
3) Автокомлит в редакторе делается плагинами, тем же cider. Есть clj-refactor, но он не работает с новым cider =(
4) Навигация зависит от редактора. Для emacs есть projectile.
5) Есть java interop, т.е. из repl можно дергать java код.
6) Например, запаковать в докер.
7) да, есть бенчмарки, которые умеют прогревать JVM. В книге есть пример.
8) вот пример теста


Можно помотреть мой emacs.d.


Взять любой стартинггайд по

У меня нет цели писать стандартный гайд, иначе я бы никогда не закончил книгу.
Для этого есть глава о материалах для самостоятельно чтения.


  1. https://clojurecourse.by/ — отличные русскоязычные курсы
  2. https://www.braveclojure.com/clojure-for-the-brave-and-true/

Если просто написать web приложение, вот чтобы сразу ехать, то можно посмотреть в сторону luminus. Но как спроектировать архитектуру там не расскажут.

Отлично! Жаль, не могу карму увеличивать. А можно сразу в pdf рендерить? Чтобы по md не тыркаться, или в Wiki? Хотя, и так большое спасибо за труд!
Из вступления: «ORM генерирует крайне неэффективные запросы». Вроде бы ORM и в теории не сможет генерировать очень эффективные запросы? Где нужна производительность, лучше использовать чистый SQL?
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.