Executando verificação de segurança...
2

Projeto de Conclusão de Curso

E aí, pessoal, tudo bem? Tenho estado meio pensativo ultimamente sobre o meu projeto de conclusão de curso. Apesar de ainda não ser hora de entregá-lo, quero me planejar desde já para evitar surpresas ruins lá na frente. Tenho várias ideias em mente, mas uma delas não sai da minha cabeça: criar um jogo com um mapa local onde você tem que encontrar algumas peças. Cada peça ou item encontrada dá pontos, e quem acumular mais pontos vence o jogo. Só que agora estou na dúvida sobre qual linguagem usar para criar esse jogo. Seria ótimo ouvir a opinião de vocês, já que isso pode ajudar muito no desenvolvimento do projeto. O que vocês acham?

Carregando publicação patrocinada...
3

Crystyanno, que bom saber que já está pensando em seu TCC antecipadamente, pois o tempo voa. Tenha certeza de que se for possível definir o seu tema com tanta antecedência assim, com anuência do curso, vai conseguir tirar o máximo proveito de suas disciplinas. Você buscará, de maneira ativa, respostas para seus desafios durante o aprendizado nas aulas, não sendo apenas um ser passivo, ouvinte. Por exemplo, um caso hipotético se fosse lidar diretamente com as rotinas gráficas em vez de usar uma biblioteca, veria muito da teoria de Geometria Analítica e Vetores, Álgebra Linear, Cálculo Diferencial aplicada na prática com o bônus de ver os vários aspectos da linguagem de programação explorados na implementação das rotinas.

Parabéns pela iniciativa e sucesso em sua jornada.


TL;DR

Se ainda está curioso sobre o que é um Trabalho de Conclusão de Curso, suas etapas, procurando entender sua filosofia para então saber se sua idéia pode se tornar um, a Univesp publica em seu portal alguns deles https://apps.univesp.br/tcc-pi/pi. Vez ou outra uma das pesquisas aparece no canal da Univesp em que os alunos apresentam o que desenvolveram como solução para um empreedimento real. Se sua universidade também fornece acesso aos textos dos TCC publicados, consulte-os para se familiarizar com as norma de publicação da instituição onde estuda.

Gostei das dicas do 0erik0. Complemento que, quanto à linguagem de programação mais adequada, eu acredito que vai ser aquela que você notar ser mais eficiente para implementar sua ideia. Vai ter um pequeno desafio para aprendê-la. Eis alguns exemplos que eu já seguia:

  • algo que me surpreendeu! Ver o Filipe Deschamps aplicar vários conceitos (vários mesmo!) de programação quando desenvolveu com a turma o Jogo da Cobrinha. Vale muito a pena conferir essa Playlist que ele caprichou. Fiquei mais surpreso ao ver que era multiplayer, funcional e online, usando praticamente Javascript no front e backend!
  • esse carinha aqui javidx9 desenvolve em C++ o projeto de uma gameEngine. Vejo que é bem mais desafiador, pois está construindo uma infraestrutura base não somente para jogos, mas para outras aplicações gráficas.
  • ...
2

Para tomar decisões sobre qual engine ou linguagem utilizar em meus projetos pessoais, costumo analisar alguns pontos.

Qual meu objetivo?
Primeiro analiso qual o meu objetivo por tras do projeto, quero aprender uma nova tecnologia, como um padrao de projeto, quero resolver uma tarefa que acaba tomando meu tempo como fazer um relatorio ou simplismente quero dar vida a algo que sonhei ou pensei.

Quais são os requisitos do projeto?
Devo determinar se o projeto será em 2D ou 3D e se será desenvolvido para PC, mobile ou ambos.

Quais linguagens são mais familiares para mim?
Por exemplo, se tenho mais experiência com JavaScript do que com C#, é natural buscar uma maneira de implementar o projeto utilizando uma linguagem que já domino.

Existem opções superiores?
Às vezes, a melhor escolha pode ser uma opção desconhecida. Por exemplo, se desejo criar um jogo com gráficos de alta qualidade, consideraria usar o Unreal Engine. No entanto, se o requisito não é tão exigente, como no caso de um jogo 2D com necessidades mais simples, o RPG Maker pode ser mais adequado devido à sua facilidade de uso.

Há restrições de prazo?
Um desafio comum em projetos pessoais é a tendência de buscar qualidade infinita, o que pode resultar em projetos intermináveis.
Para evitar isso, estabeleço prazos concretos. Por exemplo, decido que tenho 6 meses para desenvolver um player de vídeo para Android, Tento cumprir este prazo.

Em resumo, o primeiro passo é definir o escopo do projeto e os requisitos de entrega. Em seguida, avalio minhas habilidades, conhecimento e recursos disponíveis.

Com essas informações em mãos, posso analisar os prós e contras de cada opção. Escrever esses pontos em um papel facilita a tomada de decisão, já que a escolha ideal pode variar de pessoa para pessoa.

Então meu conselho e estude a fundo oque você quer fazer e busque algo que atenda os seus requisitos, a melhor linguagem a usar e aquela que resolve seu problema na minha opniao.

1

meus 0.02 centavos...vc já criou jogos? tem idéia como vai construir?

agora é a hora de entregar o TCC e pegar o diploma vc já deve ter problemas o suficiente para querer aprender mais uma tecnologia a esta altura do campeonato.

1

não amigo a entrega do TCC e somente em 2027 já estou antencipando os problemas já na questão de criação nunca criei jogos quero faze este desafio e ver como vou me sair dessa jornada por isso compartilhei aqui a minha ideia para ler a opnião de cada um de vocês.

1

Como alguém que também está cursando a faculdade, eu acho que esse game seria mais interessante como um projeto paralelo para te auxiliar nos estudos, conforme a gente vai aprendendo coisas novas as idéias vão mudando e alguns perdendo o sentido.

Quando comecei a faculdade minhas idéias de projetos de conclusão de curso giravam em torno de projetos focados em front end, agora a cada semana que passa, minhas idéias e ambições se inclinam para back end e segurança.

Como citou em outro comentário que sua conclusão é só em 2027, eu acredito que irá mudar de idéia sobre o projeto.

Mas eu acho esse seu jogo muito legal para ir fazendo em paralelo, consigo pensar em vários conceitos que aprendi na aulas sendo aplicadas nas mecânicas do seu jogo.