TGViewer
Spring АйО Spring АйО @spring_aio · 11K subscribers
Post #247 4.88K
👩‍💻 JEP 467: Markdown в JavaDoc

С выходом Java 23 произошли важные изменения в формате написания комментариев — теперь они могут быть написаны с использованием Markdown. Ранее разработчики использовали HTML и JavaDoc-теги для оформления таких комментариев, что могло создавать сложности, особенно для тех, кто не знаком с HTML. Теперь, благодаря поддержке Markdown, комментарии станет писать проще и удобнее.

Зачем это нужно?

HTML с течением времени стал менее популярен для ручного написания. Сегодня чаще используют языки разметки, ориентированные на удобство разработчиков. Использование HTML для JavaDoc создавало трудности, так как он тяжеловесен и сложен для быстрого написания, особенно для новых разработчиков.

Преимущества использования Markdown

Markdown стал популярным благодаря своей простоте и удобочитаемости. Он идеально подходит для написания JavaDoc, которая обычно состоит из текстовых блоков, списков, ссылок и выделенного текста. Вместо сложных HTML-тегов можно использовать гораздо более лаконичные конструкции Markdown.

Вот так выглядит комментарий к методу hashCode с использованием HTML и JavaDoc-тегов:


/**
* Возвращает хэш-код для объекта.
* <p>
* Общий контракт метода {@code hashCode}:
* <ul>
* <li>Если метод вызывается несколько раз на одном объекте в ходе выполнения программы,
* он должен возвращать одно и то же значение, если данные объекта не изменялись.
* <li>Если два объекта равны, вызов метода {@code hashCode} должен вернуть одинаковое значение.
* <li>Если объекты не равны, метод может возвращать одинаковые хэш-коды, но этого следует избегать.
* </ul>
* @return хэш-код для объекта.
*/


Этот же комментарий в Markdown:


/// Возвращает хэш-код для объекта.
///
/// Общий контракт метода `hashCode`:
///
/// - Если метод вызывается несколько раз на одном объекте в ходе выполнения программы,
/// он должен возвращать одно и то же значение, если данные объекта не изменялись.
/// - Если два объекта равны, вызов метода `hashCode` должен вернуть одинаковое значение.
/// - Если объекты не равны, метод может возвращать одинаковые хэш-коды, но этого следует избегать.
///
/// @return хэш-код для объекта.


Для использования Markdown введён новый формат комментариев: строки начинаются с трёх слэшей (`///`), вместо традиционного синтаксиса /** ... */.

Основные различия:
- Пробел между абзацами обозначается пустой строкой, как и в Markdown.
- Списки создаются с помощью маркеров - вместо HTML-тегов <ul> и <li>.
- Подчёркивание (`_`) используется для выделения текста, вместо HTML-тегов <em>.
- Теги вроде {@code} заменяются обратными апострофами (\`...\`).

В то же время, важные теги, такие как @param и @return, сохраняются и могут использоваться вместе с Markdown-разметкой.

🔗 С полным описанием JEP можно ознакомиться по ссылке: https://openjdk.org/jeps/467

#Java #JEP
  • 👍 36
  • 🤔 15
  • ❤ 5
  • 🔥 5
  • 👌 1
More from @spring_aio
  1. Oct 11, 2026🎬 Записи докладов с JPoint 2026 уже в открытом доступе JUG Ru Group выложили записи с про…
  2. Oct 9, 2026👩‍💻 Kotlin получил почти настоящие статики Начиная с Kotlin 2.5.0-Beta1 можно эксперимен…
  3. Oct 8, 2026🍃 Spring Boot ломает совместимость, G1 тормозит микросервисы, Java долго релизит фичи | S…
  4. Oct 6, 2026👩‍💻 Spring Config Import без магии У наших друзей из Axelix вышла статья о том, как Spri…
  5. Oct 5, 2026🥲 В Java 27 TLS научился переживать квантовую атаку При установке HTTPS-соединения клиент…
  6. Oct 3, 2026⚡️⚡️Строки кода стремятся подешеветь до цены токена. Что остается ценным? Про это — трек «…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →