Hejto.pl
Dodaj post

Wpisz coś do wyszukania (minimum 2 znaki)

Wpis użytkownika Magiczny_Magik w Programowanie

Specjalista

w Programowanie

13piorunów

Ciekawostka na dziś: w TypeScript możemy modyfikować sygnaturę klasy za pomocą interfejsów i namespaceów.

Jeżeli chcemy zadeklarować nową metodę na naszej klasie bez jej modyfikacji to możemy zdefiniować interfejs o tej samej nazwie i umieścić w nim sygnaturę metody. TypeScript połączy sygnatury i voila! Metody statyczne możemy również dodawać w podobny sposób, ale w tym przypadku należy użyć namespace.

Po co? Teoretycznie pozwala to na użycie wzorca Extension Method obecnego w np. Kotlinie czy C#.

TypeScript Playground

Komentarze (3)

Praktykant3piorunów

@Magiczny_Magik Zaskakuje mnie, że nadal mnie zaskakuje ten język :smiley: dzięki za ciekawostkę.

Specjalista6piorunów

@szczekoscisk Tutaj są wspomniane przypadki, gdy się to przydaje w C#: https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/extension-methods-usage-patterns

Osobistość3piorunów

Nie lepiej rozszerzyć klasę (*przez dziedziczenie)? Jest to popularny "zabieg" i obcy czytający kod szybciej się połapie.