Você ter uma classe (ou conceito) de turma nao é espelhar o banco de dados, mas sim o dominio do negócio da aplicação.
Quando puder dá uma olhada em Domain Driven Design e linguagem ubiqua.
Pode te ajudar a tomar decisões de arquitetura.
Me incomoda pq essa solucao me parece muito com a forma ao qual seria feita em um banco de dados.
tabela aluno
tabela aula
tabela turma(aula x aluno)
Esse conceito do sistema ser construido semelhante ao banco de dados ta me pegando, digo n por estar errado ou gerar algum erro, ateh pq minhas experiencias com desenvolvimento visam o banco de dados como o alicerce e o sistema ser construido a partir da da base, tendo classes espelhadas com as tabelas do banco.
Mas recentemente li q essa abordagem de cosntrucao de sistemas nao eh mais tao usual, pq hj podemos ter sistemas com bancos SQL e noSQL sendo assim essa abordagem cai por terra.
Foi aii q comecei com esse projeto, algo simples mas q de alguma forma eu consiga entender esse novo conceito(novo pra mim na real).
Soh q faz um certo tempo q eu to empacado nisso, aii resolvi postar aqui.
Tranquilo.
Desculpe, acabei alterando minha resposta e a sua pareceu fora de contexto, mas entendi o que você disse.
Dependendo da aplicação modelar a aplicação baseado no banco de dados não é uma boa solução. Você criar classes artificiais (que não seguem o dominio) apenas para relacionar dados trás uma complexidade desnecessária.
Mas existem classes e classes.
Na dúvida revisita o domínio e verifica se ele já nao possui algo para identificar essa relação.
Saquei, cara, muito obrigado msm, ja me abriu um caminho pra onde eu devo estudar.
Hummmmm
Entendi, massa, vou dar uma olhada sim, pq agora q vc comentou sobre o dominio, pode ser q eu esteja confuso com o conceito de fato.
Nao qrendo abusar massss, tem algum material que vc indicaria ou algum livro q trate bem dos assuntos ?
Dá uma lida nesse artigo bem introdutório para te ajudar a entender os conceitos
https://www.locaweb.com.br/blog/temas/codigo-aberto/ddd-entenda-o-domain-driven-design/
Procura pelo Livro "Domain Driven Design - atacando a complexidade no coração do software". É a melhor fonte sobre o assunto, mas é bem..."denso" de informação o que torna a leitura um pouco cansativa, mas vale a pena.
Fiz uma pesquisa rapida e achei esse cara aqui https://dddinpython.com/ que oode ser útil baseado no seu exemplo.