In your example, yes the two strands do code for different proteins. However, biologically this generally doesn't occur. I say generally because I don't want to rule it out definitively but I don't know of an instance where both strands at a given locus code for a protein and, where it does occur, it is often used as a criterion for annotating one of the elements as dubious. Along with that, there would be no promoter immediately 5' to one of the strands. Even if it does occur biologically, each strand would code for a different protein and would be a different gene.
In any gene, one of the strands is identical to the RNA transcript (before processing and with T instead of U). This is called the coding or sense strand and runs 5' -> 3'. The other strand is used as a template by RNA polymerase (RNAP) to polymerize the RNA transcript. It runs 3' -> 5' and is called the template or antisense strand.
Also, a note on promoters: promoter consensus sequences by convention are given on the sense strand. However, as far as I know, transcription initiation factors recognize the base pairing between both strands in the major groove of dsDNA because they must bind before promoter melting occurs. Thus, I wouldn't say that a promoter exists only on the template strand.