While teaching students, I have found them struggling with Present Perfect, Past Indefinite and Past perfect. This is because they are not able to differentiate between all three. Though this is a matter of practice which enables you to understand the difference. However, in this article, I will try to explain the difference and uses so that you may not encounter difficulty henceforth.
So here we go. Mostly you get confused when something has happened in the past. Though you describe anyhow using any of the three. But you do not feel confident. So what is the way out? First, try to find out if it has happened in past or present. If it has happened in present then just forget the Past Tense, which includes both past indefinite and past perfect. Obviously, it will be in present and since the work is finished so it will be in Present Perfect Tense.Example, He has come.One important thing about Present Perfect is that we do not use time indicating words or Adverb of Time with it. For instance, Grammatically this sentence is wrong, He has come yesterday. The reason being yesterday is an Adverb of time or time indicating word. We will see next how to express the same thing in a Grammatically correct way. This should also be kept in mind that it used for recent Past.
Now we have Past Indefinite and Past perfect left to discuss. About Past Perfect Tense always be clear that it will be used only if you are sure that if the work was fully finished. The other indicator is that if something had happened long back. Means if it had happened in distant Past. And we can use Adverb of time with Past Perfect Tense.So now it should be easy for you to differentiate between Past Perfect and Present Perfect based on recent and distant past. Past indefinite is used when work doesnt seem to be fully complete. For example, I saw him.And it can be used both in distant and recent past based on context.
Hope it was helpful. For any further query or discussion do comment below.