Sobes.tech
Junior — Middle

Que abordagens alternativas são usadas em vez de interfaces de marcação em linguagens de programação modernas?

sobes.tech IA

Resposta da IA

Em vez de interfaces de marcador em linguagens de programação modernas, muitas vezes usam-se anotações (por exemplo, em Java) ou atributos (em C#). Elas permitem marcar uma classe ou método com informações adicionais sem a necessidade de implementar métodos.

Também se utilizam padrões de projeto, como o uso de classes base especiais ou composição com objetos que carregam a semântica necessária.

Em Java, com o aparecimento de anotações, pode-se escrever, por exemplo:

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface MyMarker {}

@MyMarker
public class MyClass {}

Este método é mais flexível e expressivo do que interfaces de marcador, pois as anotações podem conter parâmetros e serem processadas por reflexão.