Informació general


  • Tipus d'assignatura: Obligatòria
  • Coordinador: Adso Fernández Baena
  • Trimestre: 1
  • Crèdits: 4
  • Professorat:

Idiomes d'impartició


  • Català
  • English

Documentació majoritàriament en anglès. Llengua usada a classe: català.

Competències que es treballen


General

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


Transversal

  • T1. Comunicar en un tercer idioma, que serà preferentment l'anglès, amb un nivell adequat de forma oral i per escrit i d'acord amb les necessitats que tindran els graduats i graduades.


Específica

  • E6. Desenvolupar videojocs en llenguatges de programació d'alt nivell en motors gràfics  a partir de les especificacions.

Descripció


Primera assignatura de l'àmbit de la programació. És la base de totes les assignatures de programació que s'encabeixen en la mateixa matèria a la qual pertany (Desenvolupament). Partint des de zero presenta els temes més elementals de la programació dins del paradigma imperatiu: variables i tipus, operacions elementals, control de flux i abstracció procedimental. Es treballen els aspectes teòrics, de manera expositiva,  i la seva posterior aplicació pràctica, adreçada a la resolució, sovint guiada, de problemes petits. Les sessions de classe combinen ambdós aspectes per tal d'aconseguir un bon equilibri entre ells. L'assignatura s'avalua a partir de la realització, asíncrona, de petits treballs pràctics semblants als treballats en les sessions síncrones i de proves escrites eminentment orientades a la resolució de problemes.  

Resultats d'aprenentatge


