É que essa estratégia mostrada no curso é unidirecional, ou seja, definir o mapeamento apenas de um lado. E acaba sendo um para muitos pois uma compra terá 1 produto, mas um produto poderá estar em várias compras.
A que eu mandei é uma estratégia bidirecional, ou seja, eu defino o mapeamento em ambas as pontas.
Ambas as formas são válidas, depende muito do contexto. Em geral, a pergunta que se tem que fazer é se esta classe na sua regra de negócio precisará ter acesso as informações da outra. Em geral, haverá uma classe que dependerá mais da outra e aplicamos o relacionamento nela. No exemplo do curso, com certeza uma compra precisa saber qual é o produto que está sendo comprado. Mas um produto não necessariamente estará numa compra, até por isso desta ponta não foi definido o mapeamento dado que diminui a complexidade por não precisar manipular uma lista.