<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Code-Architektur Archive - MetinCelik.de</title>
	<atom:link href="https://www.metincelik.de/tag/code-architektur/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.metincelik.de/tag/code-architektur/</link>
	<description>Tipps, Tutorials, Blog, Webentwicklung, Design, SciFi</description>
	<lastBuildDate>Sun, 15 Mar 2026 05:01:32 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>AI für Code-Architektur &#038; Design Patterns</title>
		<link>https://www.metincelik.de/kuenstliche-intelligenz/ai-fuer-design-patterns/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ai-fuer-design-patterns</link>
		
		<dc:creator><![CDATA[MetinC]]></dc:creator>
		<pubDate>Sun, 15 Mar 2026 08:09:00 +0000</pubDate>
				<category><![CDATA[Künstliche Intelligenz]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[AI Tools]]></category>
		<category><![CDATA[Code-Architektur]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Heimwerken]]></category>
		<category><![CDATA[KI]]></category>
		<category><![CDATA[Patterns]]></category>
		<category><![CDATA[Werkzeug]]></category>
		<guid isPermaLink="false">https://www.metincelik.de/allgemein/ai-fuer-design-patterns/</guid>

					<description><![CDATA[<p>AI für Code-Architektur &#38; Design Patterns: SOLID, Clean Architecture und Patterns mit ChatGPT &#38; Claude. 10 Prompts für bessere Software-Architektur. Einleitung Gute Architektur entscheidet über die Wartbarkeit deines Projekts. AI kennt alle Patterns und kann sie auf deinen konkreten Use Case anwenden. Hier sind 10 Prompts für Code-Architektur und Design Patterns. Inhaltsverzeichnis Prompt 1: SOLID [&#8230;]</p>
<p>Der Beitrag <a href="https://www.metincelik.de/kuenstliche-intelligenz/ai-fuer-design-patterns/">AI für Code-Architektur &amp; Design Patterns</a> erschien zuerst auf <a href="https://www.metincelik.de">MetinCelik.de</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="meta-description">AI für Code-Architektur &amp; Design Patterns: SOLID, Clean Architecture und Patterns mit ChatGPT &amp; Claude. 10 Prompts für bessere Software-Architektur.</p>



<h2 class="wp-block-heading">Einleitung</h2>



<p>Gute Architektur entscheidet über die Wartbarkeit deines Projekts. AI kennt alle Patterns und kann sie auf deinen konkreten Use Case anwenden. Hier sind <strong>10 Prompts</strong> für Code-Architektur und Design Patterns.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">Inhaltsverzeichnis</h2>



<ol class="wp-block-list"><li><a href="#dp-solid">Prompt 1: SOLID Prinzipien</a></li><li><a href="#dp-clean">Prompt 2: Clean Architecture</a></li><li><a href="#dp-creational">Prompt 3: Creational Patterns</a></li><li><a href="#dp-structural">Prompt 4: Structural Patterns</a></li><li><a href="#dp-behavioral">Prompt 5: Behavioral Patterns</a></li><li><a href="#dp-frontend">Prompt 6: Frontend Patterns</a></li><li><a href="#dp-backend">Prompt 7: Backend Patterns</a></li><li><a href="#dp-ddd">Prompt 8: Domain-Driven Design</a></li><li><a href="#dp-refactor">Prompt 9: Pattern-basiertes Refactoring</a></li><li><a href="#dp-antipattern">Prompt 10: Anti-Patterns erkennen</a></li><li><a href="#faq-dp">FAQ</a></li></ol>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading" id="dp-solid">Prompt 1: SOLID Prinzipien</h2>



<pre class="wp-block-code"><code>Erkläre und wende SOLID Prinzipien auf meinen Code an:

Code:
```
[CODE HIER EINFÜGEN]
```

Analysiere für jedes Prinzip:
1. **S – Single Responsibility**: Hat die Klasse/Funktion nur eine Aufgabe?
   → Wo wird SRP verletzt? Wie aufteilen?
2. **O – Open/Closed**: Kann erweitert werden ohne Änderung?
   → Extension Points hinzufügen (Strategy, Plugin)
3. **L – Liskov Substitution**: Können Subtypen den Basistyp ersetzen?
   → Vererbungs-Hierarchie prüfen
4. **I – Interface Segregation**: Sind Interfaces zu groß?
   → Kleine, fokussierte Interfaces statt God-Interface
5. **D – Dependency Inversion**: Hängt High-Level von Low-Level ab?
   → Dependency Injection einführen

Pro Prinzip:
6. Konkretes Beispiel aus meinem Code
7. Vorher/Nachher Refactoring
8. Warum es wichtig ist (konkreter Nutzen)
9. Wann es NICHT anwenden (Over-Engineering)
10. TypeScript-idiomatische Lösung</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading" id="dp-clean">Prompt 2: Clean Architecture</h2>



<pre class="wp-block-code"><code>Implementiere Clean Architecture für mein Projekt:

Projekt: [z.B. "E-Commerce API mit Node.js/TypeScript"]
Aktuell: [z.B. "Alles in Controller, keine Schichten"]

Strukturiere in Schichten:
1. **Entities**: Domain Models (User, Product, Order)
2. **Use Cases**: Business Logic (CreateOrder, ProcessPayment)
3. **Interfaces**: Ports (UserRepository Interface, PaymentGateway)
4. **Adapters**: Implementierungen (PrismaUserRepository, StripePayment)
5. **Framework**: Express Routes, Middleware, DB Config

Implementiere:
6. **Dependency Rule**: Innere Schichten kennen äußere nicht
7. **Dependency Injection**: Constructor Injection
8. **DTOs**: Daten-Transformation zwischen Schichten
9. **Error Handling**: Domain Errors vs. Infrastructure Errors
10. **Ordner-Struktur**: Practical Clean Architecture in TypeScript

Pragmatische Variante:
- Nicht dogmatisch – 100% Clean Architecture ist Over-Engineering
- Für kleine Projekte: Service Layer + Repository reicht
- Clean Architecture vor allem für Business-kritische Domains</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading" id="dp-creational">Prompt 3: Creational Patterns</h2>



<pre class="wp-block-code"><code>Erkläre und implementiere Creational Design Patterns:

Sprache: [TypeScript / JavaScript / Python]
Kontext: [z.B. "Web Application, verschiedene Services erstellen"]

Implementiere mit Praxisbeispielen:
1. **Factory Method**: createNotification('email') → EmailNotification
2. **Abstract Factory**: UI-Komponenten für verschiedene Themes
3. **Builder**: Komplexe Query/Config Objekte schrittweise bauen
4. **Singleton**: Datenbank Connection Pool, Logger
5. **Prototype**: Object.create() für tiefes Klonen

Pro Pattern:
6. Wann verwenden? (Use Case)
7. TypeScript Implementation
8. Moderne Alternative (oft reicht eine Function!)
9. Unit Test für das Pattern
10. Wann NICHT verwenden (Over-Engineering-Warnung)

Modern TypeScript Perspektive:
- Factory Function statt Factory Class
- Module Scope statt Singleton Class
- Plain Objects + Spread statt Prototype
- Builder Pattern bleibt relevant!</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading" id="dp-structural">Prompt 4: Structural Patterns</h2>



<pre class="wp-block-code"><code>Erkläre und implementiere Structural Design Patterns:

Sprache: [TypeScript / JavaScript]
Kontext: [z.B. "Frontend + Backend einer Web App"]

Implementiere:
1. **Adapter**: Legacy API → Neue API Schnittstelle anpassen
2. **Facade**: Komplexes Subsystem hinter einfachem Interface
3. **Proxy**: Logging Proxy, Caching Proxy, Auth Proxy
4. **Decorator**: Funktionalität hinzufügen (Logger, Cache, Retry)
5. **Composite**: Baumstrukturen (Menü, Dateisystem, UI Components)

Pro Pattern:
6. **Real-World Beispiel**: Wo begegnet mir das täglich?
7. **TypeScript Implementation**: Mit Generics und Types
8. **Funktionaler Ansatz**: HOF statt Klassen (Decorator → Wrapper Function)
9. **React-Beispiel**: HOC, Render Props, Custom Hooks als Patterns
10. **Wann nicht**: Einfachheit > Pattern-Perfektion

Alltagsbeispiele:
- Adapter: axios → fetch Migration
- Facade: Stripe Client mit nur 3 Methoden statt 100
- Proxy: React.lazy() ist ein Lazy Loading Proxy
- Decorator: Express Middleware = Decorator Pattern</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading" id="dp-behavioral">Prompt 5: Behavioral Patterns</h2>



<pre class="wp-block-code"><code>Erkläre und implementiere Behavioral Design Patterns:

Sprache: [TypeScript / JavaScript]
Kontext: [z.B. "Event-System, State Management, Workflows"]

Implementiere:
1. **Observer/PubSub**: Event Emitter, React State Updates
2. **Strategy**: Verschiedene Algorithmen austauschbar (Sort, Validate)
3. **Command**: Undo/Redo System, Queue-verarbeitete Aktionen
4. **State Machine**: Order Status, Auth Flow, Wizard Steps
5. **Chain of Responsibility**: Middleware Pipeline (Express, Next.js)

Pro Pattern:
6. **Template Method**: Basis-Workflow mit austauschbaren Schritten
7. **Iterator**: Custom Iteratoren mit Symbol.iterator
8. **Mediator**: Zentraler Event Bus, Chat Room
9. **Real-World**: Wo verwenden populäre Libraries diese Patterns?
10. **TypeScript**: Type-safe State Machines mit Discriminated Unions

Moderne Equivalente:
- Observer → RxJS, EventEmitter, Zustand Subscribe
- Strategy → Functions als Parameter
- State Machine → XState, Zustand
- Command → Redux Actions, Event Sourcing</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading" id="dp-frontend">Prompt 6: Frontend Patterns</h2>



<pre class="wp-block-code"><code>Erkläre Frontend-spezifische Architektur-Patterns:

Framework: [React / Vue / Svelte]
Projekt: [z.B. "Dashboard App mit vielen Features"]

Implementiere:
1. **Component Composition**: Kleine, zusammensetzbare Komponenten
2. **Container/Presentational**: Logic und UI trennen
3. **Custom Hooks**: Wiederverwendbare State-Logik
4. **Render Props**: Flexible Rendering-Delegation
5. **Compound Components**: Select + Option Pattern
6. **State Management**: Local → Context → Global (Zustand/Redux)
7. **Feature-based Structure**: Pro Feature ein Ordner
8. **Barrel Exports**: index.ts für saubere Imports
9. **Error Boundaries**: Fehler pro Feature abfangen
10. **Optimistic Updates**: UI sofort aktualisieren

React-spezifisch:
- Server Components vs. Client Components
- Suspense für Data Fetching
- React.lazy für Code Splitting
- Key Pattern für List Rendering</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading" id="dp-backend">Prompt 7: Backend Patterns</h2>



<pre class="wp-block-code"><code>Erkläre Backend-spezifische Architektur-Patterns:

Stack: [z.B. "Node.js, TypeScript, Prisma"]
Typ: [Monolith / Microservices / Modular Monolith]

Implementiere:
1. **Repository Pattern**: Datenzugriff abstrahieren
2. **Service Layer**: Business Logic zentralisieren
3. **CQRS**: Command/Query Responsibility Segregation
4. **Event Sourcing**: Zustand aus Events ableiten
5. **Unit of Work**: Transaktionen verwalten
6. **Middleware Pipeline**: Request → Middleware → Handler
7. **Saga Pattern**: Verteilte Transaktionen koordinieren
8. **Circuit Breaker**: Externe Services absichern
9. **Retry Pattern**: Fehlerhafte Calls wiederholen
10. **Bulkhead**: Services voneinander isolieren

Pragmatisch:
- Monolith starten, Modular Monolith wenn nötig
- Repository + Service = reicht für 80% der Projekte
- CQRS/Event Sourcing nur bei Business-Anforderung
- Over-Engineering ist das größte Architektur-Problem!</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading" id="dp-ddd">Prompt 8: Domain-Driven Design</h2>



<pre class="wp-block-code"><code>Wende Domain-Driven Design auf mein Projekt an:

Domain: [z.B. "E-Commerce: Bestellungen, Zahlung, Versand"]
Komplexität: [z.B. "Mittel – mehrere Bounded Contexts"]

Implementiere DDD Konzepte:
1. **Ubiquitous Language**: Glossar der Domain-Begriffe
2. **Bounded Contexts**: Kontextgrenzen definieren (Order, Payment, Shipping)
3. **Entities**: Objekte mit Identität (Order, User)
4. **Value Objects**: Wert ohne Identität (Money, Address, Email)
5. **Aggregates**: Konsistenz-Grenzen (Order + OrderItems)
6. **Domain Events**: OrderPlaced, PaymentReceived
7. **Repositories**: Aggregate Root laden/speichern
8. **Domain Services**: Logik die keinem Entity gehört
9. **Application Services**: Use Cases orchestrieren
10. **Context Mapping**: Wie kommunizieren Bounded Contexts?

Pragmatisches DDD:
- Nicht alles ist DDD – CRUD Endpoints brauchen kein DDD
- DDD für komplexe Business-Domains
- Value Objects und Domain Events: Quick Wins!
- Aggregate Design: Die schwierigste Aufgabe</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading" id="dp-refactor">Prompt 9: Pattern-basiertes Refactoring</h2>



<pre class="wp-block-code"><code>Refactore meinen Code mit dem richtigen Design Pattern:

Code:
```
[CODE HIER EINFÜGEN]
```

Problem: [z.B. "Riesiges Switch Statement mit 20 Cases"]

Analysiere:
1. **Code Smell identifizieren**: Welcher Smell liegt vor?
2. **Pattern auswählen**: Welches Pattern löst das Problem?
3. **Schrittweises Refactoring**: Sicherer Übergang
4. **Vorher/Nachher**: Vergleich der Lösung
5. **Tests erhalten**: Bestehende Tests dürfen nicht brechen

Häufige Refactorings:
6. Switch → Strategy Pattern
7. Verschachtelte Ifs → Chain of Responsibility / State Machine
8. God Class → SRP + Facade
9. Callback Hell → Command / Async Pipeline
10. Copy-Paste Code → Template Method / Strategy

Warnung: Nicht jedes Problem braucht ein Pattern!
Manchmal ist eine einfache Funktion die beste Lösung.
Pattern nur wenn es die Wartbarkeit WIRKLICH verbessert.</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading" id="dp-antipattern">Prompt 10: Anti-Patterns erkennen</h2>



<pre class="wp-block-code"><code>Prüfe meinen Code auf Anti-Patterns:

Code:
```
[CODE HIER EINFÜGEN]
```

Prüfe auf:
1. **God Object/God Class**: Eine Klasse die alles macht
2. **Spaghetti Code**: Unkontrollierter Kontrollfluss
3. **Shotgun Surgery**: Eine Änderung → 10 Dateien ändern
4. **Feature Envy**: Klasse nutzt mehr fremde als eigene Daten
5. **Primitive Obsession**: Strings statt Value Objects (Email, Money)
6. **Anemic Domain Model**: Entities ohne Logik + Service-Klasse
7. **Golden Hammer**: Ein Tool/Pattern für alles
8. **Premature Optimization**: Optimierung ohne Messung
9. **Cargo Cult**: Patterns ohne Verständnis kopiert
10. **Not Invented Here**: Alles selbst bauen statt Libraries

Pro Anti-Pattern:
- Erkennung: Wie sehe ich es im Code?
- Problem: Warum ist es schlecht?
- Lösung: Wie refactore ich es weg?
- Beispiel aus meinem Code</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading" id="faq-dp">FAQ</h2>



<h3 class="wp-block-heading">Muss ich alle Design Patterns kennen?</h3>



<p>Nein – die wichtigsten im Alltag: Strategy, Observer, Factory, Builder, Decorator, Adapter, Facade. Die GoF 23 auswendig kennen ist nicht nötig. Verstehe die Prinzipien (SOLID, DRY, KISS) und wende Patterns an wenn sie ein echtes Problem lösen.</p>



<h3 class="wp-block-heading">Wie vermeide ich Over-Engineering?</h3>



<p>Faustregel: Wenn du ein Pattern einführst und du der einzige bist der es versteht → zu komplex. Start simple, refactore wenn nötig. YAGNI (You Ain&#8217;t Gonna Need It). Pattern einführen erst wenn der Pain offensichtlich ist, nicht &#8222;just in case&#8220;.</p>



<h3 class="wp-block-heading">Kann AI mir helfen bessere Architektur zu schreiben?</h3>



<p>AI kennt alle Patterns und kann sie auf deinen Code anwenden. Paste Code und frage &#8222;Welches Pattern passt hier?&#8220;. AI kann SOLID-Verletzungen finden, Refactoring vorschlagen und Clean Architecture implementieren. Am besten: Code zeigen und fragen, nicht nur theoretisch diskutieren.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p><strong>Verwandte Artikel:</strong></p>



<ul class="wp-block-list"><li><a href="/artikel/ai-fuer-clean-code">AI für Clean Code</a></li><li><a href="/artikel/ai-fuer-code-refactoring">AI für Code-Refactoring</a></li><li><a href="/artikel/ai-fuer-typescript">AI für TypeScript</a></li></ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p style="font-style:italic">Zuletzt aktualisiert: März 2026</p>
<p>Der Beitrag <a href="https://www.metincelik.de/kuenstliche-intelligenz/ai-fuer-design-patterns/">AI für Code-Architektur &amp; Design Patterns</a> erschien zuerst auf <a href="https://www.metincelik.de">MetinCelik.de</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
