Uma classe chamada Classe?

18

Esta é mais uma questão de estilo, mas é algo que atualmente estou pensando em um projeto meu.

Suponha que você esteja criando um aplicativo que está modelando uma escola. Portanto, existem entidades como Aluno, Escola etc. Agora tudo isso é intuitivo até você chegar à classe, pois (na maioria dos idiomas) Classé uma palavra reservada. Portanto, como Classé uma palavra-chave reservada, como você chamaria uma entidade que modela uma turma escolar?

Jason Whitehorn
fonte
19
Classe de escola????
Matthew Flynn
5
Você poderia tentar um sinônimo thesaurus.com/browse/class
Gyan aka Gary Buyn
@MatthewFlynn, isso realmente passou pela minha cabeça. Na verdade, foi o meu primeiro embora ...
Jason Whitehorn
1
Eu reabri a pergunta. As respostas que reiteram outras respostas ou são de uma linha sarcástica serão excluídas, o mesmo para comentários fora do tópico.
precisa
1
É uma pergunta completamente legítima: "O que você faz quando seu termo específico do domínio entra em conflito com um termo na sua linguagem de programação escolhida". Foi apresentado apenas nos termos de um exemplo específico, o que é bom.
Steve Bennett

Respostas:

37

Eu escolheria outro termo porque a palavra Classe pode ser ambígua.

A classe se refere a:

  1. O grupo de estudantes fazendo um curso?
  2. Todo o curso deste semestre?
  3. O curso abstrato ministrado em vários semestres?
  4. O grupo de estudantes espera se formar em um horário específico?
  5. Alguma outra classificação de alunos, ou seja, Classe Avançada, Classe de Necessidades Especiais.
  6. Uma palestra específica

E isso sem sair do campo acadêmico. Provavelmente, você pode encontrar uma palavra melhor para se ajustar ao que você está tentando modelar. Classe só levará a alguma confusão.

Winston Ewert
fonte
Ah, sim ... pontos muito bons. Esse é o tipo de discussão que eu estava procurando. Na verdade, eu quis dizer "Um grupo de estudantes fazendo um curso específico ministrado por um professor específico em um horário específico para um único período escolar (ano, semestre etc.)" ... se isso faz algum sentido. Ou, em outras palavras, "eu estou cursando Biologia II com o Sr. Smith às 14:00, segundas, quartas e sextas-feiras".
Jason Whitehorn
O problema geral de termos de domínio estabelecidos conflitantes com palavras-chave de língua se mantém embora ...
tdammers
Em algumas instituições, isso é chamado de Stream. (Que tem suas próprias questões nome confronto :))
Steve Bennett
21

Você pode chamá-lo de "Curso" ou "Assunto" ou "Palestra" se for uma aula específica. Você também pode usar "Seção" etc.

Winston Ewert realmente destacou as perguntas que você teria que se fazer.

ihtkwot
fonte
+1 para a seção. Este parece ser o que @JasonWhitehorn tinha em mente, baseado em sua resposta a resposta de Winston Ewert
sq33G
2

Encontrar um sinônimo é uma boa ideia, por exemplo, "Curso".

No entanto, a necessidade de reutilizar a palavra classe é comum (geralmente para uma variável local do tipo Classe ), e as substituições convencionais para classe incluem klass , clazz e cls .

Tommy
fonte
"klass" significa que você é alemão (ou holandês), "clazz" é mais como "jazz" e "cls", oh, isso não foi usado para "CLearScreen"?
precisa saber é o seguinte
1

Depende, em algumas línguas classé a palavra reservada, não Class.

Adrian
fonte
4
Eu disse, no entanto, "... dado que Class é uma palavra-chave reservada ...", além disso, você não diria que dois itens que diferem apenas por caso são uma ideia horrível?
Jason Whitehorn
Não significa que você deva usá-lo. Qualquer mais do que você deve usar If, Elseou Gotoem uma língua, onde as versões minúsculas destes são reservados.
Dawood diz restabelecer Monica
5
Esta não é uma resposta.
Jordânia
1
Java já tem um class Class.
dan04
3
@ JasonWhitehorn: dois itens que diferem apenas por maiúsculas e minúsculas não são necessariamente uma má idéia - se todas as suas classes tiverem nomes em maiúsculas enquanto todas as palavras-chave em seu idioma estiverem em minúsculas, é totalmente inequívoco que Classseja definido de forma personalizada class.
usar o seguinte comando
1

Eu concordo com @Winston Ewert que eu escolheria outro termo porque a palavra Classe pode ser ambígua.

Nesse caso, você deve usar um sinônimo melhor, adequado à sua implementação. Se eu modelar esse tipo de arquitetura, irei para o Curso , mas também existem outros sinônimos disponíveis.

Verifique um exemplo de arquitetura de classe que corresponda um pouco ao seu sistema. Ref: Turma do aluno e turma do curso

Como sua pergunta foi marcada com a nomeação , use um substantivo ou uma frase substantiva para nomear uma classe a partir do sinônimo que você usa.

Niranjan Singh
fonte
0

Em algumas linguagens de programação, você pode usar palavras reservadas nos nomes das variáveis ​​(possivelmente até os nomes das classes?). Por exemplo, em C #, você poderia fazer assim mesmo que classseja uma palavra reservada:

string @class = "Super class";

Você pode verificar as especificações da linguagem de programação, isso permite que você faça isso.

Caso contrário, basta seguir a resposta de Winston Ewerth.

Tx3
fonte
0

Além da sintaxe da linguagem de programação, a palavra classe não é um bom nome da perspectiva da modelagem de dados no caso de um sistema de informações da escola. Quando você pensa sobre o que uma classe significa, você descobre que (entre outras coisas):

Uma turma é uma atividade agendada regularmente que tem início e fim e é supervisionada (ensinada) por um educador escolar. Dentro dessa atividade, uma matéria é ensinada ou uma atividade (como esporte) é realizada; portanto, uma matéria é oferecida como zero, uma ou mais classes .

Portanto, a palavra classe é realmente uma "Atividade Educacional Programada". Assim, você pode escolher:

  • ScheduledEducationalActivity

  • ScheduledActivity (nesse caso, você pode ser mais genérico e permitir que a atividade seja educacional ou um evento como uma palestra, um seminário ou um tournment, ... etc.)

  • SubjectOffering

Portanto, a classe de nome é realmente uma convenção ou (um nome comercial), mas não é o melhor nome que descreve a entidade.

NoChance
fonte
-2

Você pode declarar a entidade como ClassRoom!

Ferro59
fonte
2
Esse seria um nome ruim, a menos que a entidade represente a sala física onde a classe será realizada.
Jesper