Programació Orientada als Objectes [104389]
Serrat Gual, Joan
Gomez Bigorda, Lluis
Universitat Autònoma de Barcelona. Facultat de Ciències

Título variante: Object-Oriented Programming
Título variante: Programación Orientada a los Objetos
Fecha: 2019-20
Resumen: Una de les metodologies més exteses de disseny i programació és la orientada a objectes, segons la qual un software s'organitza en classes que contenen mètodes (procediments) i atributs (dades). Les instàncies o objectes d'aquestes classes s'envien missatges les unes a les altres (fan "trucades" a mètodes d'altres objectes) aconseguint aixi la funcionalitat desitjada. A part del concepte de classe, tres altres elements fonamentals són l'herència, la composició i la separació de les parts pública i privada de les classes. Aquests elements son doncs necessàris per a la programació OO, però no suficients: cal saber com utilitzar-los per arribar a solucions que siguin fàcilment extensibles en el futur, ja que una llei del software és que els canvis són inevitables. Existeixen una serie de principis de disseny o heurístiques que ens diuen com s'han d'emprar aquests elements per tal d'aconseguir-ho. I sobre ells encara, es construeixen els patrons de disseny, que son solucions a nivell de disseny OO a problemes recurrents, que apareixen sovint en resoldre problemes aparentment independents. En aquesta assignatura s'introdueixen i es practiquen els conceptes OO aixi com els principis i patrons de disseny. L'aprenentatge gira al voltant d'un projecte ---la pràctica--- en que és necessari aplicar tots els temes explicats per tal de dissenyar i implementar una aplicació de software a partir d'un enunciat que fa el paper de document de requeriments. Pel context de la assignatura, el projecte cau en el camp de l'aprenentatge computacional (machine learning). Els llenguatges de programació utilitzats a la assignatura seran Python principalment per que es en el que es farà el projecte, però tambe Java que utilitzarem en alguns exercicis i suporta millor els conceptes d'orientació a objecte. Així, podrem comparar com uni altre els implementa i en quin grau.
Resumen: Una de las metodologías más extendidas de diseño y programación es la orientada a objetos, según la cual un software se organiza en clases que contienen métodos (procedimientos) y atributos (datos). Las instancias u objetos de estas clases se envían mensajes unas a otras (hacen "llamadas" a métodos de otros objetos) consiguiendo así la funcionalidad deseada. Aparte del concepto de clase, tres otros elementos fundamentales son la herencia, la composición y la separación de las partes pública y privada de las clases. Estos elementos son pues necesarios para la programación OO, pero no suficientes: hay que saber cómo utilizarlos para llegar a soluciones que sean fácilmente extensibles en el futuro, ya que una ley del software es que los cambios son inevitables. Existen una serie de principios de diseño o heurísticas que nos dicen cómo emplear estos elementos con el fin de conseguirlo. Y sobre ellos todavía, se construyen los patrones de diseño, que son soluciones a nivel de diseño OO a problemas recurrentes, que aparecen a menudo en resolver problemas aparentemente independientes. En esta asignatura se introducen y se practican los conceptos OO así como los principios y patrones de diseño. El aprendizaje gira en torno a un proyecto --- la práctica --- en que es necesario aplicar todos los temas explicados para diseñar e implementar una aplicación de software a partir de un enunciado que hace el papel de documento de requerimientos. Por el contexto de la asignatura, el proyecto cae en el campo del aprendizaje computacional (machine learning). Los lenguajes de programación utilizados en la asignatura serán Python principalmente por que es en el que se hará el proyecto, pero también Java que utilizaremos en algunos ejercicios y soporta mejor los conceptos de orientación a objeto. Así,podremos comparar cómo uni otro los implementa y en qué grado.
Derechos: Aquest document està subjecte a una llicència d'ús Creative Commons. Es permet la reproducció total o parcial, la distribució, la comunicació pública de l'obra i la creació d'obres derivades, fins i tot amb finalitats comercials, sempre i quan es reconegui l'autoria de l'obra original. Creative Commons
Lengua: Català, anglès, castellà
Titulación: Matemàtica Computacional i Analítica de Dades [2503740]
Plan de estudios: Grau en Matemàtica Computacional i Analítica de Dades [1403]
Documento: Objecte d'aprenentatge



Català
4 p, 103.0 KB

Anglès
4 p, 101.3 KB

Castellà
4 p, 102.5 KB

El registro aparece en las colecciones:
Materiales académicos > Guías docentes

 Registro creado el 2019-07-12, última modificación el 2023-01-28



   Favorit i Compartir