Apresentação

Dirige equipas de programação de alto nível graças a este Curso de especialização”

##IMAGE##

Embora seja uma indústria que partilha muitas semelhanças com outras do domínio audiovisual e digital, os videojogos têm um grande número de especificidades que lhes conferem um espaço próprio a nível profissional. Isto significa que os diferentes trabalhadores do setor precisam de uma preparação especial para ter sucesso neste contexto, pois há muitos detalhes que não podem ser extrapolados de outras disciplinas próximas.

Por esta razão, é essencial obter uma formação e conhecimentos dedicados aos videojogos em todos os cargos da empresa, mas isto é especialmente importante quando se trata de programação.

A programação é o núcleo principal de um videojogo e dela depende o sucesso do título, uma vez que determina os seus elementos mais básicos e mais complexos, como a jogabilidade, o funcionamento geral, a integração gráfica, entre outras questões.

Por esta razão, este Curso de especialização em Gestão de Programação para Videojogos é a chave para todos os profissionais que desejam participar na indústria e tornar-se programadores valorizados pelas melhores empresas de videojogos do mundo.

Programe videojogos de alta qualidade com este curso”

Este Curso de especialização em Gestão de Programação para Videojogos conta com o conteúdo educacional mais completo e atualizado do mercado. As suas principais características são:

  • Desenvolvimento de estudos de casos apresentados por especialistas em gestão de programação para videojogos
  • Os conteúdos gráficos, esquemáticos e predominantemente práticos com que está concebido fornecem informações científicas e práticas sobre as disciplinas que são essenciais para a prática profissional
  • Os exercícios práticos onde o processo de autoavaliação pode ser efetuado a fim de melhorar a aprendizagem
  • O seu foco especial em metodologias inovadoras
  • As aulas teóricas, perguntas ao especialista, fóruns de discussão sobre questões controversas e atividades de reflexão individual
  • A disponibilidade de acesso aos conteúdos a partir de qualquer dispositivo fixo ou portátil com conexão à Internet

As grandes empresas de videojogos precisam de especialistas em gestão da programação para gerir os seus projetos”

O corpo docente do programa inclui profissionais do setor que trazem a experiência do seu trabalho para esta formação, bem como especialistas reconhecidos das principais sociedades e universidades de prestígio.

Os seus conteúdos multimédia, desenvolvidos com a mais recente tecnologia educativa, permitirão ao profissional uma aprendizagem situada e contextual, ou seja, um ambiente simulado que proporcionará uma formação imersiva programada para treinar em situações reais.

O design deste programa foca-se na Aprendizagem Baseada em Problemas, através da qual o profissional deverá tentar resolver as diferentes situações da atividade profissional que surgem ao longo do curso. Para tal, contará com a ajuda de um sistema inovador de vídeo interativo desenvolvido por especialistas reconhecidos.

Aprenda a gerir a programação de um videojogo de sucesso com este programa educativo”

##IMAGE##

A indústria dos videojogos precisa de grandes especialistas em programação. Pode ser um deles”

Programa de estudos

Este programa foi criado pelos grandes especialistas em desenvolvimento de videojogos, para que os estudantes possam aproveitar os melhores conteúdos nesta área. Isto garante que os conhecimentos adquiridos podem ser diretamente aplicados nas suas carreiras profissionais, permitindo-lhes alcançar o sucesso profissional graças às competências adquiridas neste curso. Entre outras coisas, aprenderão as noções básicas de programação e de engenharia de software, bem como a utilização de motores de videojogos.

##IMAGE##

Programa como os melhores desenvolvedores do mundo graças a este excelente conteúdo”

Módulo 1. Fundamentos de programação

1.1.  Introdução à programação

1.1.1. Estrutura básica de um computador
1.1.2. Software
1.1.3. Linguagens de programação
1.1.4. Ciclo de vida uma aplicação informática

1.2. Desenho de algoritmos

1.2.1. Resolução de problemas
1.2.2. Técnicas descritivas
1.2.3. Elementos e estrutura de um algoritmo

1.3. Elementos de um programa

1.3.1. Origem e caraterísticas da linguagem C++
1.3.2. O ambiente de desenvolvimento
1.3.3. Conceito de programa
1.3.4. Tipos de dados fundamentais
1.3.5. Operadores
1.3.6. Expressões
1.3.7. Sentenças
1.3.8. Entrada e saída de dados

1.4. Sentenças de controlo

1.4.1. Sentenças
1.4.2. Bifurcações
1.4.3. Loops

1.5. Abstração e modularidade: funções

