I've heard pros and cons for both.
If you evolve first, you get that newly-evolved Pokemon into your Pokedex; and then you can simply catch a stronger CP Pokemon later.
However, you can boost up your Pokemon and then evolve it; both of which would make them stronger. But then you will lose Stardust, and it's best to save up on that.
I feel like it can be a gamble either way... There's always a chance that you'll run into a strong Pokemon in the wild; but still, evolving now versus waiting is a shorter-term solution and then your Pokedex is updated.
I don't think there's really a "right" or "wrong" way - it's up to you! Friends have recommended both options to me; so I just do what I think is best at the time.