Disseny i programació orientada a l'objecte Codi:  05.564    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   Informació prèvia a la matrícula   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.

L'assignatura té com a principal objectiu la comprensió dels conceptes generals del paradigma de la programació orientada a objectes (POO) i la seva posada en pràctica mitjançant el desenvolupament d'aplicacions amb llenguatges de programació orientats a objectes.

Els elements del paradigma de la POO s'ensenyen desvinculats de qualsevol llenguatge amb l'objectiu de què l'estudiant comprengui els conceptes de manera "pura". No obstant, durant el semestre s'intenta mostrar/comparar com els llenguatges més utilitzats posen en pràctica els diferents conceptes de la POO.

Al llarg de l'assignatura s'ensenya com dissenyar/modelar programes (recolzant-se en el Llenguatge de Modelatge Unificat, UML), per posteriorment implementar el disseny creat mitjançant un llenguatge de programació concret, en el nostre cas, Java.

Així doncs, l'enfocament de l'assignatura és fonamentalment pràctic, orientat a la resolució d'exercicis, la qual cosa requereix una dedicació especial por part de l'estudiant.

Amunt

L'assignatura està pensada com l'extensió de les assignatures "Fonaments de Programació" i "Pràctiques de Programació" que cobreixen els fonaments bàsics de la programació en llenguatges estructurats. Concretament, s'afegeix l'Orientació a Objectes sobre la base de les habilitats de construcció de programes que es van adquirir en aquesta assignatura.

Cal tenir en compte que el paradigma de la programació orientat a objectes es troba avui en pràcticament totes les àrees de la informàtica, per la qual cosa apareixerà també en altres assignatures de la carrera. Per aquest motiu, aAltres assignatures del Pla d'Estudis requeriran els coneixements d'aquesta matèria com a punt de partida.

Amunt

La comprensió dels conceptes de l'orientació a objectes és un requisit fonamental per a l'exercici professional en l'àmbit general del Desenvolupament de Sistemes Programari, incloent les activitats d'Anàlisi, Disseny i Programació.

Dins del desenvolupament de la professió els llenguatges de modelatge d'informació com UML són el mitjà de comunicació i documentació més difós en les empreses de desenvolupament, a causa de la proliferació d'eines d'Enginyeria del Programari Assistida per Ordinador (Computer Aided Programari Engineering, CASE) basades en ells i a les Metodologies de Desenvolupament que les utilitzen com a notació.

Addicionalment, l'enfocament orientat a objectes s'empra en àrees de gestió en l'empresa, com és el cas del Modelatge o la Reenginyeria dels Processos de Negoci.

D'altra banda, els llenguatges orientats a objectes ocupen un lloc central en la indústria del programari, a causa de l'àmplia difusió de llenguatges d'aquest tipus (com Java, C++ o el més recent C#), i podem considerar que el seu coneixement és requisit imprescindible per a les activitats de desenvolupament en general.

Amunt

Són necessaris els coneixements assolits a les assignatures "Fonaments de Programació" i "Pràctiques de Programació". Per tant, la superació d'aquestes dues assignatures es considera un prerequisit imprescindible abans de começar "Disseny i Programació Orientats a Objectes".

És fonamental tenir agilitat en la formulació d'algorismes i en la programació estructurada, ja que en la present assignatura NO s'ensenya algorísmica ni els conceptes bàsics de la programació, p.ex. bucles, condicionals, etc.

Amunt

És imprescindible haver superat les assignatures "Fonaments de Programació" i "Pràctiques de Programació".

També és recomanable haver superat l'assignatura "Enginyeria del Programari", ya que facilita la comprensió d'alguns conceptes a més que permet tenir una experiència més enriquidora de l'assignatura.

Amunt

Competències dins del Grau en Enginyeria en Informàtica

  • Capacitat de dissenyar i construir aplicacions informàtiques mitjançant tècniques de desenvolupament, integració i reutilització.

Objectius de l'assignatura

L'objectiu principal d'aquesta assignatura és, a partir dels coneixements previs de programació que ja té l'estudiant, aprendre els conceptes d'orientació a l'objecte i saber aplicar aquests conceptes en el desenvolupament de programes orientats a l'objecte amb el llenguatge Java. Aquest objectiu es descompon i complementa en els objectius següents:

a) Aprendre i interioritzar els conceptes d'orientació a l'objecte.

b) Entendre la influència del paradigma de l'orientació a l'objecte en altres àmbits de la informàtica a més de la programació.

c) Conèixer els beneficis que aporta l'orientació a l'objecte i les raons per les quals es produeixen.

d) Comprendre els motius pels quals en l'orientació a l'objecte s'obtenen uns nivells tan alts de reutilització i els requisits que ens imposa el fet de voler aconseguir aquesta reutilització.

