Que estàs buscant?
Alguns materials es proporcionaran en anglès.
E6. Desenvolupar videojocs en llenguatges de programació d'alt nivell en motors gràfics a partir de les especificacions.
G3. Reunir i interpretar dades rellevants (normalment dins de la seva àrea d'estudi) per emetre judicis que incloguin una reflexió sobre temes rellevants d'índole social, científica o ètica.
G5. Desenvolupar les habilitats d'aprenentatge necessàries per emprendre estudis posteriors amb un alt grau d'autonomia.
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.
L'assignatura Programació I suposa la primera aproximació al disseny d'algorismes utilitzant les bases de la programació orientada a objectes en el marc de la matèria de Desenvolupament. Es treballen problemes d'una certa complexitat, tant per dissenyar algorismes nous com per testejar i debugar adequadament algorismes implementats. L'assignatura consta de sessions teòriques i sessions de pràctica. Per assolir els coneixements de l'assignatura s'avalua per un costat tres pràctiques i per un altre els coneixements teòrics de manera individual.
Tema 1: Descomposició funcional i disseny descendent
1.1. Descomposició de problemes en subproblemes
1.2. Diagrames de flux
1.3. Recorregut vs cerca
1.4. Pas de paràmetres: entrada, sortida, referència i valor
Tema 2: Introducció i conceptes generals de la programació orientada a objectes (POO)
2.1. Què és la POO?
2.2. Programació estructurada vs POO
2.3. Perquè utilitzar la POO i els seus beneficis
2.4. Característiques de la POO
2.5. Definició d'objecte i classe
2.6. Elements d'una classe
Tema 3: Conceptes bàsics de la programació orientada a objectes
3.1. Atributs objectuals, atributs de classe i constants
3.2. Constructors i instanciar objectes
3.3. Mètodes d'una classe i sobrecàrrega
3.4. Diagrames de llenguatge unificat de modelat (UML)
3.5. Paraula clau "this"
3.6. Classes vs classes estàtiques
3.7. Gestió d'excepcions i debug dins d'una classe
3.8. Operadors
Tema 4: Herència, interfaces i polimorfisme (jerarquia de classes)
4.1. Introducció, definició d'herència i exemples
4.2. Creació de classes base i derivades
4.3. Classes "sealed" i "abstract"
4.4. Interfaces
4.5. Polimorfisme
Tema 5: Estructures de dades
5.1. Arrays bidimensionals i multidimensionals
5.2. Diccionaris
La nota de cada alumne es calcularà seguint els següents percentatges:
A1. Pràctiques de laboratori 1: Treballar amb matrius i anàlisi descendent 12%
A2. Pràctiques de laboratori 2: Implementar classes i treballar amb objectes 12%
A3. Pràctiques de laboratori 3: Conceptes d'herència 12%
A4. Exercicis a classe: Qüestionaris teòrics 5%
A5. Exercicis a casa: Exercicis pràctics curts 9%
A6. Examen pràctic final 50%
Nota final = A1 0,12 + A2 0,12 + A3 0,12 + A4 0,05 + A5 0,09 + A6 0.50
Consideracions:
Recuperació:
Clark Dan (2011) Beginning C# Object-Oriented Programming. Apress.
Fagerberg Jonas (2015) C# for Beginners: The Tactical Guidebook: Learn Csharp by Coding. CreateSpace Independent Publishing Platform.
Chaudhary Harry (2014). C# Programming: Step By Step Beginner's To Experts Edition. Createspace LLC USA.
Meyer Bertrand (1997) Object-Oriented Software Construction. Prentice Hall.