Fonaments de programació Codi:  05.554    Crèdits:  6
Consulta de les dades generals   Descripció   L'assignatura en el conjunt del pla d'estudis   Camps professionals en què es projecta   Coneixements previs   Objectius i competències   Continguts   Consulta dels recursos d'aprenentatge de què disposa l'assignatura   Recursos d'aprenentatge i eines de suport   Bibliografia i fonts d'informació   Metodologia   Informació sobre l'avaluació a la UOC   Consulta del model d'avaluació   Avaluació continuada   Avaluació final   Feedback  
Aquest és el pla docent de l'assignatura per al segon semestre del curs 2023-2024. Podeu consultar si l'assignatura s'ofereix aquest semestre a l'espai del campus Més UOC / La universitat / Plans d'estudis). Un cop comenci la docència, heu de consultar-lo a l'aula. El pla docent pot estar subjecte a canvis.

Aquesta assignatura és el punt d'entrada a les tècniques de programació. Si us dediqueu al desenvolupament de programari, no cal dir que la pràctica professional girarà principalment a l'entorn de l'aprenentatge adquirit en una sèrie d'assignatures, la primera de les quals és aquesta. Així doncs, aquesta assignatura ocupa una posició central en els estudis i en moltes de les seves sortides professionals.

L'assignatura no pressuposa cap coneixement previ d'aquesta disciplina ni de cap altra assignatura d'aquests estudis. És convenient, però, tenir alguns coneixements elementals de matemàtiques.

L'aprofundiment de les tècniques de programació es farà cursant les assignatures que són la continuació directa d'aquesta en semestres successius: Pràctiques de Programació i Disseny i Programació Orientada a Objectes.

Els diversos conceptes que van apareixent en els mòduls 1 a 5 es formulen utilitzant una notació algorísmica que no es pot executar directament. Per tant, aquests cinc mòduls didàctics es complementen amb un Manual de llenguatge C que presenta un llenguatge de programació comercial (el C) i dóna les pautes de traducció de la notació algorísmica a C. Aquest manual introdueix un entorn i un llenguatge concret de programació que permetran anar posant en pràctica els coneixements que es vagin aprenent. El llenguatge C permet adquirir uns coneixements que després seran utilitzats en altres del grau.

Amunt

Aquesta assignatura és el punt d'inici de les tècniques de programació. L'aprofundiment es farà cursant les assignatures següents del pla d'estudis: Pràctiques de Programació i Disseny i Programació Orientada a Objectes.

La programació en llenguatge C permet adquirir uns coneixements pràctics imprescindibles a altres assignatures del grau.

Amunt

Si us dediqueu al desenvolupament de programari, no cal dir que la pràctica professional girarà principalment a l'entorn de l'aprenentatge adquirit en una sèrie d'assignatures, la primera de les quals és aquesta. Així doncs, aquesta assignatura ocupa una posició central en els estudis i en moltes de les seves sortides professionals.    

Amunt

L'assignatura no pressuposa cap coneixement previ de programació ni de cap altra assignatura d'aquests estudis. És convenient, però, tenir alguns coneixements fonamentals de matemàtiques.

Amunt

Competències dins del Grau

  • Capacitat de dissenyar i construir aplicacions informàtiques mitjançant tècniques de desenvolupament, integració i reutilització.
  • Coneixements bàsics sobre l'ús i la programació dels ordinadors, sistemes operatius, bases de dades i programes informàtics amb aplicació a l'enginyeria.

Objectius de l'assignatura

L'objectiu general de l'assignatura és aprendre a dissenyar algorismes i programes que compleixin uns criteris de qualitat.

Aquest objectiu general es concreta en els següents objectius concrets:

  1. Conèixer i assimilar els conceptes fonamentals de l'algorísmica mitjançant l'aprenentatge i comprensió de la sintaxi i semàntica d'una notació algorísmica.
  2. Conèixer i assimilar els conceptes, mètodes i tècniques per tal que, a partir de l'enunciat d'un problema, es pugui especificar el comportament precís que haurà de tenir la solució, dissenyar-la i implementar-ne el programa corresponent.
  3. Pel que fa als mètodes, es veurà l'aplicació d'esquemes com una tècnica eficaç per construir algorismes. També es veurà la modularitat com una forma idònia d'afrontar problemes complexos en dividir-los en un conjunt de subproblemes més senzills.
  4. Adquirir pràctica en l'aplicació dels conceptes anteriors en un entorn real de desenvolupament de programes. Així, l'estudiant adquirirà un coneixement no tan sols conceptual sinó també pràctic de com escriure un programa, compilar-lo, muntar-lo i executar-lo.

 

