|
|||||||||||||||||||||
Consulta de les dades generals Descripció L'assignatura en el conjunt del pla d'estudis Camps professionals en què es projecta Coneixements previs Informació prèvia a la matrícula Objectius i competències Continguts Consulta dels recursos d'aprenentatge de la UOC per a l'assignatura Informació addicional sobre els recursos d'aprenentatge i eines de suport Informacions sobre l'avaluació a la UOC Consulta del model d'avaluació | |||||||||||||||||||||
Aquest és el pla docent de l'assignatura per al primer 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. | |||||||||||||||||||||
Els compiladors són eines indispensables per a qualsevol informàtic que s'encarreguen de traduir informació textual d'un format o llenguatge a un altre. Per exemple, actuen com a peces clau en el procés l'execució d'un programa: tradueixen el programa des del llenguatge d'alt nivell utilitzat pels humans fins a un llenguatge de baix nivell que es pot executar en un ordinador (com l'assemblador o el codi màquina). Aquesta assignatura presenta l'estructura bàsica d'un compilador: els mòduls que el composen i com es comuniquen entre si. Ens centrarem en el cas dels llenguatges de programació de propòsit general i en el procés de generació d'un executable a partir d'un programa en alt nivell. Concretament, es veurà com s'analitza un programa font per obtenir-ne les parts components i es detecten els possibles errors introduïts pel programador. S'introduirà també el concepte de intèrpret i la seva relació amb els compiladors. Després s'estudiarà com a partir de les dades obtingudes a la part d'anàlisi, es genera el codi objecte i és optimitzat per millorar-ne el rendiment. Tot això es posarà en pràctica mitjançant l'ús d'eines per a la construcció de compiladors. |
|||||||||||||||||||||
L'assignatura Compiladors es pot cursar com assignatura optativa o bé com a part de l'itinerari de Computació. Dins d'aquest itinerari, aquesta assignatura permet aplicar els coneixements obtinguts a Autòmats i Gramàtiques a l'estudi dels llenguatges de programació. A més, junt amb Intel·ligència Artificial i Aprenentatge Computacional, l'assignatura proporciona les bases utilitzades en les tècniques de processament de llenguatge natural. |
|||||||||||||||||||||
A més de l'àrea de compiladors, totes les tècniques que s'estudien en aquesta assignatura es poden aplicar, en general, a qualsevol sistema de processament de llenguatges i de traducció. La construcció de compiladors i intèrprets també és rellevant en el intercanvi d'informació textual entre diferents sistemes software: construcció de llibreries d'importació/exportació, definició de llenguatges d'intercanvi de dades, etc. Així doncs, aquesta assignatura ocupa una posició molt rellevant en les sortides professionals en àrees on la definició formal d'un llenguatge es fa necessària com ara la definició de llenguatges de programació, el processament de llenguatge natural o la traducció automàtica, entre d'altres. Per últim, les competències adquirides en aquesta assignatura poden ser útils per a qualsevol desenvolupador, donat que permeten entendre millor els llenguatges de programació, el funcionament dels intèrprets i els compiladors i el procés d'execució d'un programa. |
|||||||||||||||||||||
L'assignatura pressuposa un bons coneixements de programació, específicament en llenguatge Java, pel que resulta molt recomanable haver cursat les assignatures de programació i d'estructures de dades corresponents amb anterioritat. A més, pel bon seguiment de l'assignatura s'ha de partir d'uns coneixements bàsics en llenguatges, expressions regulars, autòmats finits i gramàtiques. I, finalment, cal tenir coneixements bàsics sobre llenguatge assemblador i estructura de computadors. |
|||||||||||||||||||||
Abans de cursar aquesta assignatura és molt recomanable haver cursat prèviament les assignatures següents:
A més, encara que no és imprescindible és molt recomanable haver estudiat l'assignatura de Disseny d'estructures de dades. |
|||||||||||||||||||||
Les competències generals del Grau que es posen de manifest en aquesta assignatura són:
Les competències específiques d'aquesta assignatura són:
|
|||||||||||||||||||||
L'assignatura s'estructura en sis mòduls:
|
|||||||||||||||||||||
|
|||||||||||||||||||||
Els mòduls didàctics constitueixen la part més important dels materials de l'assignatura. Els podeu descarregar en format PDF des de l'apartat Recursos de l'aula. L'assignatura disposa d'un manual de referència per a les eines de construcció de compiladors utilitzades a l'assignatura, el Manual de JLex i CUP, que podeu trobar a l'aula virtual dins l'apartat de Recursos. Disposeu d'una aula de Laboratori de Java de Compiladors on rebreu més informació sobre el programari de l'assignatura (entorn JDK per a l'execució de programes Java, JLex i CUP). |
|||||||||||||||||||||
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, programari o dispositius no autoritzats durant l'avaluació, entre altres, són conductes irregulars en l'avaluació que poden tenir conseqüències acadèmiques i disciplinàries greus. Aquestes conductes irregulars poden 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, programari 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 dut a terme qualsevol altra conducta irregular. Així mateix, i d'acord amb la normativa acadèmica, les conductes irregulars en l'avaluació també poden donar lloc a la incoació d'un procediment disciplinari i a l'aplicació, si escau, de la sanció que correspongui, de conformitat amb l'establert a la normativa de convivència de la UOC. En el marc del procés d'avaluació, la UOC es reserva la potestat de:
|
|||||||||||||||||||||
|