Skip to content

Commit b6bd7ba

Browse files
Copilotbrunoborges
andauthored
Add Russian translations for strings content category
Translate all 7 string pattern YAML files from German to Russian under translations/content/ru/strings/. Covered patterns: string-chars-stream, string-formatted, string-indent-transform, string-isblank, string-lines, string-repeat, string-strip. Translated fields: title, summary, explanation, oldApproach, modernApproach, whyModernWins[].title, whyModernWins[].desc, support.description. YAML keys, icons (emoji), and Java code left unchanged. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: brunoborges <129743+brunoborges@users.noreply.github.com>
1 parent f1f964a commit b6bd7ba

File tree

7 files changed

+135
-0
lines changed

7 files changed

+135
-0
lines changed
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
title: Символы строки как поток
2+
oldApproach: Ручной цикл
3+
modernApproach: Поток chars()
4+
summary: Обработка символов строки в виде конвейера потока.
5+
explanation: String.chars() возвращает IntStream значений символов, обеспечивая
6+
функциональную обработку. Для поддержки Unicode метод codePoints() корректно
7+
обрабатывает дополнительные символы.
8+
whyModernWins:
9+
- icon: 🔗
10+
title: Цепочки вызовов
11+
desc: Применяйте filter, map, collect к потокам символов.
12+
- icon: 📐
13+
title: Декларативный стиль
14+
desc: Описывает что делать, а не как итерировать.
15+
- icon: 🌐
16+
title: Поддержка Unicode
17+
desc: codePoints() корректно обрабатывает эмодзи и дополнительные символы.
18+
support:
19+
description: Доступно с JDK 8+ (улучшено в 9+)
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
title: String.formatted()
2+
oldApproach: String.format()
3+
modernApproach: formatted()
4+
summary: Вызов formatted() непосредственно на строке-шаблоне.
5+
explanation: String.formatted() — это метод экземпляра, аналогичный String.format(),
6+
но вызываемый на строке форматирования. Он читается более естественно в потоке
7+
слева направо.
8+
whyModernWins:
9+
- icon: 📖
10+
title: Естественная читаемость
11+
desc: "Template.formatted(args) воспринимается лучше, чем String.format(template, args)."
12+
- icon: 🔗
13+
title: Цепочки вызовов
14+
desc: Можно объединять в цепочку с другими строковыми методами.
15+
- icon: 📏
16+
title: Меньше кода
17+
desc: Устраняет избыточный статический вызов String.format().
18+
support:
19+
description: Широко доступно с JDK 15 (сентябрь 2020)
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
title: String.indent() и transform()
2+
oldApproach: Ручное добавление отступа
3+
modernApproach: indent() / transform()
4+
summary: Добавление отступов к тексту и цепочечное применение строковых преобразований.
5+
explanation: indent(n) добавляет n пробелов к каждой строке. transform(fn) применяет
6+
произвольную функцию и возвращает результат, позволяя выстраивать цепочки
7+
строковых операций.
8+
whyModernWins:
9+
- icon: 📏
10+
title: Встроенный метод
11+
desc: Добавление отступов — частая операция, теперь это один вызов.
12+
- icon: 🔗
13+
title: Цепочки вызовов
14+
desc: transform() позволяет строить цепочки операций над строками.
15+
- icon: 🧹
16+
title: Чистый код
17+
desc: Не нужно вручную разбивать строки и писать циклы с StringBuilder.
18+
support:
19+
description: Широко доступно с JDK 12 (март 2019)
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
title: String.isBlank()
2+
oldApproach: trim().isEmpty()
3+
modernApproach: isBlank()
4+
summary: Проверка пустых строк одним вызовом метода.
5+
explanation: isBlank() возвращает true, если строка пуста или содержит только
6+
пробельные символы, включая Unicode-пробелы, которые trim() не учитывает.
7+
whyModernWins:
8+
- icon: 📖
9+
title: Самодокументирующийся
10+
desc: isBlank() точно описывает то, что проверяет.
11+
- icon: 🌐
12+
title: Поддержка Unicode
13+
desc: Обрабатывает все пробельные символы Unicode, а не только ASCII.
14+
- icon:
15+
title: Без аллокаций
16+
desc: Не создаёт промежуточную обрезанную строку.
17+
support:
18+
description: Широко доступно с JDK 11 (сентябрь 2018)
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
title: String.lines() для разбиения на строки
2+
oldApproach: "split(\"\\\\n\")"
3+
modernApproach: lines()
4+
summary: Использование String.lines() для разбиения текста на поток строк без
5+
издержек регулярных выражений.
6+
explanation: "String.lines() возвращает Stream<String> строк, разбитых по \\n,\
7+
\ \\r или \\r\\n. Это ленивее и эффективнее, чем split(), избегает компиляции\
8+
\ регулярных выражений и естественно интегрируется в Stream API для дальнейшей\
9+
\ обработки."
10+
whyModernWins:
11+
- icon:
12+
title: Ленивый поток
13+
desc: Строки генерируются по запросу, а не все сразу, как в split().
14+
- icon: 🔧
15+
title: Универсальные разделители строк
16+
desc: "Автоматически обрабатывает \\n, \\r и \\r\\n без регулярных выражений."
17+
- icon: 🔗
18+
title: Интеграция со Stream
19+
desc: Возвращает поток для прямого использования с filter, map, collect.
20+
support:
21+
description: Доступно с JDK 11 (сентябрь 2018).
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
title: String.repeat()
2+
oldApproach: Цикл с StringBuilder
3+
modernApproach: repeat()
4+
summary: Повторение строки n раз без цикла.
5+
explanation: "String.repeat(int) возвращает строку, объединённую с собой n раз.\
6+
\ Обрабатывает граничные случаи: repeat(0) возвращает пустую строку, repeat(1)\
7+
\ возвращает ту же строку."
8+
whyModernWins:
9+
- icon: 📏
10+
title: Однострочник
11+
desc: Заменяет 5 строк кода с StringBuilder одним вызовом.
12+
- icon:
13+
title: Оптимизировано
14+
desc: Внутренняя реализация оптимизирована для большого числа повторений.
15+
- icon: 📖
16+
title: Ясное намерение
17+
desc: repeat(3) сразу передаёт цель.
18+
support:
19+
description: Широко доступно с JDK 11 (сентябрь 2018)
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
title: String.strip() vs trim()
2+
oldApproach: trim()
3+
modernApproach: strip()
4+
summary: Unicode-совместимое удаление пробелов с помощью strip(), stripLeading(),
5+
stripTrailing().
6+
explanation: trim() удаляет только символы ≤ U+0020 (управляющие символы ASCII
7+
и пробел). strip() использует Character.isWhitespace(), который обрабатывает
8+
Unicode-пробелы, такие как неразрывный пробел, идеографический пробел и др.
9+
whyModernWins:
10+
- icon: 🌐
11+
title: Корректная работа с Unicode
12+
desc: Обрабатывает все пробельные символы из всех систем письма.
13+
- icon: 🎯
14+
title: Направленность
15+
desc: stripLeading() и stripTrailing() для одностороннего удаления.
16+
- icon: 🛡️
17+
title: Меньше ошибок
18+
desc: Нет неожиданных пробелов в интернациональном тексте.
19+
support:
20+
description: Широко доступно с JDK 11 (сентябрь 2018)

0 commit comments

Comments
 (0)