Amunt

S'estudiarà el llenguatge algorísmic o pseudocodi com a eina de disseny formal d'algoritmes, que posteriorment es poden traduir a qualsevol llenguatge de programació (en el nostre cas el llenguatge de programació C).

Introducció a la programació
S'exposen els conceptes bàsics que es fan servir en programació.
 
Tipus de dades
Es descriuen els diferents tipus de dades, començant pels tipus bàsics, els estructurats i finalment els abstractes. En tots els casos es veurà la seva implicació pel que fa a la capacitat de representació, operacions i ús de memòria.

Estructures de control
Es presenten les composicions alternatives i les seqüencials, veient els esquemes bàsics de cerca i recorregut en una seqüència.
 
Modularitat
S'estudiran els diferents mecanismes de modularitat que podem utilitzar, tant els que fan referència al disseny dels algoritmes (accions i funcions) com aquells més relacionats a l'organització del codi (fitxers i llibreries). 

Amunt

Material Suport
Materials de programació Web

Amunt

Als recursos de l'aula hi trobareu l'accés a la xWiki que conté tots els recursos que necessiteu: unitats de contingut, guies de programari i llenguatge C i orientacions per a realitzar les diferents activitats. La xWiki té una explicació inicial sobre l'ús de cada recurs i també una guia d'aprenentatge on trobareu tots els materials agrupats segons la setmana en la que cal utilitzar-ho. També teniu accessible el contingut de la xWiki des de l'aula de laboratori.

Cal destacar també una eina especialment útil. Es tracta d'un recull de qüestions freqüents (FAQs) que us serviran per trobar respostes ràpides a les preguntes més comuns.

Amunt

  1. Algoritmos y estructuras de datos. Wirth, Niklaus. Naucalpan de Juárez : Prentice-Hall Hispanoamericana, cop. 1987
  2. Fundamentos de algoritmia. Brassard, Gilles. Madrid [etc.] : Prentice Hall, cop. 1997
  3. El Lenguaje de programación C : diseño e implementación de programas. Madrid [etc.] : Prentice Hall, 2001. Félix García Carballeira
  4. Programación en C. Gottfried, Byron S. Madrid [etc.] : McGraw-Hill, cop. 1997
  5. Programación en C : metodología, algoritmos y estructuras de datos. Joyanes Aguilar, Luis. Madrid [etc.] : McGraw-Hill, cop. 2005
  6. Programación en lenguaje C. Quero Catalinas, Enrique. Madrid : Paraninfo, 1998
  7. Programación estructurada en C. Antonakos, James L. Madrid [etc.] : Prentice Hall, cop. 1997 

Amunt