En acabar l’assignatura els estudiants han de ser capaços de:

  • E6.1. Dissenyar l'arquitectura del software d'un videojoc d'acord amb unes especificacions
  • E6.2. Interpretar l'anàlisi del software per al seu posterior desenvolupament
  • E6.6. Desenvolupar videojocs 2D i 3D (o parts d'ells) en un llenguatge d'alt nivell sobre plataformes i motors destinats a tal efecte. 

 

Metodologia de treball


L'assignatura utilitza majoritàriament, aquestes dues metodologies: la classe magistral i la resolució de problemes. 

Tots els conceptes teòrics de la matèria s'exposaran en classes de teoria (grups grans) de naturalesa magistral. En aquestes classes, i a discreció dels docents impartidors, també es resoldran exercicis i problemes de caire més pràctic. Així mateix, i sempre a discreció dels impartidors, es podrà demanar als estudiants que resolguin, de manera individual o en grup, problemes i/o exercicis breus. Aquestes activitats breus serviran a l'estudiant com a instrument pràctic i també d'autoavaluació del seu assoliment dels continguts de la matèria.

Els conceptes de caire més pràctic i tot el que en essència es pugui considerar l'aplicació pràctica dels conceptes teòrics seran treballats de manera més intensiva en grups petits (de laboratori). En les sessions que es programin a aquest efecte es donaran les eines escaients per a resoldre les activitats programades bo i que s'espera que aquestes s'allarguin des del punt de vista temporal, més enllà de les hores de laboratori i que, en conseqüència, els estudiants les hagin de finalitzar durant el temps d'aprenentatge autònom (de manera asíncrona)

Els estudiants han d'assistir a totes les classes amb un ordinador portàtil amb la capacitat d’executar el software escaient per a l’assignatura. Els docents impartidors informaran de quin és aquest software i com es pot obtenir.

Es posarà a disposició dels estudiants activitats de caire totalment opcional que els ajudin a preparar i a preparar-se per a les de caire obligatori.

Continguts


Tema 1. Conceptes bàsics de la programació imperativa

1.1 Variables, tipus i assignació

1.2 Avaluació d'expressions

1.3 Lectura i escriptura

1.4 Formes d'execució i estructures de control: seqüencial, condicional/alternativa i iterativa

1.5 Esquemes iteratius bàsics: recorregut i cerca

 

Tema 2. Descomposició funcional i disseny descendent. Abstracció procedimental.

2.1 Descomposició de problemes en subproblemes

2.2 Funcions i procediments. Invocació

2.3 Parametrització

 

Tema 3. Taules

3.1 Taules unidimensionals

3.2 Taules multidimensionals

3.2 Esquemes iteratius aplicats a taules

Activitats d'aprenentatge


Amb l’objectiu de recollir evidència de l’assoliment dels resultats d’aprenentatge esperats es realitzaran les següents activitats de caràcter avaluatiu (relacionades amb totes les competències comunes):

A1. Examen de mig trimestre (evidència dels estadis primerencs dels resultat d’aprenentatge E6.1 i E6.6)

A2. Examen final trimestre (evidència dels estadis primerencs dels resultat d’aprenentatge E6.1 i E6.6)

Els resultats d'aquestes proves seran la base primordial per a determinar la qualificació final de l'assignatura. Versaran sobre els continguts exposats fins el moment de la seva realització, fortament centrats en l'estadi inicial de la competència general a la qual contribueix aquesta assignatura, cercant evidència de l'assoliment del resultat d'aprenentatge anteriorment especificat: "Codificar programes en un llenguatge de programació imperatiu d'alt nivell per a resoldre problemes simples". En la mesura del possible, cada prova constarà de dues parts, una realitzada sobre paper i una altra realitzada amb l'ajut d'una eina de desenvolupament de software (entorn integrat de desenvolupament).

A3. Pràctiques 1, 2, 3 i 4 (evidència dels estadis primerencs dels resultat d’aprenentatge E6.1, E6.2 i E6.6)

Aquestes quatre pràctiques seran relatives als temes que formen part dels continguts de l'assignatura. Aquestes pràctiques es realitzaran majoritàriament fora de l'aula (en el temps de treball personal de l'estudiant), de manera individual o en grups reduïts.


Criteris generals de les activitats

- Els professor presentarà un enunciat per a cada enunciat i els criteris d'avaluació i/o rúbriques

- El professor informarà de les dates i el format de lliurament de l'activitat

- Les activitats unipersonals pressuposen el compromís de l'estudiant de realitzar-les de manera individual i sense cap mena de col·laboració amb d’altres persones. Es consideraran suspeses (qualificació 0) totes aquelles activitats en què l'estudiant no s'ajusti a aquest compromís d’individualitat,  independentment del seu paper (emissor o receptor) i sense que això exclogui la possible aplicació d’altres sancions d’acord amb el Règim Disciplinari vigent.

- Igualment, les activitats que s'hagin de realitzar en grup pressuposen el compromís per part dels estudiants que l'integren de realitzar-les en el si del grup i sense cap mena de col·laboració amb d’altres grups o persones que en siguin alienes (individualitat grupal). Es consideraran suspeses (qualificació 0) totes aquelles activitats en què el grup no hagi respectat aquest compromís amb independència del seu paper (emissor o receptor) i sense que això exclogui la possible aplicació d’altres sancions d’acord amb el Règim Disciplinari vigent.

- En el cas particular de les pràctiques, quan en alguna d’elles no es respecti el compromís d’individualitat i/o s’utilitzin mitjans fraudulents en la seva realització, la qualificació de pràctiques (Pr) serà, per a tots els membres del grup, de 0 punts (Pr=0) amb independència de la qualificació de les altres pràctiques i sense que això exclogui la possible aplicació d’altres sancions d’acord amb el Règim Disciplinari vigent.

- Qualsevol activitat no lliurada es considerarà puntuada amb zero punts.

- És potestatiu dels docents acceptar o no lliuraments fora dels terminis que s'indiquin. En el cas que aquests lliuraments fora de termini s'acceptin, és potestatiu del docent decidir si aplica alguna penalització i la quantia d'aquesta.

Sistema d'avaluació


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

A1. Examen parcial: Examen de mig trimestre 25% 

A2. Examen final: Examen final trimestre 25%

A3. Pràctiques de laboratori: Pràctiques 1, 2, 3 i 4 50%

Nota Final = MAX( (A1+A2)/2, A2) 0.5 + A3 0.5

Consideracions: 

- Cal que MAX( (A1+A2)/2, A2) >= 5 per a superar l'assignatura. Si aquesta qualificació no arriba a 5 llavors ella mateixa serà la nota final. 

- Una activitat no lliurada o lliurada amb retard i sense justificació (citació judicial o assumpte mèdic) compta com un 0.

- Es 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 en prengui mesures  aplicables en matèria de règim sancionador 

- Recuperació

La part de pràctiques de l’assignatura (qualificació A3) NO és recuperable.

La part de teoria de l’assignatura (qualificació MAX( (A1+A2)/2, A2)) sí que és recuperable. La recuperació es farà en la data i lloc que fixi la Direcció d’Estudis de l’Escola. Per als estudiants que assisteixin a l’examen de recuperació la seva qualificació A2 serà la obtinguda en aquesta prova i la seva qualificació final es calcularà amb les fórmules anteriorment detallades.

Bibliografia


Bàsica

Beginning C# 7 Programming with Visual Studio 2017. Benjamin Perkins; Jacob Vibe Hammer, Jon D. Reid. Wrox (Wiley)

Essential C# 7.0. Mark Michelis. Addison-Wesley

Illustrated C# 7. Daniel M. Solis; Cal Schrotenboer. Apress


Complementària

Sesa i Nogueras. Fonaments de Programació: notes de classe i exercicis. Publicació interna del TCM. Es posarà a disposició dels estudiants a través de la plataforma eCampus