Skip to content

docs: Improve existing German READMEs and add new ones#3444

Open
sieberss wants to merge 28 commits intoiluwatar:masterfrom
sieberss:master
Open

docs: Improve existing German READMEs and add new ones#3444
sieberss wants to merge 28 commits intoiluwatar:masterfrom
sieberss:master

Conversation

@sieberss
Copy link

@sieberss sieberss commented Mar 4, 2026

Issue #2275

What does this PR do?

  • reformulation of existing README files (Main and Abstract Document) in German

  • add links to further languages in Main README

  • add paragraph for the book

  • translate README files of other patterns into German

@github-actions
Copy link

github-actions bot commented Mar 4, 2026

PR Summary

Expanded and reformulated German READMEs across multiple design patterns. Added new German README files with examples, diagrams, usage guidance, tutorials, and references. Updated central README, Abstract Document, Abstract Factory, Active Object, Actor Model, Acyclic Visitor, Adapter, Bridge and more to improve localization coverage.

Changes

File Summary
localization/de/README.md Rewrote central German README: license badge capitalization fixed, expanded language links, and refined intro; added sections for contributing and the book.
localization/de/abstract-document/README.md German Abstract Document README improved: terminology aligned, sections reorganized, examples clarified, code blocks updated, and a usage section added.
localization/de/abstract-factory/README.md Created German README for Abstract Factory, with purpose, explanation, diagrams, a kingdom-themed Java example, usage, tutorials, and references.
localization/de/abstract-factory/etc/abstract-factory.urm.png New UML diagram image for Abstract Factory.
localization/de/active-object/README.md Added German Active Object README with overview, real-world example, Java samples, usage, tutorials, applications and trade-offs.
localization/de/active-object/etc/active-object.urm.png New Active Object UML diagram image.
localization/de/actor-model/README.md New German Actor Model README detailing purpose, example, class diagram, usage, tutorials, applications, and related patterns.
localization/de/acyclic-visitor/README.md New German Acyclic Visitor README with purpose, explanation, example, diagram, usage, tutorials, pros/cons and related patterns.
localization/de/adapter/README.md New German Adapter README with purpose, explanation, example, usage, tutorials, pros/cons and related patterns.
localization/de/adapter/etc/adapter.urm.png New UML diagram image for Adapter Pattern.
localization/de/aggregator-microservices/aggregator-service/etc/aggregator-service.png New UML diagram image for aggregator service.
localization/de/ambassador/etc/ambassador.urm.png New Ambassador diagram image.
localization/de/api-gateway/etc/api-gateway.png New API gateway diagram image.
localization/de/async-method-invocation/etc/async-method-invocation.png New diagram for async method invocation.
localization/de/balking/etc/balking.png New Balking diagram image.
localization/de/bridge/README.md New German Bridge README with purpose, diagrams, examples, usage, tutorials, and related patterns.
localization/de/bridge/etc/bridge.urm.png New Bridge diagram image.
localization/de/builder/etc/builder.urm.png New Builder diagram image.
localization/de/business-delegate/etc/business-delegate.urm.png New Business Delegate diagram image.
localization/de/bytecode/etc/bytecode.urm.png New Bytecode diagram image.
localization/de/chain-of-responsibility/etc/chain-of-responsibility.urm.png New Chain of Responsibility diagram image.
localization/de/client-session/etc/session_state_pattern.png New Client Session pattern diagram image.
localization/de/collecting-parameter/etc/collecting-parameter.urm.png New Collecting Parameter diagram image.
localization/de/command/etc/command.png New Command pattern diagram image.
localization/de/commander/etc/commander.urm.png New Commander diagram image.
localization/de/composite-entity/etc/composite_entity.urm.png New Composite Entity diagram image.
localization/de/composite-view/etc/composite_view.png New Composite View diagram image.
localization/de/composite-view/etc/images/noparam.png New noparam image for composite view.
localization/de/composite-view/etc/images/threeparams.png New threeparams image for composite view.
localization/de/composite/etc/composite.urm.png New Composite diagram image.

autogenerated by presubmit.ai

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

LGTM!

Review Summary

