Когда класс должен реализовывать интерфейс?
Работая над проектом и видя, как разработчики делают следующее в машинописи.
export class Ledger implements ILedger {
LedgerID: number;
CashAmmount: number;
Units: number;
public static someFunction {
// an ajax call for example to a controller
}
}
export interface ILedger {
LedgerID: number;
CashAmmount: number;
Units: number;
}
Хотите знать, если это правильный способ делать вещи. Просто кажется бессмысленным, если в классе нет реализации. Затем в наших компонентах React есть ссылки на интерфейс или иногда на класс. Хотите начать создавать некоторые соглашения, но хотели бы получить некоторую помощь в том, как правильно действовать в этой ситуации?
1 ответ
Это кажется бессмысленным, если в классе нет реализации.
Согласен. Нет необходимости в этом случае. Но есть действительные случаи
Зависимость вводить
Примерно так: https://github.com/inversify/InversifyJS
Соответствует внешнему Apis
Кто-то просит IFoo
, Вы хотите использовать класс в своей кодовой базе для IFoo
, Пусть класс расширит его, чтобы вы знали, что класс всегда следует этому внешнему IFoo.