A dúvida mais comum no estudo do idioma inglês, mas é muito fácil, veja:
A maioria dos meus alunos têm muita dificuldade em assimilar e empregar o uso do Present Perfect que parece um monstro indecifrável.
Comparando ao Simple Past (did), o qual eu preciso de um tempo definido para poder ser usado, o Present Perfect precisa de um tempo indefinido, ou seja, o truque é perguntar quando aconteceu a ação, se obtiver a resposta, você deve usar o Simple Past, mas se não obtiver a resposta, você usa o Present Perfect.
Sabe por quê?
O tempo não é importante para ser mencionado, a ação é mais importante que o tempo. Agora, se o tempo for mais importante, então ele tem que ser dito, nesse caso usamos o Simple Past.
Por exemplo:
I have met Paul and he congratulated me on the project. Nesse meu exemplo, a ação de encontrar Paul é mais importante que quando eu o encontrei, por isso usei o Present Perfect.
Por outro lado, se o momento for mais importante, meu exemplo ficaria assim: I met Paul this morning and he congratulated me on my project.
Espero ter esclarecido, nesse primeiro momento, um dos usos do Present Perfect.
Falarei sobre outros usos em breve.
amei