clean-code-typescript icon indicating copy to clipboard operation
clean-code-typescript copied to clipboard

TypeScript Generics

Open dimadeveatii opened this issue 5 years ago • 1 comments

Should we cover generics?

dimadeveatii avatar Feb 06 '19 12:02 dimadeveatii

While T might be acceptable when only one generic is used, things get out of hand when multiple generics are used, and i've see people use T,U,D etc which is completely meaningless IMO.

Even the typescript docs now use description generic names: https://www.typescriptlang.org/docs/handbook/2/generics.html

function identity<Type>(arg: Type): Type {
  return arg;
}

Example of hard-to-read code due to single character generics: https://github.com/DefinitelyTyped/DefinitelyTyped/blob/64d939eb39dc7b80b27da1a63774cfca755670f9/types/styled-components/index.d.ts

Example of easy-to-read code due to descriptive generic names: https://github.com/tannerlinsley/react-query/blob/755702dd78efadb66038fb2535b7c513c128a918/src/react/useQuery.ts

As a consumer of both of these types, it's so much easier to work with descriptive generic names.

badsyntax avatar Jan 13 '22 08:01 badsyntax