Skip to content

quarkus basics - #33

Merged
EightM merged 7 commits into
EightM:developfrom
lasteris:develop
Aug 9, 2023
Merged

quarkus basics#33
EightM merged 7 commits into
EightM:developfrom
lasteris:develop

Conversation

@lasteris

@lasteris lasteris commented Aug 6, 2023

Copy link
Copy Markdown
Contributor

Добавил краткое описание про Quarkus: )
Думаю стоит его добавить.
Правда надо бы чтоб построение фраз и пунктуацию кто-нибудь заверил (

Comment thread docs/quarkus.md Outdated
@@ -0,0 +1,32 @@
### Quarkus

[Quarkus](https://quarkus.io/) - наиболее популярный "FullStack Framework" после [Spring](https://spring.io/). Детище **RedHat**, вышедшее в Opensource. Проект насчитывает уже третий мажорный релиз и даже обзавелся LTS-версией. В отличии от того же Spring, Quarkus построен на реализации [JAX-RS](https://en.wikipedia.org/wiki/Jakarta_RESTful_Web_Services) от [Resteasy](https://resteasy.dev/), из которой позже, специально для Quarkus, выросла реализация [Resteasy reactive](https://quarkus.io/guides/resteasy-reactive), построенная на [Vert.x](https://vertx.io/). Тот факт, что Quarkus основан уже на давно существующей реализации JAX-RS, стал подспорьем для перехода множества компаний в миграции своих сервисов с [Wildfly](https://www.wildfly.org/) без каких-либо тяжелых усилий.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

наиболее популярный после Spring

Желательно указать авторитетный источник. Например, "наиболее популярный framework после Spring по версии XXX"

Comment thread docs/quarkus.md Outdated
@@ -0,0 +1,32 @@
### Quarkus

[Quarkus](https://quarkus.io/) - наиболее популярный "FullStack Framework" после [Spring](https://spring.io/). Детище **RedHat**, вышедшее в Opensource. Проект насчитывает уже третий мажорный релиз и даже обзавелся LTS-версией. В отличии от того же Spring, Quarkus построен на реализации [JAX-RS](https://en.wikipedia.org/wiki/Jakarta_RESTful_Web_Services) от [Resteasy](https://resteasy.dev/), из которой позже, специально для Quarkus, выросла реализация [Resteasy reactive](https://quarkus.io/guides/resteasy-reactive), построенная на [Vert.x](https://vertx.io/). Тот факт, что Quarkus основан уже на давно существующей реализации JAX-RS, стал подспорьем для перехода множества компаний в миграции своих сервисов с [Wildfly](https://www.wildfly.org/) без каких-либо тяжелых усилий.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Проект насчитывает уже третий мажорный релиз и даже обзавелся LTS-версией.

Кажется, что для новичка эта информация не несет какой-то полезной нагрузки

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Хорошо, подумаю. В данном абзаце я хотел описать мотивацию почему его многие используют и зачем в его сторону смотреть )

Comment thread docs/quarkus.md Outdated
@@ -0,0 +1,32 @@
### Quarkus

[Quarkus](https://quarkus.io/) - наиболее популярный "FullStack Framework" после [Spring](https://spring.io/). Детище **RedHat**, вышедшее в Opensource. Проект насчитывает уже третий мажорный релиз и даже обзавелся LTS-версией. В отличии от того же Spring, Quarkus построен на реализации [JAX-RS](https://en.wikipedia.org/wiki/Jakarta_RESTful_Web_Services) от [Resteasy](https://resteasy.dev/), из которой позже, специально для Quarkus, выросла реализация [Resteasy reactive](https://quarkus.io/guides/resteasy-reactive), построенная на [Vert.x](https://vertx.io/). Тот факт, что Quarkus основан уже на давно существующей реализации JAX-RS, стал подспорьем для перехода множества компаний в миграции своих сервисов с [Wildfly](https://www.wildfly.org/) без каких-либо тяжелых усилий.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Quarkus построен на реализации [JAX-RS]

Здесь и далее идет обилие сложных технических терминов и аббревиатур. Ссылки на википедию конечно помогут, но возможно получится описать более простым языком ключевое отличие от Spring? Что-то в духе "Quarkus такой же классный как Spring, но еще и реактивный". И в паре предложений описать, что за реактивность такая

Comment thread docs/quarkus.md Outdated
@@ -0,0 +1,32 @@
### Quarkus

[Quarkus](https://quarkus.io/) - наиболее популярный "FullStack Framework" после [Spring](https://spring.io/). Детище **RedHat**, вышедшее в Opensource. Проект насчитывает уже третий мажорный релиз и даже обзавелся LTS-версией. В отличии от того же Spring, Quarkus построен на реализации [JAX-RS](https://en.wikipedia.org/wiki/Jakarta_RESTful_Web_Services) от [Resteasy](https://resteasy.dev/), из которой позже, специально для Quarkus, выросла реализация [Resteasy reactive](https://quarkus.io/guides/resteasy-reactive), построенная на [Vert.x](https://vertx.io/). Тот факт, что Quarkus основан уже на давно существующей реализации JAX-RS, стал подспорьем для перехода множества компаний в миграции своих сервисов с [Wildfly](https://www.wildfly.org/) без каких-либо тяжелых усилий.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Тот факт, что Quarkus основан уже на давно существующей реализации JAX-RS...

Опять же, новичок может быть и не в курсе, о том, что такое Wildfly и почему с него надо было переезжать. Получится ли тут расписать более простым языком? В духе "раньше сидели на X и страдали из-за Y, а потом вышел Quarkus и благодаря его киллер фиче Z компании побежали на него мигрировать"?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

да, подумаю

Comment thread docs/quarkus.md Outdated
### Quarkus

[Quarkus](https://quarkus.io/) - наиболее популярный "FullStack Framework" после [Spring](https://spring.io/). Детище **RedHat**, вышедшее в Opensource. Проект насчитывает уже третий мажорный релиз и даже обзавелся LTS-версией. В отличии от того же Spring, Quarkus построен на реализации [JAX-RS](https://en.wikipedia.org/wiki/Jakarta_RESTful_Web_Services) от [Resteasy](https://resteasy.dev/), из которой позже, специально для Quarkus, выросла реализация [Resteasy reactive](https://quarkus.io/guides/resteasy-reactive), построенная на [Vert.x](https://vertx.io/). Тот факт, что Quarkus основан уже на давно существующей реализации JAX-RS, стал подспорьем для перехода множества компаний в миграции своих сервисов с [Wildfly](https://www.wildfly.org/) без каких-либо тяжелых усилий.
Как и Spring Framework, Quarkus из коробки поддерживает большинство технологий, в таком виде, чтобы с ними было комфортно работать в рамках экосистемы Quarkus.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

поддерживает большинство технологий

Каких?

Comment thread docs/quarkus.md Outdated
### Quarkus

[Quarkus](https://quarkus.io/) - наиболее популярный "FullStack Framework" после [Spring](https://spring.io/). Детище **RedHat**, вышедшее в Opensource. Проект насчитывает уже третий мажорный релиз и даже обзавелся LTS-версией. В отличии от того же Spring, Quarkus построен на реализации [JAX-RS](https://en.wikipedia.org/wiki/Jakarta_RESTful_Web_Services) от [Resteasy](https://resteasy.dev/), из которой позже, специально для Quarkus, выросла реализация [Resteasy reactive](https://quarkus.io/guides/resteasy-reactive), построенная на [Vert.x](https://vertx.io/). Тот факт, что Quarkus основан уже на давно существующей реализации JAX-RS, стал подспорьем для перехода множества компаний в миграции своих сервисов с [Wildfly](https://www.wildfly.org/) без каких-либо тяжелых усилий.
Как и Spring Framework, Quarkus из коробки поддерживает большинство технологий, в таком виде, чтобы с ними было комфортно работать в рамках экосистемы Quarkus.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

в таком виде

В каком?)

Comment thread docs/quarkus.md Outdated

[Quarkus](https://quarkus.io/) - наиболее популярный "FullStack Framework" после [Spring](https://spring.io/). Детище **RedHat**, вышедшее в Opensource. Проект насчитывает уже третий мажорный релиз и даже обзавелся LTS-версией. В отличии от того же Spring, Quarkus построен на реализации [JAX-RS](https://en.wikipedia.org/wiki/Jakarta_RESTful_Web_Services) от [Resteasy](https://resteasy.dev/), из которой позже, специально для Quarkus, выросла реализация [Resteasy reactive](https://quarkus.io/guides/resteasy-reactive), построенная на [Vert.x](https://vertx.io/). Тот факт, что Quarkus основан уже на давно существующей реализации JAX-RS, стал подспорьем для перехода множества компаний в миграции своих сервисов с [Wildfly](https://www.wildfly.org/) без каких-либо тяжелых усилий.
Как и Spring Framework, Quarkus из коробки поддерживает большинство технологий, в таком виде, чтобы с ними было комфортно работать в рамках экосистемы Quarkus.
Если вы вдруг испугались, что придется заново учить новые ORM, JDBC, Logging-Framework'и, то спещу огорчить тут вы увидите тот же [Hibernate](https://quarkus.io/guides/hibernate-orm-panache), [SLF4J](https://quarkus.io/guides/logging), [Datasource](https://quarkus.io/guides/datasource) и многое другое. Причем, работать с ними, возможно, будет даже [удобнее](https://quarkus.io/guides/logging#simplified-logging) чем в Spring.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Если вы

ты

Comment thread docs/quarkus.md Outdated

[Quarkus](https://quarkus.io/) - наиболее популярный "FullStack Framework" после [Spring](https://spring.io/). Детище **RedHat**, вышедшее в Opensource. Проект насчитывает уже третий мажорный релиз и даже обзавелся LTS-версией. В отличии от того же Spring, Quarkus построен на реализации [JAX-RS](https://en.wikipedia.org/wiki/Jakarta_RESTful_Web_Services) от [Resteasy](https://resteasy.dev/), из которой позже, специально для Quarkus, выросла реализация [Resteasy reactive](https://quarkus.io/guides/resteasy-reactive), построенная на [Vert.x](https://vertx.io/). Тот факт, что Quarkus основан уже на давно существующей реализации JAX-RS, стал подспорьем для перехода множества компаний в миграции своих сервисов с [Wildfly](https://www.wildfly.org/) без каких-либо тяжелых усилий.
Как и Spring Framework, Quarkus из коробки поддерживает большинство технологий, в таком виде, чтобы с ними было комфортно работать в рамках экосистемы Quarkus.
Если вы вдруг испугались, что придется заново учить новые ORM, JDBC, Logging-Framework'и, то спещу огорчить тут вы увидите тот же [Hibernate](https://quarkus.io/guides/hibernate-orm-panache), [SLF4J](https://quarkus.io/guides/logging), [Datasource](https://quarkus.io/guides/datasource) и многое другое. Причем, работать с ними, возможно, будет даже [удобнее](https://quarkus.io/guides/logging#simplified-logging) чем в Spring.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

спещу

Ш

Comment thread docs/quarkus.md Outdated

#### Документация

При изучении таких Framework'ов как Spring, Quarkus, Helidon, Micronaut...и тд. В первую очередь встает вопрос о документации.

@EightM EightM Aug 6, 2023

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

...и тд. В первую очередь

и т.д. обычно заканчивает предложение, использование его в середине несколько нарушает ритм чтения. Возможно стоит просто его убрать и заменить обычной запятой.

Comment thread docs/quarkus.md Outdated
#### Документация

При изучении таких Framework'ов как Spring, Quarkus, Helidon, Micronaut...и тд. В первую очередь встает вопрос о документации.
Документация Quarkus не должна оставить равнодушным. Стоит просто зайти на [страницу](https://quarkus.io/guides/) и наслаждаться. Там вы найдете как короткие вводные статьи для новичков о том, как использовать тот или иной Framework в рамках Quarkus, так и концепты внутреннего устройства проекта, и, наконец Reference'ые подробнейшие статьи для продолжающих разработчиков.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

В предыдущем предложении ты словом "документация" заканчиваешь предложение и тут же этим же словом его начинаешь. Стоит перефразировать, например "В первую очередь встает вопрос поиска хорошей документации. В случае Quarkus, она не оставит никого равнодушным, стоит просто зайти на страницу..."

Такие моменты хорошо ловятся, если мысленно прямо на каждую точку ставить паузу. Если чувствуешь, что поток чтения обрывается прямо слишком часто, как будто тебя одергивают, значит возможно стоит подумать в сторону расширения предложения. Но не слишком много :)

Comment thread docs/quarkus.md Outdated
#### Утилиты

Spring имеет такую замечательную утилиту [Spring Initializr](https://start.spring.io/) для генерации и первичной настройки проекта.
В Свою очередь, Quarkus предоставляет Web-интерфейс со схожим функционалом [code.quarkus.io](https://code.quarkus.io/).

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Свою

лишняя заглавная буква

Comment thread docs/quarkus.md Outdated
#### Утилиты

Spring имеет такую замечательную утилиту [Spring Initializr](https://start.spring.io/) для генерации и первичной настройки проекта.
В Свою очередь, Quarkus предоставляет Web-интерфейс со схожим функционалом [code.quarkus.io](https://code.quarkus.io/).

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Возможно стоит чуть расширить? "...предоставляет Web-интерфейс со схожим функционалом, в котором ты без проблем сможешь накидать необходимые тебе модули, зависимости и сразу получить готовую сборку проекта"

Comment thread docs/quarkus.md Outdated

#### Сообщество

Стоит отметить, что у сообщества [Quarkus](https://quarkus.io/) есть такой феномен как [Quarkiverse](https://quarkiverse.io/), куда множество компаний по всему миру выкладывают собственные расширения над [Quarkus](https://quarkus.io/).

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

такой феномен как... куда множество компаний

Построено так, что компании выкладывают расширения прямо в феномен.
Возможно стоит перефразировать как "такой феномен как Quarkiverse. Это сайт/хаб/портал, куда множество компаний по всему миру..."

Comment thread docs/quarkus.md Outdated

Стоит отметить, что у сообщества [Quarkus](https://quarkus.io/) есть такой феномен как [Quarkiverse](https://quarkiverse.io/), куда множество компаний по всему миру выкладывают собственные расширения над [Quarkus](https://quarkus.io/).
Уже сейчас, при желании, там можно обнаружить поддержку большинства актуальных технологий "из коробки".
Например, если вам необходимо настроить в проекте взаимодействие по протоколу [SOAP](https://ru.wikipedia.org/wiki/SOAP), то достаточно обратиться сюда [quarkus-cxf extension](https://docs.quarkiverse.io/quarkus-cxf/dev/index.html). Там вы найдете все необходимое.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

вам

тебе

Comment thread docs/quarkus.md Outdated
Стоит отметить, что у сообщества [Quarkus](https://quarkus.io/) есть такой феномен как [Quarkiverse](https://quarkiverse.io/), куда множество компаний по всему миру выкладывают собственные расширения над [Quarkus](https://quarkus.io/).
Уже сейчас, при желании, там можно обнаружить поддержку большинства актуальных технологий "из коробки".
Например, если вам необходимо настроить в проекте взаимодействие по протоколу [SOAP](https://ru.wikipedia.org/wiki/SOAP), то достаточно обратиться сюда [quarkus-cxf extension](https://docs.quarkiverse.io/quarkus-cxf/dev/index.html). Там вы найдете все необходимое.
Также, по собственному опыту, могу сказать что сообщество глубоко заинтересовано и открыто к решению проблем. При желании можно задать любой вопрос в [чате](https://quarkusio.zulipchat.com/), в котором сидят разработчики [Quarkus](https://quarkus.io/) и с охотой отвечают на любой вопрос.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

на любой вопрос

любые вопросы

@lasteris

lasteris commented Aug 6, 2023

Copy link
Copy Markdown
Contributor Author

Такое количество огрех, даже стыдно как-то :)
Сегодня-завтра постараюсь выложить правки по замечаниям

@EightM

EightM commented Aug 6, 2023

Copy link
Copy Markdown
Owner

@lasteris спасибо за реквест! Большинство замечаний к стилистике, а не к содержанию, так что ты молодец.
Из общих замечаний, обрати внимание на два момента

  • в руководстве используется везде обращение на "ты"
  • в рамках раздела, стоит использовать одну и ту же ссылку не более одного раза. Например, не нужно несколько раз на термин Quarkus прикреплять ссылку на сайт. Логика в том, что пользователь читая документ по порядку, впервые встретив термин может захотеть открыть ссылку. В последующие разы она ему уже не нужна, потому что он ее либо уже открыл, либо прочитал

@EightM

EightM commented Aug 6, 2023

Copy link
Copy Markdown
Owner

@lasteris А, ну и мои примеры по замене не стоит рассматривать как эталон, потому что я сам далеко не писатель. Это скорее повод еще раз подумать над формой предложения.

@lasteris

lasteris commented Aug 6, 2023

Copy link
Copy Markdown
Contributor Author

@lasteris спасибо за реквест! Большинство замечаний к стилистике, а не к содержанию, так что ты молодец.
Из общих замечаний, обрати внимание на два момента

  • в руководстве используется везде обращение на "ты"
  • в рамках раздела, стоит использовать одну и ту же ссылку не более одного раза. Например, не нужно несколько раз на термин Quarkus прикреплять ссылку на сайт. Логика в том, что пользователь читая документ по порядку, впервые встретив термин может захотеть открыть ссылку. В последующие разы она ему уже не нужна, потому что он ее либо уже открыл, либо прочитал

да, хорошо, спасибо за такую обратную связь 🙂

@lasteris

lasteris commented Aug 8, 2023

Copy link
Copy Markdown
Contributor Author

@EightM меня немного унесло :)
Считай полностью переписал.
Можешь глянуть визуально как это, я пока выложил в моем fork'e
https://lasteris.github.io/JavaBackendStartGuide/quarkus/
Жду ревью 🙂

заменил обращения к читателю с вы на ты
опечатки, обезличенность (кроме личного опыта)
@lasteris

lasteris commented Aug 8, 2023

Copy link
Copy Markdown
Contributor Author

добавил ещё пару коммитов. опечатки убрал и немного обезличил текст.

закрыл скобку
framework - заменено, так как в русском языке присутствует обрусевший аналог. 
исправлены опечатки
Comment thread docs/quarkus.md Outdated
Вместо этого, он предлагает использовать уже давно существующую в рамках мира backend web-разработки реализацию спецификации [Jakarta REST (ранее известная как JAX-RS)](https://jakarta.ee/specifications/restful-ws/3.1/jakarta-restful-ws-spec-3.1.html), известной как [Resteasy](https://resteasy.dev/).
В сущности, это означает, что разработчикам не пришлось особенно много усилий прилагать, чтобы уйти от устаревшего формата разработки.
Конечно же, это можно было сделать и с помощью Spring Boot, но количество усилий несоизмеримо.
По опыту могу сказать, что типовой микросервис можно перенести c сервлетного JAX-RS на Quarkus даже за 5 минут (конечно же, это средняя температура по больнице).

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

По опыту могу сказать

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

Так что стоит заменять личное, на рекомендацию. Смысл тот же, только источник рекомендации обезличен.

Стоит изменить на просто "Типовой микросервис можно перенести..."

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

готово

Comment thread docs/quarkus.md Outdated
которые подробнее расскажут как писать [REST сервисы](https://quarkus.io/guides/rest-json), в том числе [реактивно](https://quarkus.io/guides/getting-started-reactive).
Также, покажут как упростить разработку в твоей любимой [IDE](https://quarkus.io/guides/ide-tooling) и многое другое.

#### Личный опыт

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Раздел личного опыта стоит убрать, оставив абзац про то, где можно найти истории миграции на quarkus

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

готово

@EightM

EightM commented Aug 9, 2023

Copy link
Copy Markdown
Owner

@lasteris Вторая версия текста получилась гораздо более живой и человечной, было приятно читать. Добавил два замечания, поправишь и можно вливать

еще немного придал тексту обезличенности
@EightM
EightM merged commit c78f5de into EightM:develop Aug 9, 2023
@EightM

EightM commented Aug 9, 2023

Copy link
Copy Markdown
Owner

@lasteris спасибо!

@lasteris

lasteris commented Aug 9, 2023

Copy link
Copy Markdown
Contributor Author

@lasteris спасибо!

взаимно )

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants