I believe it depends on the technology you are using. In France, I was always taught to put two spaces after a period. However, in the last 5-7 years, depending on which technology you use, it seems the common usage now is that the program adds an extra space before the period and only one after. Similarly, in front of an exclamation point, colon, semi-colon, etc. it seems technology puts two spaces before the punctuation. I have never seen half-spaces, non breaking space, etc.
Hope this helps,
Colette