Estructura de la informació Codi:  05.001    :  6
Consulta de les dades generals   Descripció   Objectius i competències   Continguts   Llista dels materials de què disposa l'assignatura   Materials  
Aquest és el pla docent de l'assignatura per al primer semestre del curs 2024-2025. 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 "Estructura de la Informació" té com a objectiu primordial l'estudi de diverses estratègies de representació de dades en un ordinador, usant els constructors oferts pels llenguatges de programació i utilitzant la idea de tipus abstracte de dades com a fil conductor per a la presentació de les esmentades estratègies. Aquest és un tema cabdal en l'estudi de la programació i, per això, les titulacions informàtiques universitàries dediquen si més no una assignatura al seu estudi, com és el cas de la UOC. A més, en la implantació d'aquesta matèria a la UOC, s'ha adoptat l'orientació a l'objecte com a marc de referència per a la definició i comprensió de les diverses estructures que s'estudien. Podríem dir que l'enfocament donat a la matèria a la UOC intenta treure profit dels conceptes més punyents en el món de la programació.

Amunt

 

  • Copsar la importància dels tipus abstractes de dades en la programació orientada a objectes.
  • Conèixer un ampli ventall de tipus abstractes de dades per a l'emmagatzematge de col·leccions d'elements, coneixent les seves diferències i similituds.
  • Aprendre algunes tècniques bàsiques d'implementació d'estructures de dades i la seva aplicació als tipus estudiats.
  • Aprofundir en el coneixement dels conceptes fonamentals de l'orientació a objectes i la seva aplicació en l'àmbit del disseny de programes amb tipus abstractes de dades.
  • Aprendre alguns algoritmes bàsics de gestió de les estructures de dades vistes.
  • Conèixer el concepte d'eficiència dels programes i aprendre a triar entre diverses solucions funcionalment equivalents en base a aquest criteri.
  • Aprendre a dissenyar noves estructures de dades com a combinació dels tipus abstractes i estructures ja coneguts.
  • Experimentar amb l'ús de Java per a formar jerarquies de classes tot copsant les particularitats del llenguatge respecte de la teoria general de la programació orientada a objectes.

Objectius complementaris

  • Habituar l'estudiant a desenvolupar-se a la xarxa amb l'objectiu de recopilar recursos que li permetin conduir el seu propi aprenentatge, tant en la disciplina que es tracta com en altres de futures que hagi de desenvolupar professionalment.
  • Planificar una seqüència i ritme d'aprenentatge per assolir els objectius generals.
  • Considerar el profesor consultor com supervisor i facilitador i, alhora, com a font d'activitats i informacions addicionals.
  • Avaluar el propi procés d'aprenentatge, mitjançant la realització dels exercicis d'autoavaluació i la participació en el procés d'avaluació contínuada.

Amunt

Mòdul 1

Tipus Abstractes de Dades: estudi del concepte i d'aspectes relatius a la seva definició en classes mitjançant una jerarquia i també a la seva implementació.

Mòdul 2

Complexitat algorísmica: descripció dels mètodes utilizats per comparar el cost de dos programes en termes de temps d'execució o consum de memòria.

Mòdul 3

Contenidors seqüencials: estudi de les col·leccions d'objectes amb accés seqüencial (piles, cues, llistes, ...).

Mòdul 4

Arbres: presentació de les estructures de dades emprades per representar relacions jeràrquiques i introducció del concepte de recursivitat.

Mòdul 5 

Cues amb prioritat: estudi del disseny i implementació de col·leccions on l'ordre d'accés als elements depèn de la seva prioritat.

Mòdul 6

El TAD Taula: estudi del concepte de "dispersió", presentació del TAD taula i de les estratègies per la seva implementació.

Mòdul 7

Arbres de cerca: aprofundiment en el concepte d'arbre i les seves aplicacions per a representar col·leccions ordenades.

Mòdul 8

Grafs: revisió del concepte de grafs i descripció d'estratègies per implementar diferents tipus de grafs (dirigits o no dirigits, etiquetats o no etiquetats).

Mòdul 9

Disseny d'estructures de dades: anàlisi del disseny de nous TADs a partir d'altres TADs existents; estudi de les consideracions que afecten al disseny de llibreries de col·leccions i presentació d'algunes llibreries existents ( Java Collections Framework, Java Data Structures Library, ...).

Amunt

Disseny d'estructures de dades PDF

Amunt

El suport principal dels mòduls són els apunts propis de l'assignatura, que es distribuiran segons els canals habituals de la UOC. A més, l'assignatura disposa de Material Associat que es distribueix de la següent manera:

D'una banda, les classes de l'esmentada jerarquia estan implementades en Java; aquesta implementació està accessible a l'espai Recursos de l'aula de l'assignatura. La llibreria també conté el codi font dels exemples que apareixen als materials didàctics.

Addicionalment, a l'espai Recursos de l'aula (apartat "Eines i elements de suport") trobareu tant material bàsic de l'assignatura com material complementari (com són PACs i exàmens d'altres cursos).

Al calendari de l'aula podreu trobar Guies d'Estudi per cadascun dels mòduls didàctics de l'assignatura. Aquestes guies proposen la pauta d'estudi recomanada i indiquen quins exercicis de PACs i exàmens de semestres anteriors estan més relacionats amb el temari del mòdul.

Per a dur a terme la pràctica de l'assignatura (que es presenta més avall), es requereix el programari Java que un cop instal·lat en la màquina proporciona l'entorn per fer la part pràctica de l'assignatura. Aquest programari el rebeu en el DVD de
programari lliure que rebeu a la tramesa. És imprescindible que us instal.leu una versió del JDK 1.5 o posterior.

A més del JDK, és recomanable que us acostumeu a fer servir un entorn integrat de desenvolupament (IDE), que us facilitarà molt el desenvolupament, sobretot quan mica en mica aneu abordant projectes més voluminosos (com per exemple la pràctica de l'assignatura). En aquest sentit, al DVD de programari lliure hi trobareu l'IDE de codi obert Eclipse; i a l'espai Recursos (apartat "Eines i elements de suport") de l'aula hi trobareu un tutorial que us explicarà com fer-lo anar.

No és obligatori que feu servir l'Eclipse, ni tan sols és obligatori que feu servir cap IDE; únicament amb el JDK en teniu prou. Ara bé, sí que us recomanem que, sobretot de cara a la pràctica, feu servir un IDE. I entre les diferents posibbilitats que teniu, l'Eclipse sembla una bona opció. L'ús d'un IDE us aproparà més a un entorn real de programació com el que podreu trobar en el món professional.

Amunt