Per poder assolir els objectius proposats, durant tot el semestre anirem combinant l'estudi de la teoria de l'algorísmica (disseny d'algorismes) amb la pràctica de programació en C (codificació de programes).

Des de la guia d'aprenentatge de la xWiki, s'indicarà cada setmana quina és l'activitat que s'està fent, hi tindreu els recursos per poder-la realitzar i contindrà breus explicacions teòriques dels conceptes clau i els mòduls teòrics que us caldran.

En aquesta assignatura, molt més que en d'altres, l'assimilació dels conceptes i mètodes que li són propis depèn en gran mesura de la realització continuada dels exercicis proposats i de practicar molt. Per aquest motiu, és molt important tant la realització dels exercicis de cada mòdul com practicar amb els aspectes concrets del llenguatge i de l'entorn de programació. 

L'aprenentatge de la programació és eminentment pràctic i necessita d'un procés continuat i incremental. És per això que l'avaluació continuada (les PAC i les PR) serveixen per a fer aquest aprenentatge incremental. Aquesta és sens dubte la via que garanteix millor el vostre assoliment dels objectius previstos.

Per desenvolupar la part pràctica de l'assignatura tindreu al vostre abast un Laboratori Virtual de C, accessible des del campus i atès per un consultor de laboratori que us ajudarà a resoldre qualsevol dubte que tingueu sobre la instal·lació del programari i la programació en C. El laboratori està pensat exclusivament per donar suport a la instal·lació del programari, el desenvolupament de la part pràctica pel que fa a la programació C i els exercicis de C de les PAC.

Quan s'han d'estudiar els continguts?

Als materials web trobareu la guia d'aprenentatge, que us mostrarà setmanalment un resum del que caldrà treballar aquella setmana, l'activitat que es desenvoluparà i els enllaços a les unitats que cal estudiar. També hi trobareu una estimació del temps de dedicació mínim. La guia d'aprenentatge s'anirà activant setmanal d'acord amb la progressió del semestre.

Amunt

El procés d'avaluació es fonamenta en el treball personal de l'estudiant i pressuposa l'autenticitat de l'autoria i l'originalitat dels exercicis realitzats.

La manca d'autenticitat en l'autoria o d'originalitat de les proves d'avaluació; la còpia o el plagi; l'intent fraudulent d'obtenir un resultat acadèmic millor; la col·laboració, l'encobriment o l'afavoriment de la còpia, o la utilització de material o dispositius no autoritzats durant l'avaluació, entre d'altres, són conductes irregulars que poden tenir conseqüències acadèmiques i disciplinàries greus.

D'una banda, si es detecta alguna d'aquestes conductes irregulars, pot comportar el suspens (D/0) en les activitats avaluables que es defineixin en el pla docent –incloses les proves finals– o en la qualificació final de l'assignatura, sigui perquè s'han utilitzat materials o dispositius no autoritzats durant les proves, com ara xarxes socials o cercadors d'informació a internet, perquè s'han copiat fragments de text d'una font externa (internet, apunts, llibres, articles, treballs o proves d'altres estudiants, etc.) sense la citació corresponent, o perquè s'ha practicat qualsevol altra conducta irregular.

De l'altra, i d'acord amb les normatives acadèmiques, les conductes irregulars en l'avaluació, a més de comportar el suspens de l'assignatura, poden donar lloc a la incoació d'un procediment disciplinari i a l'aplicació, si escau, de la sanció que correspongui.

Amunt

Aquesta assignatura es pot superar per una doble via:

- A partir de les activitats fetes al llarg del curs i la realització d'una prova de síntesi (PS):

La combinació de la nota final de les activitats d'avaluació contínua (AC) i la qualificació final de les activitats pràctiques (Pr) dóna com a resultat la qualificació final d'avaluació contínua (FC: AC + Pr).
Per a tenir dret a fer la PS, la qualificació final d'avaluació contínua (FC) ha de ser igual o superior a 5. La nota final de l'assignatura s'obtindrà posteriorment creuant la nota de la PS amb la FC.

- Mitjançant la realització d'un examen final (EX):

Per a fer l'EX no cal haver superat l'AC. Per aquesta via, la qualificació final de l'assignatura s'obté creuant la nota de l'EX amb la qualificació final de les activitats pràctiques (Pr).

En qualsevol de les dues vies és obligatori fer les activitats pràctiques (Pr).

La fórmula d'acreditació de l'assignatura és la següent: (AC + Pr) + PS o EX + Pr.


Ponderació de les qualificacions

Opció seguint i superant la FC: (AC + Pr) + PS

Final Continuada: (FC) = AC + Pr

AC = 40%

Pr = 60%

Notes mínimes:

· Pr = 5

· AC = 4

En cas de no assolir la nota mínima a la Pr, la nota obtinguda en la fórmula correspon a l'obtinguda a la Pr, o el que indiqui el model d'avaluació.


Nota final d'assignatura: FC + PS

FC = 70%

PS = 30%

Notes mínimes:

· PS = 3,5

Quan la nota obtinguda a la PS sigui inferior als mínims establerts per a cada fórmula, la qualificació final de l'assignatura serà la nota obtinguda a la PS.

Opció amb EX: (EX+Pr)+AC

Final d'Examen (FE) = EX + Pr

EX = 60 %

Pr = 40%

Notes mínimes:

· Pr = 5

En cas de no assolir la nota mínima a la Pr, la nota obtinguda en la fórmula correspon a l'obtinguda a la Pr, o el que indiqui el model d'avaluació.


Nota final d'assignatura: FE + AC

FE = 65%

AC = 35%

Notes mínimes:

· EX = 4

Aquesta fórmula de ponderació només s'aplicarà quan la nota resultant millori la nota obtinguda a l'EX. Quan la nota obtinguda a l'EX sigui inferior a 4 o la qualificació resultant de la fórmula de ponderació no permeti millorar la nota obtinguda a l'EX, la qualificació final de l'assignatura serà la nota obtinguda a l'EX.

