Anar al contingut (clic a Intro)
UdG Home UdG Home
Tancar
Menú

Estudia a la UdG

Dades generals

Curs acadèmic:
2012
Descripció:
Orientació a objectes. Arbres i grafs. Esquemes algorísmics.
Crèdits:
6
Idioma principal de les classes:
Català
S’utilitza oralment la llengua anglesa en l'assignatura:
Gens (0%)
S’utilitzen documents en llengua anglesa:
Indistintament (50%)

Grups

Grup A

Durada:
Semestral, 2n semestre
Professorat:

Competències

  • Resolució de problemes i anàlisi crítica de resultats
  • Treballar en equip i de manera compromesa en el grup de treball.
  • Raonament crític
  • Motivació per la qualitat

Altres Competències

  • Domini de tècniques de disseny modular.
  • Comprensió de conceptes avançats d'orientació a objectes.
  • Aplicació de principis sòlids en el disseny de software.
  • Capacitat de raonar amb rigor respecte la correcció dels programes dissenyats.
  • Capacitat per a escriure i entendre especificacions formals de software.
  • Coneixement de tècniques de testeig i depuració de software.

Continguts

1. Disseny modular orientat a objectes

          1.1. Conceptes bàsics

                    1.1.1. Descomposició i abstracció

                    1.1.2. Formes d'abstracció

                    1.1.3. Indepèndencia de la representació

          1.2. Mòduls Funcionals vs Tipus de Dades

          1.3. Jerarquia de tipus

                    1.3.1. Herència vs Subtipatge

                    1.3.2. El principi de substitució

                    1.3.3. Sobreescriptura i Sobrecàrrega

                    1.3.4. Tipus aparent i tipus real

                    1.3.5. Assignació i lligam missatge-mètode

                    1.3.6. Polimorfisme

                    1.3.7. Genericitat

                    1.3.8. Covariància i Contravariància

          1.4. Ajuts per a entendre les implementacions

                    1.4.1. Funció d'abstracció

                    1.4.2. Invariant de la representació

          1.5. Herència

                    1.5.1. Bons i mals usos de l'herència

                    1.5.2. Compatibilitat de les especificacions Pre/Post

                    1.5.3. Mutabilitat

                    1.5.4. Composició vs Herència

          1.6. Exemples de disseny

2. Especificació i raonament formal

          2.1. Raonament inductiu

                    2.1.1. Recursivitat avançada

          2.2. Especificació equacional de Tipus de Dades

          2.3. Introducció als mètodes formals en el disseny d'algorismes

                    2.3.1. Problemàtica dels errors

                    2.3.2. Programar amb especificacions

                    2.3.3. Testeig vs Derivació/Verificació

                    2.3.4. Notació de Hoare

          2.4. Especificació formal d'operacions. Precondicions i postcondicions

          2.5. Derivació i verificació formal d'algorismes

                    2.5.1. Semàntica axiomàtica

                    2.5.2. Verificació de programes recursius

                    2.5.3. Construcció de programes per generalització

                    2.5.4. Transformació recursiu-iteratiu

                    2.5.5. Derivació i verificació de programes iteratius

Activitats

Tipus d’activitat Hores amb professor Hores sense professor Total
Prova d'avaluació 4,00 18,00 22,00
Tutories de grup 3,00 100,00 103,00
Total 7,00 118,00 125

Bibliografia

  • Liskov, Barbara, Guttag, John (2000). Program Development in Java, : Abstraction, Specification, and Object-Oriented Design. Boston: Addison-Wesley.
  • Coad, Peter, Mayfield, Mark, Kern, Jonathan (1999). Java design, : building better apps and applets (2nd ed). Upper Saddle River, N.J.: Yourdon Press.
  • Preiss, Bruno R (2000). Data structures and algorithms with object-oriented design patterns in Java. New York: John Wiley and Sons.
  • Peña Marí, Ricardo (cop. 2004). Diseño de programas, : formalismo y abstracción (3ª ed). Madrid [etc.]: Prentice Hall.
  • Balcázar, José Luis (1993). Programación metódica. Madrid [etc.]: McGraw-Hill.
  • Martí Oliet, Narciso, Segura Díaz, Clara María, Verdejo López, José Alberto (cop. 2006). Especificación, derivación y análisis de algoritmos : ejercicios resueltos. Madrid [etc.]: Pearson Educación.
  • Franch Gutiérrez, Xavier (1999). Estructures de dades : especificació, disseny i implementació (4ª ed.). Barcelona: Edicions UPC.
  • Backhouse, Roland Carl (cop. 2003). Program construction, : calculating implementations from specifications. Chichester: Wiley.
  • Kubiak, Ryszard, Rudzinski, Roman, Sokolowski, Stefan (cop. 1991). An Introduction to programming with specifications, : a mathematical approach. London [etc.]: Academic Press.

Avaluació i qualificació

Activitats d'avaluació:

Descripció de l'activitat Avaluació de l'activitat %
Realització d'un examen de teoria i problemes Es valorarà cada exercici per separat. Les respostes es puntuaran en funció del grau d'assoliment de les competències. 100

Qualificació

L'avaluació consistirà en un examen de teoria i problemes.

L'estudiant tindrà la possibilitat de concertar hores de tutoria amb el professor durant tot el quadrimestre, on se li proporcionaran les indicacions necessàries per a l'autoaprenentatge, i els enunciats dels exercicis a desenvolupar per tal de preparar l'examen.

Observacions

Podeu trobar el material del darrer curs presencial a:

http://moodle.udg.edu/course/view.php?id=1599

Cal que entreu com a "visitant".

Assignatures recomanades

  • Introducció a les estructures de dades
  • Metodologia i tecnologia de la programació

Escull quins tipus de galetes acceptes que el web de la Universitat de Girona pugui guardar en el teu navegador.

Les imprescindibles per facilitar la vostra connexió. No hi ha opció d'inhabilitar-les, atès que són les necessàries pel funcionament del lloc web.

Permeten recordar les vostres opcions (per exemple llengua o regió des de la qual accediu), per tal de proporcionar-vos serveis avançats.

Proporcionen informació estadística i permeten millorar els serveis. Utilitzem cookies de Google Analytics que podeu desactivar instal·lant-vos aquest plugin.

Per a oferir continguts publicitaris relacionats amb els interessos de l'usuari, bé directament, bé per mitjà de tercers (“adservers”). Cal activar-les si vols veure els vídeos de Youtube incrustats en el web de la Universitat de Girona.