Junior — Middle
Pode explicar o que se entende por introspeção em programação?
sobes.tech IA
Resposta da IA
A introspecção na programação é a capacidade de um programa de explorar sua própria estrutura durante a execução. Em Python, isso significa a capacidade de obter informações sobre os tipos de objetos, seus atributos, métodos e outras características de forma dinâmica.
Por exemplo, usando funções como type(), dir(), getattr(), é possível descobrir quais métodos estão disponíveis em um objeto ou chamá-los dinamicamente.
Exemplo de introspecção:
class MyClass:
def method(self):
pass
obj = MyClass()
print(type(obj)) # <class '__main__.MyClass'>
print(dir(obj)) # lista de atributos e métodos
print(hasattr(obj, 'method')) # True
method = getattr(obj, 'method')
method() # chamada dinâmica do método
A introspecção é útil para escrever código flexível e dinâmico, por exemplo, em frameworks, testes ou ao serializar objetos.