En el cas d'assignatures amb pràctiques (Pr) que creuïn amb l'examen (EX), la fórmula de ponderació només s'aplicarà quan la nota resultant millori la nota obtinguda a FE (FE=EX+Pr). Quan la nota obtinguda a l'EX sigui inferior a 4, la qualificació resultant de l'assignatura serà la nota obtinguda a l'EX. Quan la qualificació resultant de la fórmula de ponderació no permeti millorar la nota obtinguda a FE, la qualificació final de l'assignatura serà la nota obtinguda a FE.

Amunt

L'avaluació continuada (AC) consisteix en una sèrie d'exercicis setmanals (10 en total) on posar en pràctica els continguts treballats. Totes les PAC tenen el mateix pes en el càcul de la nota final d'AC (un punt de la nota final de AC). 

Les proves d'avaluació continuada consistiran bàsicament en la resolució d'un exercici senzill de disseny d'un algorisme combinat amb un exercici de codificació en C.  Les PAC s'han de lliurar dins dels terminis establerts (trobareu les dates al calendari de l'aula). No s'acceptaran fora de termini.

Les PAC es corregiran agrupades en tres grups però s'han de lliurar cadascuna en el seu termini:

GRUP 1 PAC1 PAC2 PAC3 PAC4
GRUP 2 PAC5 PAC6 PAC7 PAC8
GRUP 3 PAC9 PAC10    

A més a més de les PAC també cal fer una pràctica dividida en dues parts (PR1 i PR2) cadascuna de les quals  té un pes específic en la nota final de Pràctica:  PR1 (8 punts) i PR2 (2 punts)

El curs començarà amb una activitat no avaluable consistent en la preparació de l'entorn de programació, per això no té puntuació tot i que és imprescindible fer-la per poder continuar amb la resta de parts pràctiques.

El fet de lliurar qualsevol de les dues pràctiques (PR1 i PR2) implica que la vostra nota final de pràctiques serà diferent de No Presentat.

És imprescindible lliurar i obtenir 5 dels 8 punts de la PR1  per tal de poder aprovar l'assignatura independentment de la via d'avaluació que s'hagi escollit (això implica assolir una puntuació mínima de 6,25 sobre 10 a la nota de la  PR1 per poder optar a aprovar l'assignatura).

Si no es lliura la PR2, aquesta part computarà amb un 0 en el càlcul de la nota de final de pràctica.

La guia d'aprenentatge de la xWiki incorpora l'avaluació continua de manera que pugueu seguir un procés de aprenentatge  progressiu.

Frau o Plagi

És important tenir clar que el seguiment correcte de l'assignatura us compromet a realitzar les activitats proposades (PAC i Pràctiques) de manera individual i segons les indicacions que pauta aquest Pla Docent. En cas que no sigui així, les activitats s'avaluaran amb una D o un 0 segons correspongui. En concret, en cas d'extrema similitud entre algun exercici d'alguna PAC/Pràctica de dos o més estudiants que desacrediti el fet d'haver-la realitzat individualment, la nota final d'AC/Pràctica serà una D per a tots ells, d'acord amb la normativa UOC de plagi ja indicada anteriorment.

Amunt

Les proves finals, depenent de la via d'avaluació escollida, consisteixen en una prova de síntesi o en un examen.

Els estudiants que hagin superat l'avaluació continuada (creuament entre la nota resultant de combinar les tres PAC i la nota final de combinar les PR) han de realitzar una prova de síntesi (PS).

Els que no hagin superat l'avaluació continuada (no hagin realitzat o no hagin superat la nota combinada de les PAC) però que hagin superat la nota final de pràctiques hauran de realitzar un examen final.

En qualsevol de les dues vies la superació de la part pràctica és imprescindible.

Amunt

De cadascuna de les activitats d'avaluació del curs (PAC i Pràctiques), a més de les solucions publicades a l'agenda de l'aula, els estudiants en el llindar de l'aprovat (C+/C-), rebran un feedback personal en què es comenten els errors comesos i es donen indicacions de millora.
Aquest feedback es rebrà mitjançant el mateix aplicatiu de lliurament i registre d'AC en la data de publicació de les qualificacions de cada activitat.

Amunt