Though I do prefer an invisible zipper, sometimes it just isn’t practical. So I usually end up centering an all purpose zip. This is when you sew the seam before installing the zip, and then top stitch on the right side of the fabric, on either side of the seamline, avoiding the zipper teeth.
The problem is you quite often end up with a bubble around the zipper pull as it hits the zipper foot. I’ve seen a lot of suggestions for getting around this by opening the zipper and sewing each side seperately, then zipping it up and finishing blah blah blah. But honestly I find that to be really fidley.
I prefer to do it this way:
NOTE: the top of the garment or the folded over edge of the zipper becomes the zipper stop.
UPDATE: A lot of people have been asking me what to do with the excess zipper at the top. For a skirt this is easy, you can just leave the ends sticking up and encase them in the waistband. For a dress, you can fold it to the sides as I have done in the picture. Or you could install the zipper before the lining, leave the ends sticking straight up and then when you sewed the lining to the dress, and turned it to the inside of the dress, the excess would be enclosed in the lining.
I love doing centered zippers this way, and they always turn out really well.