Go

Go Design Patterns

Singleton, Factory, Builder, Strategy, Decorator, Adapter, functional options, SOLID

24 Interview-Fragen·
Senior
1

Was ist der Hauptvorteil des Functional Options Pattern in Go?

Antwort

Das Functional Options Pattern ermöglicht das Erstellen konfigurierbarer APIs mit optionalen Parametern, ohne Konstruktoren zu überladen. Es vermeidet mehrere Konstruktoren mit unterschiedlichen Signaturen und bietet eine erweiterbare und lesbare API. Dieses Pattern ist in Go idiomatisch, da es First-Class-Functions nutzt und mehrdeutige Standardwerte vermeidet.

2

Welcher Ansatz wird zur Implementierung des Singleton Pattern in Go empfohlen?

Antwort

In Go wird das Singleton Pattern idealerweise mit sync.Once implementiert, das eine thread-safe und lazy Initialization garantiert. Dieser Ansatz vermeidet manuelle Mutexes und Double-Checked Locking, die fehleranfällig sind. sync.Once stellt sicher, dass eine Funktion nur einmal ausgeführt wird, selbst bei mehreren gleichzeitigen Goroutines.

3

Welches SOLID-Prinzip fördert die Verwendung von Interfaces in Go?

Antwort

Das Dependency-Inversion-Prinzip besagt, dass High-Level-Module nicht von Low-Level-Modulen abhängen sollten, sondern von Abstraktionen (Interfaces). In Go bedeutet dies, Interfaces zu akzeptieren und konkrete Typen zurückzugeben. Dieses Prinzip erleichtert das Testen (Mocking), die Entkopplung und die Wartbarkeit des Codes.

4

Wie implementiert man das Factory Pattern in Go idiomatisch?

5

Was ist die Hauptaufgabe des Adapter Patterns?

+21 Interview-Fragen

Meistere Go für dein nächstes Interview

Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.

Kostenlos starten