L'assignatura parteix del coneixement que l'alumne té sobre la programació no estructurada i estructurada, i sobre aquest, li facilita eines orientades a assolir desenvolupaments de programari eficients i de qualitat.
Addicionalment, l'assignatura es comprèn de l'aprenentatge de la programació modular i de les eines de suport al desenvolupament associades a aquest tipus de programació. La programació modular és l’evolució natural de la programació estructurada, i el pas previ a la programació orientada a objectes.
L'objectiu de l'assignatura és aconseguir coneixements orientats a l'obtenció de programari de qualitat d'una manera eficient.
Professors Titulars
Professors Docents
Fonaments de programació.
L’assignatura té com a objectiu que l’estudiant adquireixi els coneixements i desenvolupi les habilitats necessàries per analitzar i resoldre problemes mitjançant la programació. Es pretén fomentar la capacitat de comprendre i abstraure problemes reals, dissenyar solucions correctes i eficients, i desenvolupar el pensament algorísmic.
Així mateix, s’introdueixen els fonaments de la programació estructurada i modular, l’ús de pseudocodi i d’un llenguatge imperatiu com el C, així com la capacitat d’interpretar i construir programes. Finalment, es promou l’adquisició d’hàbits de treball i estudi continuats.
- Fitxers i programació modular
- Punters i memòria dinàmica
- Estructures de dades lineals
- Introducció a la recursivitat
La metodologia docent es basa en un enfocament actiu i teoricopràctic orientat a l’adquisició progressiva dels resultats d’aprenentatge de l’assignatura. El desenvolupament del curs combina classes magistrals, sessions pràctiques i treball autònom de l’estudiant, garantint una adequada integració entre teoria i pràctica.
Les classes magistrals se centren en la introducció dels conceptes fonamentals i en l’explicació dels principis bàsics de la programació. Aquestes es complementen amb classes pràctiques, en les quals l’estudiant aplica els coneixements adquirits mitjançant la resolució de problemes i el desenvolupament d’exercicis guiats.
De manera continuada, l’alumnat realitza exercicis setmanals que reforcen la comprensió dels continguts i afavoreixen el desenvolupament del pensament algorísmic. Així mateix, es plantegen pràctiques de major abast orientades al disseny i implementació de solucions completes, incloent una pràctica o projecte individual que permet consolidar els aprenentatges de manera autònoma.
La metodologia es completa amb activitats d’avaluació, com ara exàmens, i amb l’estudi personal de l’estudiant, que resulta fonamental per consolidar els coneixements i competències treballats a l’aula. En conjunt, es promou un aprenentatge progressiu que combina treball dirigit, pràctica aplicada i treball autònom, en coherència amb la càrrega de treball establerta.
Pràctiques: Avaluació altament significativa que garanteix que l'alumne apliqui els coneixements adquirits en forma de projecte.
Avaluació contínua: avaluació de caràcter moderadament significativa, realitzada mitjançant sessions de laboratori amb periodicitat regular que permeten posar en pràctica els continguts prèviament adquirits i mantenir laprenentatge al dia al llarg del curs.
Exàmens finals: avaluació altament significativa que assegura que lalumne integri i apliqui de forma global els coneixements desenvolupats durant el semestre.
Es valorarà:
- La capacitat d'aplicar el pensament computacional en la resolució d'exercicis
- La comprensió i aplicació correcta dels conceptes d'algorísmia bàsica
- El correcte ús del llenguatge C per la resolució dels problemes i exercicis
- L'elaboració de documentació que expliqui de forma correcta i completa els programes desenvolupats
- La capacitat de comprendre els requisits d'un problema i proposar una ssolució en forma d'algorisme
- Carmen, Thomas H.; Leiserson Charles E.; Rivest Ronald L; Stein Clifford. Introduction to Algorithms, The MIT Press, 2009.
- García-Bermejo, J.R. Programación Estructurada en C, Pearson/Prentice-Hall, 2008.
- Hanly, Jerry R.; Koffman, Elliot B.; Problem Solving and Program Design in C, Pearson Education, 2013.
- Joyanes, L. Fundamentos de la programación. Algoritmos y Estructura de Datos, McGraw-Hill, 2008.
- Kernighan, Brian W.; Ritchie, Dennis M. El lenguaje de programación C, Prentice-Hall Hispanoamericana, 1991.
- Kruse, Robert Leroy; Tondon, Clovis L.; Leung, Bruce P. Data structures and program design in C, Prentice-Hall, 1997.
- Weiss, Mark Allen. Estructuras de datos y algoritmos, Addison-Wesley Iberoamericana, 1995
No cal més que la bibliografia bàsica.