e) Introduir els diagrames de classes UML.

f) Aprendre a programar en Java els conceptes teòrics esmentats i desenvolupar un treball pràctic en aquest llenguatge utilitzant els conceptes d'orientació a l'objecte.

Amunt

L'assignatura es composa de dos grans blocs, un de teòric i un de caire més pràctic. Ambdós blocs es duran a terme en paral·lel al llarg del curs, al complementar-se mútuament. 

Els coneixements impartits al bloc teòric es troben estructurats en els mòduls següents:

1. Introducció al paradigma de la programació orientada a objectes

2. Abstracció i encapsulació

3. Associacions (relacions entre objectes)

5. Herència (relacions entre classes)

Per la seva banda, el bloc pràctic permetrà materialitzar els coneixements adquirits al bloc teòric. Com a documentació de suport, l'estudiant disposarà d'una guia de Java que explica la sintaxi i els conceptes bàscis d'aquest llenguatge.

Amunt

Material Suport
Disseny y programació orientats a objectes Audiovisual
Guia de Java XML
Guia de Java DAISY
Guia de Java EPUB 2.0
Guia de Java MOBIPOCKET
Guia de Java HTML5
Guia de Java PDF

Amunt

El material docent de l'assignatura comprèn:

  • Pla docent (aquest document).
  • Materials didàctics (4 mòduls teòrics + 1 guia de Java).
  • Audiovisual (6 vídeos d'animació).

Per a la part pràctica l'estudiant haurà d'instal·lar el JDK, un IDE (recomanem Eclipse i/o IntelliJ IDEA) i un programa per a realitzar diagrames de classes UML (recomanem DIA).

Amunt

La bibliografia recomanada es troba indicada en els materials didàctics.

Amunt

Aquesta assignatura treballa de manera conjunta la part teòrica i pràctica. El fil conductor de l'assignatura és el material didàctic compost per 4 mòduls teòrics i 1 guia de Java. Els primers quatre mòduls expliquen la teoria del paradigma de la programació orientada a objectes (POO), mentre que la guia de Java explica la sintaxi bàsica d'aquest llenguatge a més de la manera de codificar els conceptes de la POO amb aquest llenguatge. Per tant, la guia de Java serà un recurs que s'utilitzarà en paral·lel als mòduls teòrics.

A més, l'assignatura compta amb sis animacions en vídeo (i.e. Audiovisual) que expliquen de manera resumida i breu conceptes clau de la programació orientada a objectes.

Quant a l'organització de les activitats avaluables, l'assignatura es divideix en dues fases:

  • Fase 1 - Avaluació Continuda: en la primera part de l'assignatura, l'estudiant haurà de realitzar 4 Proves d'Avaluació Continuada (PAC) que han de ser lliurades com a molt tard en la data que s'indica tant a l'enunciat, a l'aula i en aquest Pla Docent. Les PACs serveixen per controlar, tant per part del professor docent col·laborador com pel mateix estudiant, el progrés en l'assimilació dels conceptes i competències de l'assignatura. L'avaluació d'aquestes 4 PACs donen com resultat la nota final d'Avaluació Continuada (AC). Per superar l'assignatura cal que la nota final d'AC sigui igual o superior a 5
  • Fase 2 - Pràctiques: una vegada s'han adquirit els conceptes de l'assignatura gràcies a la realització de les 4 PACs, l'estudiant ha de realitzar 2 Pràctiques que han de ser lliurades com a molt tard en la data que s'indica tant a l'enunciat, a l'aula i en aquest Pla Docent. Les Pràctiques serveixen perquè l'estudiant demostri que ha adquirit els coneixements i competències de l'assignatura. Les 2 Pràctiques són dues activitats que guien menys a l'estudiant en comparació de les PACs. La primera de les Pràctiques consisteix a dibuixar el diagrama de classes UML que soluciona un problema donat. Per la seva banda, la segona Pràctica se centra en la codificació en Java del diagrama de classes UML realitzat en la primera pràctica. L'avaluació d'aquestes 2 Pràctiques donen com a resultat la nota final de Pràctiques (Pr). Per superar l'assignatura ical que la nota final de Pr sigui igual o superior a 5

Per totes les activitats hi haurà dues sessions síncrones de resolució de dubtes: una pel matí (10:00 - 11:30) i una altra a la tarda (16:00 - 17:30).

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 només es pot superar a partir de l'avaluació contínua (AC), nota que es combina amb una nota de pràctiques (Pr) per a obtenir la nota final de l'assignatura. No es preveu fer cap prova d'avaluació final. La fórmula d'acreditació de l'assignatura és la següent: AC + Pr.


Ponderació de les qualificacions

Opció per superar l'assignatura: AC + Pr

Nota final d'assignatura = Final Continuada (FC)= AC+Pr

AC = 40%

Pr = 60%

Notes mínimes:

· Pr = 5

· AC = 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ó.

Amunt

Com s'ha comentat a l'apartat de "Metodologia", durant el semestre l'estudiant realitzarà 4 PACs i 2 Pràctiques.

Les dates de publicació d'enunciats i de lliurament de les PACs i Pràctiques es poden trobar a l'apartat de 'Planificació' d'aquest Pla Docent.

És important tenir clar que el seguiment correcte de l'assignatura compromet a l'estudiant a realitzar les activitats proposades (PACs 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 (=0). En concret, en cas d'extrema similitud entre algun exercici d'alguna activitat de dues o més estudiants que desacrediti el fet d'haver-la realitzat individualment, la nota final d'AC i/o Pràctiques serà un 0 per tots ells.

D'altra banda, i sempre a criteri dels Estudis, l'incompliment d'aquest compromís pot suposar que no es permeti a l'estudiant superar cap altra assignatura mitjançant avaluació continuada ni en el semestre en curs ni en els següents.

Quant a les PACs, és important que es tingui en compte que:

  • Per a cada exercici s'indicarà quin és el requisit mínim que s'ha de complir perquè sigui avaluat per l'equip docent.
  • El fet de superar tots els requisits mínims indicats a l'enunciat de la PAC, garanteix una nota mínima de 5 en aquesta PAC.
  • Els altres 5 punts de la PAC s'obtindran mitjançant de la superació de requisits més avançats i/o després d'una revisió realitzada per el/la professor/a col·laborador/a docent (PDC) de l'aula. En aquesta revisió s'avaluaran aspectes com: qualitat de la solució, ús de bones pràctiques, estil, superació de tests addicionals, etc.
  • Un exercici que no satisfà el requisit mínim exigit a l'enunciat tindrà un qualificació de 0 punts.
  • Per a cada exercici de programació es proporcionarà un conjunt de tests unitaris realitzats amb JUnit que l'estudiant podrà "passar" al seu codi les vegades que desitgi. Gràcies a aquests tests, l'estudiant podrà verificar la funcionalitat mínima del seu codi.
  • Un exercici de programació que contingui errors que ni tan sols permetin la compilació i execució del programa, obtindrà una qualificació igual a 0.
  • L'estudiant poden lliurar una PAC tantes vegades com desitgi, sempre que sigui abans de la data límit indicada. Se li corregirà l'últim lliurament.

Quant a les Pràctiques, és important que es tingui en compte que:

  • En la correcció de les Pràctiques s'avaluaran aspectes com: qualitat de la solució, ús de bones pràctiques, estil, argumentació de la solució proposada, superació de tests addicionals, etc.
  • Una Pràctica que contingui errors que ni tan sols permetin la compilació i execució del programa, obtindrà una qualificació igual a 0.
  • L'estudiant pot lliurar una Pràctica tantes vegades com desitgi, sempre que sigui abans de la data límit indicada. Se li corregirà l'últim lliurament.
  • L'estudiant no pot convalidar la nota final de Pràctiques (Pr) de cap semestre anterior. Per tant, tots els estudiants, ja siguin repetidors o nous en l'assignatura, han de fer les Pràctiques del semestre en curs.

Amunt

La nota d'AC es calcula de la següent manera:

AC = 10%PAC1 + 20% PAC2 + 30%PAC3 + 40%PAC 4

Per obtenir una nota diferent a No Presentat (N), l'estudiant ha de lliurar 2 de les 4 PACs. Les PACs no lliurades es comptabilitzen amb una nota igual a 0 (zero).

Pel que fa a la nota de Pràctiques, aquesta es calcula de la següent manera:

Pr = 30%PRAC1 + 70%PRAC2

Per obtenir una nota diferent a No Presentat (N), l'estudiant ha de lliurar la Pràctica 2. Si no es lliura la Pràctica 1, aquesta comptabilitzarà amb una nota igual a 0 (zero) en el moment de calcular la nota Pr.

La nota final de l'assignatura és calcula amb la següent fórmula sempre i quan la nota d'AC i Pr siguin iguals o superiors a 5:

Nota assignatura = 40% AC + 60% Pr

Amunt

Per cadascuna de les activitats d'avaluació del curs (PACs i Pràctiques) es publicaran les seves solucions a l'aula per tal que l'estudiant faci l'autoavaluació i reflexioni sobre el que ha fet bé i/o malament. Igualment, l'estudiant pot sol·licitar al seu professor docent col·laborador alguna explicació extra en aquells exercicis que cregui convenient.

Amunt