Informació general


Tipus d'assignatura: Optativa

Coordinador: Juan José Pons López

Trimestre: Segon trimestre

Crèdits: 6

Professorat: 

Rafael González Fernández

Idiomes d'impartició


  • Castellano
  • Català

Els materials podran proporcionar-se tant en català com en castellà o anglès. 

Competències


Competències generals
  • G1. Demostrar tenir i comprendre coneixements avançats de la seva àrea d'estudi que inclouen els aspectes teòrics, pràctics i metodològics, amb un nivell de profunditat que arriba fins a l'avantguarda del coneixement.

  • G2. Resoldre problemes complexos del seu àmbit laboral, mitjançant l'aplicació dels seus coneixements, l'elaboració d'arguments i procediments, i l'ús d'idees creatives i innovadores.

  • G5. Desenvolupar les habilitats d'aprenentatge necessàries per emprendre estudis posteriors amb un alt grau d'autonomia.

Descripció


L’assignatura està pensada per perfils d’alumnes amb orientació tecnològica (perfil de desenvolupadors) que vulguin aprofundir en la programació de jocs i en els llenguatges més avançats. L’alumne aprendrà a programar amb el llenguatge C++ i a través d’aquest, comprendrà els conceptes de gestió de memòria i altres característiques pròpies de la programació orientada a objectes. Amb això, l’estudiant aprofundirà i consolidarà els conceptes de programació vistos al llarg de la carrera. Es crearan projectes directament sobre Visual Studio sense cap altre motor o engine intermig, donant així una visió del codi i de la seva organització a un més baix nivell.

Les sessions seran principalment teòriques on s'exposaran els conceptes amb exemples pràctics. Per assolir els coneixements de l’assignatura s’avaluaran per un costat diversos exercicis pràctics durant el curs, juntament amb una pràctica final individual i un exàmen teòric. 

L’assignatura es contextualitza dins de la branca de desenvolupament de videojocs. Està relacionada amb les assignatures de desenvolupament de jocs, motors de jocs, programació amb llenguatges interpretats i programació gràfica avançada (optativa).

 

Continguts


Tema 1. Arquitectura de Computadors

1.1. Màquina de Turing

1.2. Arquitectura Von Newmann

1.3. Ensamblador x86

Tema 2. Introducció a C++

2.1. Introducció històrica

2.2. Baix vs alt nivell

2.3. Estructura d'un projecte

2.4. Microsoft Visual Studio

Tema 3. Bases de C++

3.1. Variables

3.2. Funcions

3.3. Punters

3.4. Arrays

3.5. Gestió de la memoria

3.6. Paraules clau

3.7. Strings

Tema 4. Orientació a Objectes

4.1. Clases

4.2. Herencia

4.3. Namespaces, àmbits i validesa

Tema 5. C++ Avançat

5.1. Smart Pointers

5.2. Punters a funcions

5.3 Lambdas

5.4. Castings

Tema 6. Projectes en C++

6.1. Precompiled headers

6.2. Estructures de dades

6.3. Fitxers

Tema 7. Bones Pràctiques

7.1. S.O.L.I.D. Principes

Tema 8. Pràctica

Sistema d'avaluació


La nota de cada alumne es calcularà seguint els següents percentatges:

A1. Exercici a classe: Màquina de Turing - 5%

A2. Exercici a casa: Human Resource Machine - 5%

A3. Exercici a casa: Perfect Numbers - 2.5%

A4. Exercici a casa: Pascal Triangle - 2.5%

A5. Treball Individual: Raining Letters - 10% 

A6. Treball Individual: Snake - 10% 

A7. Pràctica Final - 35%

A8. Examen Final - 30%

Nota final = A1 0,05 + A2 0,05 + A3 0,025 + A4  0,025 + A5  0,10 + A6   0,10 + A7   0,35 + A8   0,30

Consideracions:

  • Cal obtenir una nota superior a 5 a l’examen final per a aprovar l’assignatura.
  • Una activitat no entregada o lliurada amb retard i sense justificació (citació judicial o assumpte mèdic) compta com un 0.
  • És responsabilitat de l’alumne evitar el plagi en totes les seves formes. En el cas de detectar un plagi, independentment del seu abast, en alguna activitat correspondrà a tenir una nota de 0. A més, el professor comunicarà a la Cap d’estudis la situació per a que es prenguin mesures aplicables en matèria de règim sancionador.

Recuperació:

  • Cal obtenir una nota superior a 5 a l’examen final de recuperació per a aprovar l’assignatura.
  • La nota de l’examen de recuperació s’aplicarà només a la nota de l’activitat A8.
  • En cas de superar la recuperació, la nota final màxima de l’assignatura serà de 5.