1.5.1. Desenho modular
1.5.2. Conceito de função e utilidade
1.5.3. Definição de uma função
1.5.4. Fluxo de execução na chamada de uma função
1.5.5. Protótipo de uma função
1.5.6. Devolução de resultados
1.5.7. Chamada a uma função: parâmetros
1.5.8. Passagem de parâmetros por referência e por valor
1.5.9. Âmbito identificador

1.6. Estruturas de dados estáticos

1.6.1. Arrays
1.6.2. Matrizes. Poliedros
1.6.3. Pesquisa e ordenação
1.6.4. Cadeias. Funções de E/S para cadeias
1.6.5. Estruturas Uniões
1.6.6. Novos tipos de dados

1.7. Estruturas de dados dinâmicas: ponteiros

1.7.1. Conceito. Definição de ponteiro
1.7.2. Operadores e operações com ponteiros
1.7.3. Arrays de ponteiros
1.7.4. Ponteiros e arrays
1.7.5. Ponteiros a cadeias
1.7.6. Ponteiros a estruturas
1.7.7. Indireção múltipla
1.7.8. Ponteiros a funções
1.7.9. Passagem de funções, estruturas e Arrays como parâmetros de funções

1.8. Ficheiros

1.8.1. Conceitos básicos
1.8.2. Operações com ficheiros
1.8.3. Tipos de ficheiros
1.8.4. Organização dos ficheiros
1.8.5. Introdução aos ficheiros C++
1.8.6. Gestão de ficheiros

1.9. Recursividade

1.9.1. Definição de recursividade
1.9.2. Tipos de recursividade
1.9.3. Vantagens e desvantagens
1.9.4. Considerações
1.9.5. Conversão recursivo-iterativa
1.9.6. A pilha de recursão

1.10. Testes e documentação

1.10.1. Testes de programas
1.10.2. Teste da caixa branca
1.10.3. Prova da caixa negra
1.10.4. Ferramentas para realizar as provas
1.10.5. Documentação de programas

Módulo 2. Engenharia de Software

2.1. Introdução à Engenharia do Software e à modelação

2.1.1. A natureza do software
2.1.2. A natureza única das webapps
2.1.3. Engenharia do Software
2.1.4. O processo do software
2.1.5. A prática da Engenharia do Software
2.1.6. Mitos do Software
2.1.7. Como é que tudo começa?
2.1.8. Conceitos orientados a objetos
2.1.9. Introdução ao UML

2.2. O processo do software

2.2.1. Um modelo geral de processo
2.2.2. Modelo de processo prescritivo
2.2.3. Modelo de processo especializado
2.2.4. O processo unificado
2.2.5. Modelos do processo pessoal e da equipa
2.2.6. O que é a agilidade?
2.2.7. O que é um processo ágil?
2.2.8. Scrum
2.2.9. Conjunto de ferramentas para o processo ágil

2.3. Princípios que orientam a prática da engenharia do software

2.3.1. Princípios que orientam o processo
2.3.2. Princípios que orientam a prática
2.3.3. Princípios de comunicação
2.3.4. Princípios de planificação
2.3.5. Princípios de modelação
2.3.6. Princípios de construção
2.3.7. Princípios de implantação

2.4. Compreensão dos requisitos

2.4.1. Engenharia de requisitos
2.4.2. Estabelecer as bases
2.4.3. Indagação dos requisitos
2.4.4. Desenvolvimento de casos de utilização
2.4.5. Elaboração do modelo dos requisitos
2.4.6. Negociação dos requisitos
2.4.7. Validação de requisitos

2.5. Modelação dos requisitos: cenários, informação e classes análise

2.5.1. Análise dos requisitos
2.5.2. Modelação baseada em cenários
2.5.3. Modelos UML que fornecem o caso de utilização
2.5.4. Conceitos de modelação de dados
2.5.5. Modelação baseada em classes
2.5.6. Diagrama de classes

2.6. Modelação de requisitos: fluxo, comportamento e padrões

2.6.1. Requisitos que modelam as estratégias
2.6.2. Modelação orientada ao fluxo
2.6.3. Diagramas de estado
2.6.4. Criação de um modelo de comportamento
2.6.5. Diagrama de sequência
2.6.6. Diagramas de comunicação
2.6.7. Padrões para modelação de requisitos

2.7. Conceitos de desenho

2.7.1. Desenho no contexto da engenharia do software
2.7.2. O processo de design
2.7.3. Conceitos de desenho
2.7.4. Conceitos de desenho orientado a objetos
2.7.5. O modelo do desenho

2.8. Desenho da arquitetura

2.8.1. Arquitetura do Software
2.8.2. Géneros arquitetónicos
2.8.3. Estilos arquitetónicos
2.8.4. Desenho arquitetónico
2.8.5. Evolução dos designs alternativos para a arquitetura
2.8.6. Mapeamento da arquitetura com a utilização do fluxo de dados

