typescript-dev
Schreiben Sie TypeScript mit Sicherheit
TypeScript-Projekte erfordern sorgfältige Beachtung der Typsicherheit und Codequalität. Diese Fähigkeit bietet Best Practices, Linting-Regeln und Dokumentationsvorlagen, um Entwicklern dabei zu helfen, wartbaren, typsicheren Code zu schreiben.
تنزيل ZIP المهارة
رفع في Claude
اذهب إلى Settings → Capabilities → Skills → Upload skill
فعّل وابدأ الاستخدام
اختبرها
استخدام "typescript-dev". Wie erstelle ich eine typsichere API-Aufruffunktion?
النتيجة المتوقعة:
Hier ist eine typsichere API-Funktion mit dem Result-Muster:
```typescript
type Result<T, E = Error> =
| { success: true; data: T }
| { success: false; error: E };
async function fetchUserData(id: string): Promise<Result<UserData>> {
try {
const response = await fetch(`/api/users/${id}`);
if (!response.ok) {
return { success: false, error: new Error('Failed to fetch') };
}
const data = await response.json();
return { success: true, data };
} catch (error) {
return { success: false, error: error as Error };
}
}
```
استخدام "typescript-dev". Wie sollte ich diese Funktion dokumentieren?
النتيجة المتوقعة:
Hier ist die Funktion mit TSDoc-Dokumentation:
```typescript
/**
* Calculates the total price including tax and discounts.
*
* @param basePrice - The original price before any modifications
* @param taxRate - The tax rate as a decimal (e.g., 0.08 for 8%)
* @param discountPercent - Optional discount percentage (0-100)
* @returns The final calculated price, never negative
*/
function calculateTotal(
basePrice: number,
taxRate: number,
discountPercent: number = 0
): number {
const discounted = basePrice * (1 - discountPercent / 100);
return Math.max(0, discounted * (1 + taxRate));
}
```
التدقيق الأمني
آمنAll static findings evaluated as false positives. The skill is legitimate TypeScript development documentation containing example code patterns and best practices. No actual security risks found.
درجة الجودة
ماذا يمكنك بناءه
Einrichtung eines neuen TypeScript-Projekts
Erhalten Sie Anleitung zur Konfiguration von tsconfig.json mit strict mode, zur Wahl zwischen ES modules und CommonJS und zur Einrichtung von TSDoc-Dokumentation von Anfang an.
Unterstützung bei Code-Reviews
Erhalten Sie checklistenbasiertes Feedback während Code-Reviews, um korrekte Typdefinitionen sicherzustellen, any-Typen zu vermeiden und einheitliche Dokumentationsstandards aufrechtzuerhalten.
TypeScript Best Practices lernen
Lernen Sie Muster für Fehlerbehandlung, asynchrone Operationen, Type Guards und Performance-Optimierung durch dokumentierte Beispiele und Erklärungen von Anti-Patterns.
جرّب هذه الموجهات
Wie sollte ich eine typsichere Funktion definieren, die Fehler in TypeScript korrekt behandelt? Zeigen Sie ein Beispiel mit korrekter Typisierung.
Überprüfen Sie diesen TypeScript-Code und schlagen Sie Verbesserungen der Typdefinitionen vor. Weisen Sie auf alle 'any'-Typen hin und schlagen Sie geeignete Alternativen vor.
Fügen Sie TSDoc-Kommentare zu diesen exportierten Funktionen und Klassen hinzu. Konzentrieren Sie sich auf die Dokumentation von Parametern, Rückgabetypen und Grenzfällen, bei denen die Absicht nicht offensichtlich ist.
Überprüfen Sie diese TypeScript-React-Komponente auf Performance-Probleme. Schlagen Sie vor, wo React.memo, useMemo, useCallback und Lazy Loading für Code Splitting verwendet werden sollten.
أفضل الممارسات
- Aktivieren Sie strict mode in tsconfig.json und vermeiden Sie den any-Typ, um Fehler zur Kompilierzeit statt zur Laufzeit zu erkennen
- Verwenden Sie ES modules (import/export) anstelle von require() für besseres Tree-Shaking und moderne Tooling-Unterstützung
- Dokumentieren Sie öffentliche APIs mit TSDoc-Kommentaren, wobei der Fokus auf Parametern, Rückgabewerten und nicht offensichtlichem Verhalten liegt
تجنب
- Verwendung des 'any'-Typs zum Unterdrücken von TypeScript-Fehlern anstatt Typen korrekt zu definieren
- Verwendung von implizitem any durch Weglassen von Parametertypen in Funktionsdefinitionen
- Übermäßige Verwendung von Type Assertions (as Type) anstelle von korrekter Type Narrowing oder Guard-Funktionen