TypeScript: лучшие практики
TypeScript — мощный инструмент, но только при правильном использовании.
1. Строгая типизация
Избегайте any. Используйте unknown для неизвестных типов:
1// ❌ Плохо 2function processData(data: any) { 3 return data.value; 4} 5 6// ✅ Хорошо 7function processData(data: unknown) { 8 if (typeof data === 'object' && data !== null && 'value' in data) { 9 return (data as { value: string }).value; 10 } 11 throw new Error('Invalid data'); 12}
2. Утилиты типов
Используйте встроенные утилиты:
1type User = { 2 id: string; 3 name: string; 4 email: string; 5 age?: number; 6}; 7 8// Pick - выбрать поля 9type UserPreview = Pick<User, 'id' | 'name'>; 10 11// Omit - исключить поля 12type UserWithoutEmail = Omit<User, 'email'>; 13 14// Partial - все поля опциональны 15type PartialUser = Partial<User>;
3. Явные return types
Всегда указывайте возвращаемый тип:
1// ✅ Хорошо 2function getUser(id: string): Promise<User> { 3 return fetchUser(id); 4}
Выводы
TypeScript помогает писать более надежный код, но требует дисциплины. Следуйте этим практикам, и код станет чище и безопаснее.