2.9. Desenho no nível de componentes e baseado em padrões

2.9.1. O que é um componente?
2.9.2. Desenho de componentes baseados em classe
2.9.3. Realização do desenho a nível de componentes
2.9.4. Desenho de componentes tradicionais
2.9.5. Desenvolvimento baseado em componentes
2.9.6. Padrões de design
2.9.7. Desenho de software baseado em Padrões
2.9.8. Padrões arquitetónicos
2.9.9. Padrões de desenho a nível de componentes
2.9.10. Padrões de desenho do interface de utilizador

2.10. Qualidade de software e administração de projetos

2.10.1. Qualidade
2.10.2. Qualidade do Software
2.10.3. O dilema da qualidade do software
2.10.4. Conseguir a qualidade do software
2.10.5. Garantia de qualidade de software
2.10.6. O espetro administrativo
2.10.7. O pessoal
2.10.8. O produto
2.10.9. O processo
2.10.10. O projeto
2.10.11. Princípios e práticas

Módulo 3. Motores de videojogos

3.1. Videojogos e TIC

3.1.1. Introdução
3.1.2. Oportunidades
3.1.3. Desafios
3.1.4. Conclusões

3.2. História dos motores de videojogos

3.2.1. Introdução
3.2.2. Anos Atari
3.2.3. Anos 80
3.2.4. Primeiros motores. Anos 90
3.2.5. Motores atuais

3.3. Motores de videojogos

3.3.1. Tipos de motores
3.3.2. Partes de um motor de videojogo
3.3.3. Motores atuais
3.3.4. Seleção de um motor para o nosso projeto

3.4. Motor Game Maker

3.4.1. Introdução
3.4.2. Design de cenários
3.4.3. Sprites e animações
3.4.4. Colisões
3.4.5. Scripting em GML

3.5. Motor Unreal Engine 4: Introdução

3.5.1. O que é o Unreal Engine 4? Qual é a sua filosofia?
3.5.2. Materiais
3.5.3. UI
3.5.4. Animações
3.5.5. Sistema de partículas
3.5.6. Inteligência artificial
3.5.7. FPS

3.6. Motor Unreal Engine 4: Visual Scripting

3.6.1. Filosofia dos Blueprints e o Visual Scripting
3.6.2. Debugging
3.6.3. Tipos de variáveis
3.6.4. Controlo básico do fluxo

3.7. Motor Unity 5

3.7.1. Programação em C# e Visual Studio
3.7.2. Criação de Prefabs
3.7.3. Utilização do Gizmos para controlar o videojogo
3.7.4. Motor adaptativo: 2D e 3D

3.8. Motor Godot

3.8.1. Filosofia do design de Godot
3.8.2. Design e composição orientada a objectos
3.8.3. Tudo incluído num pacote
3.8.4. Software livre e orientado pela comunidade

3.9. Motor RPG Maker

3.9.1. Filosofia do RPG Maker
3.9.2. Tomando como referência
3.9.3. Criar um jogo com personalidade
3.9.4. Jogos comerciais com sucesso

3.10. Motor Source 2

3.10.1. Filosofia do Source 2
3.10.2. Source e Source 2: evolução
3.10.3. Uso da comunidade: conteúdos audiovisuais e videojogos
3.10.4. Futuro do motor Source 2
3.10.5. Mods e jogos de sucesso

##IMAGE##

Desenvolverão os melhores videojogos do mundo graças aos seus novos conhecimentos”

Curso de Especialização em Gestão de Programação para Videojogos

A programação é a base do êxito de qualquer título, pelo que é fundamental que as empresas contem com profissionais especializados neste campo, que possam liderar os processos de criação de código, alcançando os objetivos estabelecidos. O Curso de Especialização em Gestão de Programação para Videojogos da TECH Universidade Tecnológica é um programa concebido para pessoas com interesse em melhorar a sua prática profissional. O nosso curso tem um plano de estudos inovador, através do qual os alunos aprenderão as diferentes linguagens e métodos de programação aplicados a esta área da indústria. Para além disso, iremos aprofundar os processos de produção, design e desenvolvimento, compreendendo plenamente o papel que a programação desempenha em cada aspeto.

Faça uma pós-graduação 100% online

Este programa conta com eixos temáticos inovadores, que serão fundamentais para que os alunos obtenham os melhores conhecimentos em relação ao desenho de algoritmos, sentenças de controlo, estruturas de dados e engenharia de software, entre outros temas altamente relevantes para se consolidar como um profissional multidisciplinar. Além disso, focaremos no desenvolvimento das capacidades de comunicação, pois através delas o profissional será capaz de estabelecer uma excelente relação de trabalho com os responsáveis, motivando-os a oferecer o seu melhor potencial e promover o progresso do projeto.