type TMyType = {}
Ограничений никаких нет. Из C# пришла идея все интерфейсы называть через I, типа IUser, но эта практика устарела и не актуальна, хотя где-то еще используется. Короткие названия типа T часто дают дженерикам, но в больших проектах это считается плохой практикой, лучше давать осознанные читабельные имена.
Ок, спасибо
„устарела и неактуальна“ а откуда такая информация? я сам не использую I, просто интересно, откуда такая информация
открой любой популярный проект на тс и найди там эти префиксы
почему любой популярный проект автоматически обозначает, что практика устарела?
ну раз не используется, то значит да
Да хз, куча статей была. Насколько мне не изменяет память, в C# это пошло из старых времен, чтобы быстро отличать интерфейсы от классов по названию. Но современные IDE их уже по разному подсвечивают, поэтому даже в C# не актуально, но практика до сих пор сохранилась. В TS же дотнетчики пытались по привычке также писать, но были посланы нахуй сообществом. Т.к. в официальных спеках разработчики TS юзают интерфейсы без I.
я сам раньше юзал интерфейсы с префиксом I, но потом понял, что смысла в этом нет банально потому, что: 1. по названию интерфейса было понятно, что это интерфейс, а не класс 2. банально, как по мне, выглядело некрасиво
Я согласен :) Но где-то еще юзается I. Например, у нас в проекте есть автогенерируемый код из protobuf файлов, там интерфейсы называются через I, приходится их использовать наравне с обычными.
я так понимаю, оставляете генерацию с префиксом, чтобы отличать интерфейсы протобаффов от обычных?
Просто генерилка так генерит, и никак это не настроить :)
некрасиво, но есть кейс с колизей имен, не то чтобы жить с эти нельзя, но он есть, а с префиксами его гарантировано нет
Обсуждают сегодня