Commits Considered (3)
  • 325b272: docs: reformulate german translation for Abstract Document
    (#2275)
  • ca43940: docs: shorten text for link to payhip
    (#2275)
  • 5f9e2d2: docs: reformulate text, add links to further languages and paragraph about the book in central README.md
    (#2275)
Files Processed (2)
  • localization/de/README.md (2 hunks)
  • localization/de/abstract-document/README.md (4 hunks)
Actionable Comments (0)
Skipped Comments (6)
  • localization/de/README.md [1-4]

    readability: "Inconsistency in badge wording"

  • localization/de/README.md [14-15]

    readability: "Language list and link consistency"

  • localization/de/README.md [19-24]

    readability: "Intro copy consistency"

  • localization/de/README.md [37-37]

    readability: "Terminology consistency"

  • localization/de/README.md [47-50]

    readability: "Book section language and capitalization"

  • localization/de/README.md [54-54]

    readability: "License phrasing"

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

🚨 Pull request needs attention.

Review Summary

Commits Considered (1)
  • 398d4f5: Create folder for Abstract Factory
Files Processed (3)
  • localization/de/Abstract Factory (1 hunk)
  • localization/de/README.md (2 hunks)
  • localization/de/abstract-document/README.md (4 hunks)
Actionable Comments (1)
  • localization/de/abstract-document/README.md [88-92]

    readability: "Narrative text inside code block breaks Java code snippet."

Skipped Comments (9)
  • localization/de/Abstract Factory [1-1]

    maintainability: "Remove empty placeholder file or replace with a valid README."

  • localization/de/README.md [1-4]

    readability: "Check German title and top-section localization."

  • localization/de/README.md [11-16]

    readability: "Add language navigation links."

  • localization/de/README.md [37-37]

    readability: "Verify list formatting and language consistency in new bullets."

  • localization/de/README.md [45-50]

    readability: "Add book section; fix minor localization typos."

  • localization/de/README.md [54-54]

    readability: "License phrasing"

  • localization/de/abstract-document/README.md [3-11]

    readability: "Localize front-matter tags."

  • localization/de/abstract-document/README.md [238-245]

    readability: "Clarify advantages/disadvantages section layout."

  • localization/de/abstract-document/README.md [246-249]

    readability: "Remove/handle affiliate links in sources."

Comment on lines +88 to 92
// Weitere Eigenschaften und Methoden...
}
```
Als nächstes definieren wir ein Enum Property und eine Menge von Schnittstellen für Typ, Preis, Modell und Teile. Dies ermöglicht es uns, eine statisch aussehende Schnittstelle für unsere Car-Klasse zu erstellen.
Als nächstes definieren wir ein Enum `Property` und je eine Schnittstelle für Typ, Preis, Modell und Teile. So können wir eine statisch aussehende Schnittstelle für unsere Klasse `Car` erstellen.

Copy link

Choose a reason for hiding this comment

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

Narrative explanations were inserted inside a Java code block, which will break syntax. Move these explanations outside the code block or convert to code comments.

Copy link
Author

Choose a reason for hiding this comment

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

They are outside the code block

@sonarqubecloud
Copy link

sonarqubecloud bot commented Mar 5, 2026

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

LGTM!

Review Summary

Commits Considered (1)
  • e71866f: Create README.md for Abstract Document
Files Processed (1)
  • localization/de/abstract-factory/README.md (1 hunk)
Actionable Comments (0)
Skipped Comments (8)
  • localization/de/abstract-factory/README.md [19-21]

    readability: "Grammatik und Stil verbessern"

  • localization/de/abstract-factory/README.md [23-23]

    readability: "Übersetzung von Überschriften"

  • localization/de/abstract-factory/README.md [25-29]

    readability: "Bilingual content inconsistency"

  • localization/de/abstract-factory/README.md [31-31]

    readability: "Übersetzung von Überschriften"

  • localization/de/abstract-factory/README.md [35-35]

    readability: "Übersetzung von Überschriften"

  • localization/de/abstract-factory/README.md [39-39]

    readability: "Übersetzung von Überschriften"

  • localization/de/abstract-factory/README.md [172-172]

    readability: "Übersetzung von Überschriften"

  • localization/de/abstract-factory/README.md [190-190]

    readability: "Übersetzung von Überschriften"

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

🚨 Pull request needs attention.

Review Summary

Commits Considered (1)
  • 624e970: Translate README.md for Abstract Document to German
Files Processed (1)
  • localization/de/abstract-factory/README.md (1 hunk)
Actionable Comments (1)
  • localization/de/abstract-factory/README.md [36-36]

    typo: "Typo: 'Klassse' → 'Klasse'"

Skipped Comments (4)
  • localization/de/abstract-factory/README.md [40-40]

    readability: "Bildpfad fehlerhaft: UML-Diagramm-Datei"

  • localization/de/abstract-factory/README.md [90-90]

    readability: "Markdown-Codeblock falsch beendet"

  • localization/de/abstract-factory/README.md [146-146]

    readability: "Ungenauigkeit im Beispielpfad"

  • localization/de/abstract-factory/README.md [199-205]

    readability: "Formatter-Fehler: leere Bulletzeilen"


Wikipedia sagt

> Das Abstract-Factory-Pattern dient zur Kapselung einer Gruppe einzelner Factories mit gemeinsamem Thema, wobei deren konkrete Klassse variabel bleibt.
Copy link

Choose a reason for hiding this comment

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

Typo in German translation: 'Klassse' ist falsch geschrieben. Korrigiere zu 'Klasse'.

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

LGTM!

Review Summary

Commits Considered (1)
Files Processed (1)
  • localization/de/abstract-factory/README.md (1 hunk)
Actionable Comments (0)
Skipped Comments (2)
  • localization/de/abstract-factory/README.md [89-89]

    readability: "Inconsistent Orc/Ork terminology in sample code"

  • localization/de/abstract-factory/README.md [143-155]

    readability: "Usage example has incorrect/type reference and naming"

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

🚨 Pull request needs attention.

Review Summary

Commits Considered (10)
  • a1c4254: docs: Create German README.md for Active Object

#2275
first text part

  • b1061ff: docs: add missing words in abstract-factory.README.md
    (#2275)
  • 908b93d: docs: add class diagrams for all patterns
    (#2275)
  • b91d1f7: correct typo
  • 624e970: Translate README.md for Abstract Document to German
  • e71866f: Create README.md for Abstract Document
  • 398d4f5: Create folder for Abstract Factory
  • 325b272: docs: reformulate german translation for Abstract Document
    (#2275)
  • ca43940: docs: shorten text for link to payhip
    (#2275)
  • 5f9e2d2: docs: reformulate text, add links to further languages and paragraph about the book in central README.md
    (#2275)
Files Processed (30)
  • localization/de/Abstract Factory (1 hunk)
  • localization/de/README.md (2 hunks)
  • localization/de/abstract-document/README.md (4 hunks)
  • localization/de/abstract-factory/README.md (1 hunk)
  • localization/de/abstract-factory/etc/abstract-factory.urm.png (0 hunks)
  • localization/de/active-object/README.md (1 hunk)
  • localization/de/active-object/etc/active-object.urm.png (0 hunks)
  • localization/de/adapter/etc/adapter.urm.png (0 hunks)
  • localization/de/aggregator-microservices/aggregator-service/etc/aggregator-service.png (0 hunks)
  • localization/de/ambassador/etc/ambassador.urm.png (0 hunks)
  • localization/de/api-gateway/etc/api-gateway.png (0 hunks)
  • localization/de/async-method-invocation/etc/async-method-invocation.png (0 hunks)
  • localization/de/balking/etc/balking.png (0 hunks)
  • localization/de/bridge/etc/bridge.urm.png (0 hunks)
  • localization/de/builder/etc/builder.urm.png (0 hunks)
  • localization/de/business-delegate/etc/business-delegate.urm.png (0 hunks)
  • localization/de/bytecode/etc/bytecode.urm.png (0 hunks)
  • localization/de/chain-of-responsibility/etc/chain-of-responsibility.urm.png (0 hunks)
  • localization/de/client-session/etc/session_state_pattern.png (0 hunks)
  • localization/de/collecting-parameter/etc/collecting-parameter.urm.png (0 hunks)
  • localization/de/command/etc/command.png (0 hunks)
  • localization/de/commander/etc/commander.urm.png (0 hunks)
  • localization/de/composite-entity/etc/composite_entity.urm.png (0 hunks)
  • localization/de/composite-view/etc/composite_view.png (0 hunks)
  • localization/de/composite-view/etc/images/noparam.png (0 hunks)
  • localization/de/composite-view/etc/images/threeparams.png (0 hunks)
  • localization/de/composite/etc/composite.urm.png (0 hunks)
  • localization/de/context-object/etc/context-object.png (0 hunks)
  • localization/de/converter/etc/converter.png (0 hunks)
  • localization/de/crtp/etc/crtp.png (0 hunks)
Actionable Comments (1)
  • localization/de/abstract-document/README.md [128-137]

    best_practice: "Narrative inside code block"

Skipped Comments (7)
  • localization/de/Abstract Factory [1-1]

    maintainability: "Invalid path due to spaces in directory name"

  • localization/de/README.md [1-1]

    best_practice: "Front matter consistency"

  • localization/de/README.md [14-15]

    readability: "Multilingual links formatting"

  • localization/de/README.md [19-27]

    readability: "German introductory copy quality"

  • localization/de/README.md [37-37]

    readability: "Terminology consistency (patterns category)"

  • localization/de/README.md [41-50]

    readability: "German grammar and consistency in Mitarbeit section"

  • localization/de/abstract-document/README.md [1-16]

    maintainability: "Front matter localization inconsistencies"

Comment on lines +128 to +137
Nun können wir das `Car` einführen.

```java
public static void main(String[] args) {
LOGGER.info("Konstruktion von Teilen und Auto");

var wheelProperties = Map.of(
Property.TYPE.toString(), "wheel",
Property.MODEL.toString(), "15C",
Property.PRICE.toString(), 100L);

var doorProperties = Map.of(
Property.TYPE.toString(), "door",
Property.MODEL.toString(), "Lambo",
Property.PRICE.toString(), 300L);

var carProperties = Map.of(
Property.MODEL.toString(), "300SL",
Property.PRICE.toString(), 10000L,
Property.PARTS.toString(), List.of(wheelProperties, doorProperties));

var car = new Car(carProperties);

LOGGER.info("Hier ist unser Auto:");
LOGGER.info("-> Modell: {}", car.getModel().orElseThrow());
LOGGER.info("-> Preis: {}", car.getPrice().orElseThrow());
LOGGER.info("-> Teile: ");
public class Car extends AbstractDocument implements HasModel, HasPrice, HasParts {

public Car(Map<String, Object> properties) {
super(properties);
}
}
```
Copy link

Choose a reason for hiding this comment

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

The German instructional text between code blocks should be placed outside the Java code blocks. Narrative comments inside a code block can break compilation when copied as code; move non-code explanations to prose sections or convert to Java comments inside the code.

@sieberss sieberss changed the title Improve existing German READMEs Improve existing German READMEs and add new ones Mar 9, 2026
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

🚨 Pull request needs attention.

Review Summary

Commits Considered (1)
  • 0fdb2f6: docs: translate actor-model into German

#2295

Files Processed (1)
  • localization/de/actor-model/README.md (1 hunk)
Actionable Comments (2)
  • localization/de/actor-model/README.md [35-35]

    typo: "Typo in German translation"

  • localization/de/actor-model/README.md [175-175]

    typo: "Typo in benefits section"

Skipped Comments (4)
  • localization/de/actor-model/README.md [107-110]

    readability: "Language consistency in code sample"

  • localization/de/actor-model/README.md [113-113]

    readability: "Inconsistent ID capitalization"

  • localization/de/actor-model/README.md [2-12]

    maintainability: "Front matter translation consistency"

  • localization/de/actor-model/README.md [178-178]

    readability: "Inconsistent terminology for 'actors' plural"

Stellen Sie sich ein Kundendienstsystem vor.
- Jeder **Kundendienstmitarbeiter** ist ein **Aktor**.
- Kunden **senden Anfragen (Nachrichten)** an die Mitarbeiter.
- Jeder Mitarbeiter behandelt zu einem bestimmten Zeitpunkt genau eine Anfrage und kann diese **asychron beantworten**,
Copy link

Choose a reason for hiding this comment

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

Typo detected: the German line uses the misspelling 'asychron'. It should be 'asynchron' (or 'asynchron').

## Vor- und Nachteile

### ✅ Benefits
- Unterstützt hohes Maß an Parellelität
Copy link

Choose a reason for hiding this comment

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

Typo: 'Parellelität' should be 'Parallelität'.

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

LGTM!

Review Summary

Commits Considered (14)
  • 8bdd431: correct typo
  • cb66b41: docs: add German translation for Acyclic Visitor

#2295

  • 0fdb2f6: docs: translate actor-model into German

#2295

  • 362646e: docs: finish German translation of README.md for Active Object
  • a1c4254: docs: Create German README.md for Active Object

#2275
first text part

  • b1061ff: docs: add missing words in abstract-factory.README.md
    (#2275)
  • 908b93d: docs: add class diagrams for all patterns
    (#2275)
  • b91d1f7: correct typo
  • 624e970: Translate README.md for Abstract Document to German
  • e71866f: Create README.md for Abstract Document
  • 398d4f5: Create folder for Abstract Factory
  • 325b272: docs: reformulate german translation for Abstract Document
    (#2275)
  • ca43940: docs: shorten text for link to payhip
    (#2275)
  • 5f9e2d2: docs: reformulate text, add links to further languages and paragraph about the book in central README.md
    (#2275)
Files Processed (30)
  • localization/de/Abstract Factory (1 hunk)
  • localization/de/README.md (2 hunks)
  • localization/de/abstract-document/README.md (4 hunks)
  • localization/de/abstract-factory/README.md (1 hunk)
  • localization/de/abstract-factory/etc/abstract-factory.urm.png (0 hunks)
  • localization/de/active-object/README.md (1 hunk)
  • localization/de/active-object/etc/active-object.urm.png (0 hunks)
  • localization/de/actor-model/README.md (1 hunk)
  • localization/de/acyclic-visitor/README.md (1 hunk)
  • localization/de/adapter/etc/adapter.urm.png (0 hunks)
  • localization/de/aggregator-microservices/aggregator-service/etc/aggregator-service.png (0 hunks)
  • localization/de/ambassador/etc/ambassador.urm.png (0 hunks)
  • localization/de/api-gateway/etc/api-gateway.png (0 hunks)
  • localization/de/async-method-invocation/etc/async-method-invocation.png (0 hunks)
  • localization/de/balking/etc/balking.png (0 hunks)
  • localization/de/bridge/etc/bridge.urm.png (0 hunks)
  • localization/de/builder/etc/builder.urm.png (0 hunks)
  • localization/de/business-delegate/etc/business-delegate.urm.png (0 hunks)
  • localization/de/bytecode/etc/bytecode.urm.png (0 hunks)
  • localization/de/chain-of-responsibility/etc/chain-of-responsibility.urm.png (0 hunks)
  • localization/de/client-session/etc/session_state_pattern.png (0 hunks)
  • localization/de/collecting-parameter/etc/collecting-parameter.urm.png (0 hunks)
  • localization/de/command/etc/command.png (0 hunks)
  • localization/de/commander/etc/commander.urm.png (0 hunks)
  • localization/de/composite-entity/etc/composite_entity.urm.png (0 hunks)
  • localization/de/composite-view/etc/composite_view.png (0 hunks)
  • localization/de/composite-view/etc/images/noparam.png (0 hunks)
  • localization/de/composite-view/etc/images/threeparams.png (0 hunks)
  • localization/de/composite/etc/composite.urm.png (0 hunks)
  • localization/de/context-object/etc/context-object.png (0 hunks)
Actionable Comments (0)
Skipped Comments (3)
  • localization/de/Abstract Factory [1-1]

    maintainability: "Remove empty placeholder file or add content"

  • localization/de/README.md [1-4]

    readability: "German root README header update"

  • localization/de/abstract-document/README.md [14-16]

    readability: "Add/verify Zweck section in Abstract Document README"

@chee003 chee003 mentioned this pull request Mar 10, 2026
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

🚨 Pull request needs attention.

Review Summary

Commits Considered (1)
  • 12fd4e0: docs: Translate Singleton into German

#2295

Files Processed (30)
  • localization/de/Abstract Factory (1 hunk)
  • localization/de/README.md (2 hunks)
  • localization/de/abstract-document/README.md (4 hunks)
  • localization/de/abstract-factory/README.md (1 hunk)
  • localization/de/abstract-factory/etc/abstract-factory.urm.png (0 hunks)
  • localization/de/active-object/README.md (1 hunk)
  • localization/de/active-object/etc/active-object.urm.png (0 hunks)
  • localization/de/actor-model/README.md (1 hunk)
  • localization/de/acyclic-visitor/README.md (1 hunk)
  • localization/de/adapter/etc/adapter.urm.png (0 hunks)
  • localization/de/aggregator-microservices/aggregator-service/etc/aggregator-service.png (0 hunks)
  • localization/de/ambassador/etc/ambassador.urm.png (0 hunks)
  • localization/de/api-gateway/etc/api-gateway.png (0 hunks)
  • localization/de/async-method-invocation/etc/async-method-invocation.png (0 hunks)
  • localization/de/balking/etc/balking.png (0 hunks)
  • localization/de/bridge/etc/bridge.urm.png (0 hunks)
  • localization/de/builder/etc/builder.urm.png (0 hunks)
  • localization/de/business-delegate/etc/business-delegate.urm.png (0 hunks)
  • localization/de/bytecode/etc/bytecode.urm.png (0 hunks)
  • localization/de/chain-of-responsibility/etc/chain-of-responsibility.urm.png (0 hunks)
  • localization/de/client-session/etc/session_state_pattern.png (0 hunks)
  • localization/de/collecting-parameter/etc/collecting-parameter.urm.png (0 hunks)
  • localization/de/command/etc/command.png (0 hunks)
  • localization/de/commander/etc/commander.urm.png (0 hunks)
  • localization/de/composite-entity/etc/composite_entity.urm.png (0 hunks)
  • localization/de/composite-view/etc/composite_view.png (0 hunks)
  • localization/de/composite-view/etc/images/noparam.png (0 hunks)
  • localization/de/composite-view/etc/images/threeparams.png (0 hunks)
  • localization/de/composite/etc/composite.urm.png (0 hunks)
  • localization/de/context-object/etc/context-object.png (0 hunks)
Actionable Comments (2)
  • localization/de/actor-model/README.md [186-199]

    typo: "Typo in German Actor Model README"

  • localization/de/Abstract Factory [1-1]

    maintainability: "Invalid file name with spaces"

Skipped Comments (2)
  • localization/de/abstract-document/README.md [85-92]

    best_practice: "Narrative text inside code block"

  • localization/de/README.md [37-37]

    readability: "Inconsistent bullet formatting"

Comment on lines +186 to +199
## Verwandte Patterns

- [Command Pattern](../command)
- [Mediator Pattern](../mediator)
- [Event-Driven Architecture](../event-driven-architecture)
- [Observer Pattern](../observer)

---

## Quellen

- *Programming Erlang*, Joe Armstrong
- *Reactive Design Patterns*, Roland Kuhn
- *The Actor Model in 10 Minutes*, [InfoQ Article](https://www.infoq.com/articles/actor-model/)

Choose a reason for hiding this comment

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

Typographical errors were flagged in the German README. Correct the typos to improve readability: 'asychron' should be 'asynchron' (or 'asynchron'), and 'Parellelität' should be 'Parallelität'.

@@ -0,0 +1 @@

Choose a reason for hiding this comment

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

An added file path with a space in the name likely indicates a misplacement. This should probably be a directory (localization/de/abstract-factory/) containing a README.md, rather than a top-level file named 'Abstract Factory'.

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

LGTM!

Review Summary

Commits Considered (1)
  • 0816c93: docs: Translate Prototype into German

#2295

Files Processed (0)
Actionable Comments (0)
Skipped Comments (0)

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

LGTM!

Review Summary

Commits Considered (1)
  • e05a119: Delete localization/de/Abstract Factory
Files Processed (0)
Actionable Comments (0)
Skipped Comments (0)

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

🚨 Pull request needs attention.

Review Summary

Commits Considered (1)
Files Processed (1)
  • localization/de/abstract-document/README.md (4 hunks)
Actionable Comments (1)
  • localization/de/abstract-document/README.md [166-170]

    possible bug: "Potential issue with log formatting of car parts."

Skipped Comments (4)
  • localization/de/abstract-document/README.md [129-138]

    readability: "Add Car skeleton for README example."

  • localization/de/abstract-document/README.md [139-173]

    best_practice: "Narrative text inside code blocks should be moved out."

  • localization/de/abstract-document/README.md [3-3]

    consistency: "Inconsistent front matter category language."

  • localization/de/abstract-document/README.md [8-8]

    consistency: "German consistency in tags."

Comment on lines 166 to 170
car.getParts().forEach(p -> LOGGER.info("\t{}/{}/{}",
p.getType().orElse(null),
p.getType().orElse(null),
p.getModel().orElse(null),
p.getPrice().orElse(null))
);

Choose a reason for hiding this comment

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

Ensure the log line's placeholders match the provided values. The snippet uses 3 placeholders ({}/{}/{}), and the code passes 3 values (type, model, price). Verify that Part#getType() exists on the Part interface; if not, the snippet will fail to compile. Consider aligning the placeholders with available fields.

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

🚨 Pull request needs attention.

Review Summary

Commits Considered (20)
  • 3779cbc: realignment of java code block
  • 1d14af5: correct typos in actor-model
  • 95b7014: insert line break
  • e05a119: Delete localization/de/Abstract Factory
  • 0816c93: docs: Translate Prototype into German

#2295

  • 12fd4e0: docs: Translate Singleton into German

#2295

  • 8bdd431: correct typo
  • cb66b41: docs: add German translation for Acyclic Visitor

#2295

  • 0fdb2f6: docs: translate actor-model into German

#2295

  • 362646e: docs: finish German translation of README.md for Active Object
  • a1c4254: docs: Create German README.md for Active Object

#2275
first text part

  • b1061ff: docs: add missing words in abstract-factory.README.md
    (#2275)
  • 908b93d: docs: add class diagrams for all patterns
    (#2275)
  • b91d1f7: correct typo
  • 624e970: Translate README.md for Abstract Document to German
  • e71866f: Create README.md for Abstract Document
  • 398d4f5: Create folder for Abstract Factory
  • 325b272: docs: reformulate german translation for Abstract Document
    (#2275)
  • ca43940: docs: shorten text for link to payhip
    (#2275)
  • 5f9e2d2: docs: reformulate text, add links to further languages and paragraph about the book in central README.md
    (#2275)
Files Processed (30)
  • localization/de/README.md (2 hunks)
  • localization/de/abstract-document/README.md (4 hunks)
  • localization/de/abstract-factory/README.md (1 hunk)
  • localization/de/abstract-factory/etc/abstract-factory.urm.png (0 hunks)
  • localization/de/active-object/README.md (1 hunk)
  • localization/de/active-object/etc/active-object.urm.png (0 hunks)
  • localization/de/actor-model/README.md (1 hunk)
  • localization/de/acyclic-visitor/README.md (1 hunk)
  • localization/de/adapter/etc/adapter.urm.png (0 hunks)
  • localization/de/aggregator-microservices/aggregator-service/etc/aggregator-service.png (0 hunks)
  • localization/de/ambassador/etc/ambassador.urm.png (0 hunks)
  • localization/de/api-gateway/etc/api-gateway.png (0 hunks)
  • localization/de/async-method-invocation/etc/async-method-invocation.png (0 hunks)
  • localization/de/balking/etc/balking.png (0 hunks)
  • localization/de/bridge/etc/bridge.urm.png (0 hunks)
  • localization/de/builder/etc/builder.urm.png (0 hunks)
  • localization/de/business-delegate/etc/business-delegate.urm.png (0 hunks)
  • localization/de/bytecode/etc/bytecode.urm.png (0 hunks)
  • localization/de/chain-of-responsibility/etc/chain-of-responsibility.urm.png (0 hunks)
  • localization/de/client-session/etc/session_state_pattern.png (0 hunks)
  • localization/de/collecting-parameter/etc/collecting-parameter.urm.png (0 hunks)
  • localization/de/command/etc/command.png (0 hunks)
  • localization/de/commander/etc/commander.urm.png (0 hunks)
  • localization/de/composite-entity/etc/composite_entity.urm.png (0 hunks)
  • localization/de/composite-view/etc/composite_view.png (0 hunks)
  • localization/de/composite-view/etc/images/noparam.png (0 hunks)
  • localization/de/composite-view/etc/images/threeparams.png (0 hunks)
  • localization/de/composite/etc/composite.urm.png (0 hunks)
  • localization/de/context-object/etc/context-object.png (0 hunks)
  • localization/de/converter/etc/converter.png (0 hunks)
Actionable Comments (2)
  • localization/de/README.md [3-3]

    typo: "Typo: license badge capitalization"

  • localization/de/README.md [29-29]

    typo: "Typographical error in introduction"

Skipped Comments (2)
  • localization/de/README.md [14-14]

    readability: "Language code mismatch for Nepali link"

  • localization/de/abstract-document/README.md [92-92]

    readability: "Narrative text inside code block"

# In Java implementierte Entwurfsmuster
# Design Patterns (Entwurfsmuster) in Java

![Java CI](https://github.com/iluwatar/java-design-patterns/workflows/Java%20CI/badge.svg)

Choose a reason for hiding this comment

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

Capitalize the license badge word in German: 'lizenz' should be 'Lizenz' for proper German capitalization.

Copy link
Author

Choose a reason for hiding this comment

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

there is neither 'lizenz' nor 'Lizenz' in the cited line.

Diese Seite präsentiert Entwurfsmuster für Java. Die Lösungen wurden von erfahrenen Programmierern und Architekten aus der Open-Source-Community entwickelt. Die Muster können entweder anhand ihrer Beschreibungen oder durch den Quellcode erkundet werden. Die Codebeispiele sind gut kommentiert und eignen sich als Tutorials, wie das jeweilige Muster zu implementieren ist. Wir verwenden dabei bekannte und bewährte Open-Source-Java-Technologien.

Bevor Sie sich mit den Entwurfsmustern beschäftigen, sollten Sie sich mit den grundlegenden [Software-Entwurfsprinzipien](https://java-design-patterns.com/principles/) vertraut machen.
Ehe Sie tiefer in den Stoff eindringen, sollten Sie sich mit den grundlegenden [Software-Entwurfsprinzipien](https://java-design-patterns.com/principles/) vertraut machen.

Choose a reason for hiding this comment

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

Typo: 'Ehe' should be 'Bevor' or 'Bevor Sie' for correct German phrasing.

Copy link
Author

Choose a reason for hiding this comment

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

'Ehe' means the same as 'Bevor'.

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

🚨 Pull request needs attention.

Review Summary

Commits Considered (1)
  • 4051005: docs: translate Adapter Pattern into German

#2295

Files Processed (30)
  • localization/de/README.md (2 hunks)
  • localization/de/abstract-document/README.md (4 hunks)
  • localization/de/abstract-factory/README.md (1 hunk)
  • localization/de/abstract-factory/etc/abstract-factory.urm.png (0 hunks)
  • localization/de/active-object/README.md (1 hunk)
  • localization/de/active-object/etc/active-object.urm.png (0 hunks)
  • localization/de/actor-model/README.md (1 hunk)
  • localization/de/acyclic-visitor/README.md (1 hunk)
  • localization/de/adapter/README.md (1 hunk)
  • localization/de/adapter/etc/adapter.urm.png (0 hunks)
  • localization/de/aggregator-microservices/aggregator-service/etc/aggregator-service.png (0 hunks)
  • localization/de/ambassador/etc/ambassador.urm.png (0 hunks)
  • localization/de/api-gateway/etc/api-gateway.png (0 hunks)
  • localization/de/async-method-invocation/etc/async-method-invocation.png (0 hunks)
  • localization/de/balking/etc/balking.png (0 hunks)
  • localization/de/bridge/etc/bridge.urm.png (0 hunks)
  • localization/de/builder/etc/builder.urm.png (0 hunks)
  • localization/de/business-delegate/etc/business-delegate.urm.png (0 hunks)
  • localization/de/bytecode/etc/bytecode.urm.png (0 hunks)
  • localization/de/chain-of-responsibility/etc/chain-of-responsibility.urm.png (0 hunks)
  • localization/de/client-session/etc/session_state_pattern.png (0 hunks)
  • localization/de/collecting-parameter/etc/collecting-parameter.urm.png (0 hunks)
  • localization/de/command/etc/command.png (0 hunks)
  • localization/de/commander/etc/commander.urm.png (0 hunks)
  • localization/de/composite-entity/etc/composite_entity.urm.png (0 hunks)
  • localization/de/composite-view/etc/composite_view.png (0 hunks)
  • localization/de/composite-view/etc/images/noparam.png (0 hunks)
  • localization/de/composite-view/etc/images/threeparams.png (0 hunks)
  • localization/de/composite/etc/composite.urm.png (0 hunks)
  • localization/de/context-object/etc/context-object.png (0 hunks)
Actionable Comments (4)
  • localization/de/README.md [1-4]

    typo: "License badge capitalization in German README"

  • localization/de/README.md [29-31]

    typo: "Grammatik: Bevor statt Ehe"

  • localization/de/abstract-document/README.md [88-90]

    maintainability: "Narrative text inside code block in Abstract Document README"

  • localization/de/actor-model/README.md [195-199]

    typo: "Typo in German Actor Model README"

Skipped Comments (1)
  • localization/de/abstract-document/README.md [92-100]

    maintainability: "Move narrative out of code block; ensure code blocks contain code only"

Comment on lines 1 to 4
# Design Patterns (Entwurfsmuster) in Java

![Java CI](https://github.com/iluwatar/java-design-patterns/workflows/Java%20CI/badge.svg)
[![Lizenz MIT](https://img.shields.io/badge/lizenz-MIT-blue.svg)](https://raw.githubusercontent.com/iluwatar/java-design-patterns/master/LICENSE.md)

Choose a reason for hiding this comment

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

German license badge text uses lowercase 'lizenz' in the badge URL. Capitalize to 'Lizenz' to match German capitalization and ensure consistency with the German readme. The alt/text currently shows 'Lizenz MIT' which is fine, but the URL path should reflect capitalization.

Comment on lines +29 to +31
Ehe Sie tiefer in den Stoff eindringen, sollten Sie sich mit den grundlegenden [Software-Entwurfsprinzipien](https://java-design-patterns.com/principles/) vertraut machen.

Entwürfe sollten immer so einfach wie möglich gehalten werden. Beginnen Sie mit den Prinzipien KISS (Keep It Simple, Stupid), YAGNI (You Aren’t Gonna Need It) und "Do The Simplest Thing That Could Possibly Work". Komplexe Muster sollten nur dann verwendet werden, wenn sie wirklich notwendig sind.
Entwürfe sollten immer so einfach wie möglich gehalten werden. Beginnen Sie mit den Prinzipien KISS (Keep It Simple, Stupid), YAGNI (You Aren’t Gonna Need It) und "Do The Simplest Thing That Could Possibly Work". Komplexere Strukturen und Muster sollten erst dann verwendet werden, wenn sie wirklich notwendig sind.

Choose a reason for hiding this comment

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

Ehe Sie tiefer in den Stoff eindringen, sollten Sie sich mit den grundlegenden Software-Entwurfsprinzipien vertraut machen.

Entwürfe sollten immer so einfach wie möglich gehalten werden. Beginnen Sie mit den Prinzipien KISS (Keep It Simple, Stupid), YAGNI (You Aren’t Gonna Need It) und "Do The Simplest Thing That Could Possibly Work". Komplexere Strukturen und Muster sollten erst dann verwendet werden, wenn sie wirklich notwendig sind.

Comment on lines +88 to 90
// Weitere Eigenschaften und Methoden...
}
```

Choose a reason for hiding this comment

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

// Weitere Eigenschaften und Methoden...
}



<!-- presubmit.ai: comment -->

Comment on lines +195 to +199
## Quellen

- *Programming Erlang*, Joe Armstrong
- *Reactive Design Patterns*, Roland Kuhn
- *The Actor Model in 10 Minutes*, [InfoQ Article](https://www.infoq.com/articles/actor-model/)

Choose a reason for hiding this comment

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

Typo: 'asychron' should be 'asynchron' (or 'asynchron'), and 'Parellelität' should be 'Parallelität'.

change 'lizenz' to 'Lizenz' in badge
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

🚨 Pull request needs attention.

Review Summary

Commits Considered (1)

change 'lizenz' to 'Lizenz' in badge

Files Processed (1)
  • localization/de/README.md (2 hunks)
Actionable Comments (1)
  • localization/de/README.md [27-27]

    typo: "Typo/phrasing: replace 'Ehe' with 'Bevor'"

Skipped Comments (2)
  • localization/de/README.md [49-49]

    readability: "German grammar: mixed languages and capitalization"

  • localization/de/README.md [54-54]

    readability: "German phrasing for license terms"

# Erste Schritte

Diese Seite stellt Java-Entwurfsmuster vor. Die Lösungen wurden von erfahrenen Entwicklern und Architekten aus der Open-Source-Community erstellt. Die Muster können entweder durch ihre Beschreibungen oder durch den Quellcode erkundet werden. Die Codebeispiele sind gut kommentiert und eignen sich als Tutorials, um die Muster zu verstehen und umzusetzen. Wir verwenden dabei bekannte und bewährte Open-Source-Java-Technologien.
Diese Seite präsentiert Entwurfsmuster für Java. Die Lösungen wurden von erfahrenen Programmierern und Architekten aus der Open-Source-Community entwickelt. Die Muster können entweder anhand ihrer Beschreibungen oder durch den Quellcode erkundet werden. Die Codebeispiele sind gut kommentiert und eignen sich als Tutorials, wie das jeweilige Muster zu implementieren ist. Wir verwenden dabei bekannte und bewährte Open-Source-Java-Technologien.

Choose a reason for hiding this comment

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

German phrasing: 'Ehe' is incorrect here. Use 'Bevor' (Bevor Sie ...) for proper meaning and sentence structure.

translate 'benefits' and 'trade-offs'
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

🚨 Pull request needs attention.

Review Summary

Commits Considered (1)

translate 'benefits' and 'trade-offs'

Files Processed (1)
  • localization/de/actor-model/README.md (1 hunk)
Actionable Comments (2)
  • localization/de/actor-model/README.md [108-108]

    typo: "Typo in code comment: possessive pronoun"

  • localization/de/actor-model/README.md [109-109]

    typo: "Typo in code comment: possessive pronoun"

Skipped Comments (1)
  • localization/de/actor-model/README.md [55-55]

    readability: "Broken image path in UML diagram"

public class ActorSystem {
public void startActor(Actor actor) {
String actorId = "actor-" + idCounter.incrementAndGet(); // Generate a new and unique ID
actor.setActorId(actorId); // assign the actor it's ID

Choose a reason for hiding this comment

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

Typo in possessive pronoun in code comment. 'it's' should be 'its'.

public void startActor(Actor actor) {
String actorId = "actor-" + idCounter.incrementAndGet(); // Generate a new and unique ID
actor.setActorId(actorId); // assign the actor it's ID
actorRegister.put(actorId, actor); // Register and save the actor with it's ID

Choose a reason for hiding this comment

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

Typo in possessive pronoun in code comment. 'it's' should be 'its'.

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

🚨 Pull request needs attention.

Review Summary

Commits Considered (1)
  • d531c43: remove additional bullet point after line break
Files Processed (1)
  • localization/de/actor-model/README.md (1 hunk)
Actionable Comments (3)
  • localization/de/actor-model/README.md [107-107]

    possible bug: "Thread-safety: actor ID generation"

  • localization/de/actor-model/README.md [109-109]

    typo: "Typo: incorrect possessive in code comment"

  • localization/de/actor-model/README.md [112-114]

    possible bug: "Potential concurrency issue with actor lookup"

Skipped Comments (2)
  • localization/de/actor-model/README.md [118-118]

    enhancement: "Graceful shutdown recommendation"

  • localization/de/actor-model/README.md [66-66]

    best_practice: "Immutability of actorId"

```java
public class ActorSystem {
public void startActor(Actor actor) {
String actorId = "actor-" + idCounter.incrementAndGet(); // Generate a new and unique ID

Choose a reason for hiding this comment

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

Potential race condition: id generation relies on idCounter; ensure idCounter is thread-safe (e.g., AtomicLong) and properly initialized before use.

public void startActor(Actor actor) {
String actorId = "actor-" + idCounter.incrementAndGet(); // Generate a new and unique ID
actor.setActorId(actorId); // assign the actor it's ID
actorRegister.put(actorId, actor); // Register and save the actor with it's ID

Choose a reason for hiding this comment

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

Typo: possessive pronoun should be 'its' not 'it's' in the comment.

Comment on lines +112 to +114
public Actor getActorById(String actorId) {
return actorRegister.get(actorId); // Find by Id
}

Choose a reason for hiding this comment

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

getActorById delegates to actorRegister.get(actorId) without synchronization; if this map is accessed concurrently, consider using a ConcurrentHashMap or synchronization to avoid data races.

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

🚨 Pull request needs attention.

Review Summary

Commits Considered (1)
Files Processed (1)
  • localization/de/actor-model/README.md (1 hunk)
Actionable Comments (2)
  • localization/de/actor-model/README.md [109-112]

    typo: "Fix possessive typo in ID handling comments"

  • localization/de/actor-model/README.md [114-116]

    possible bug: "Concurrency: protect actorRegister access"

Skipped Comments (2)
  • localization/de/actor-model/README.md [82-84]

    possible bug: "Implement a working Actor.run loop"

  • localization/de/actor-model/README.md [95-97]

    maintainability: "Remove unused setter on immutable Message fields"

Comment on lines +109 to +112
String actorId = "actor-" + idCounter.incrementAndGet(); // Generate a new and unique ID
actor.setActorId(actorId); // assign the actor it's ID
actorRegister.put(actorId, actor); // Register and save the actor with it's ID
executor.submit(actor); // Run the actor in a thread

Choose a reason for hiding this comment

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

Typo in the comments: 'it's' should be 'its' in the actor ID related lines. Fix for both occurrences.

Comment on lines +114 to +116
public Actor getActorById(String actorId) {
return actorRegister.get(actorId); // Find by Id
}

Choose a reason for hiding this comment

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

getActorById accesses actorRegister without synchronization. If actorRegister is a shared map accessed from multiple threads, consider using a concurrent map or synchronizing access to avoid data races.

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

LGTM!

Review Summary

Commits Considered (1)
  • 68c71d3: docs: translate Dependency Injection into German

#2295

Files Processed (0)
Actionable Comments (0)
Skipped Comments (0)

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

🚨 Pull request needs attention.

Review Summary

Commits Considered (1)
  • 50f45d7: docs: translate Bridge into German

#2295

Files Processed (1)
  • localization/de/bridge/README.md (1 hunk)
Actionable Comments (2)
  • localization/de/bridge/README.md [45-45]

    typo: "Typo: Bridge pattern name"

  • localization/de/bridge/README.md [235-238]

    typo: "German typos in technical terms"

Skipped Comments (2)
  • localization/de/bridge/README.md [56-57]

    readability: "Language consistency"

  • localization/de/bridge/README.md [50-50]

    maintainability: "Diagram asset path"


Wikipedia sagt

> Das Bride-Pattern ist ein Entwurfsmuster der Softwareentwicklung mit dem Zweck,

Choose a reason for hiding this comment

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

Typo: The Bridge pattern is referred to as 'Bride-Pattern'. This should be 'Bridge-Pattern' for consistency with the naming used elsewhere in the repo.

Comment on lines +235 to +238
* Sie wollen eine Implementation mit mehreren Objekten teilen, eventuell unter Verwendung von
Referenzzählerm, dabei aber dieses Detail aber vor den Verwendern verstecken. Beispiel dafür
ist Copliens String-Klasse, wo mehrere Objekte die gleiche Stringdarstellung haben.

Choose a reason for hiding this comment

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

Typos and inconsistent naming in a German translation: 'Referenzzählerm' should be 'Referenzzählers' and 'Copliens' should be 'Coplien's' (with apostrophe). Also ensure proper punctuation around these clauses.

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

LGTM!

Review Summary

Commits Considered (1)
Files Processed (1)
  • localization/de/bridge/README.md (1 hunk)
Actionable Comments (0)
Skipped Comments (2)
  • localization/de/bridge/README.md [54-57]

    readability: "German translation quality: mixed English sample included"

  • localization/de/bridge/README.md [62-73]

    readability: "Java sample readability and compatibility"

@sonarqubecloud
Copy link

@sieberss sieberss changed the title Improve existing German READMEs and add new ones docs: Improve existing German READMEs and add new ones Mar 16, 2026
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.

1 participant