Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fanusaez/algoritmos3-fiuba
Trabajos Practicos materia Algoritmos y Programacion III - FIUBA
https://github.com/fanusaez/algoritmos3-fiuba
fiuba java oop oop-principles pharo solid-principles
Last synced: 7 days ago
JSON representation
Trabajos Practicos materia Algoritmos y Programacion III - FIUBA
- Host: GitHub
- URL: https://github.com/fanusaez/algoritmos3-fiuba
- Owner: Fanusaez
- Created: 2023-02-02T17:48:51.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2023-02-04T00:07:28.000Z (almost 2 years ago)
- Last Synced: 2024-12-18T21:17:24.205Z (7 days ago)
- Topics: fiuba, java, oop, oop-principles, pharo, solid-principles
- Language: StringTemplate
- Homepage:
- Size: 422 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Algoritmos y Programacion 3 Fiuba
Repositorio de trabajos prácticos de la materia Algoritmos y Programacion III (FIUBA), correspondiente a la cursada 2022.
## Programa Analítico
### Primera parte
- Programación orientada a objetos y prácticas metodológicas
- Resolución de problemas mediante objetos y mensajes.
- Diagramas de secuencia de UML. Comportamiento como noción central. Encapsulamiento. Polimorfismo (noción). Responsabilidades de los objetos. Uso en Smalltalk (ambiente Pharo).
- Implementación del comportamiento de objetos con clases usando diseño por contrato y pruebas unitarias como especificaciones.
- Excepciones básicas. Automatización de pruebas unitarias. Principios de construcción de pruebas unitarias. Implementación en Smalltalk y SUnit.
- Colaboraciones de objetos. Delegación y programación por diferencia. Relaciones entre clases: asociación y herencia. Diagrama de clases de UML. - - - Implementación en Smalltalk.
- Polimorfismo (profundización): Implementación en lenguajes con y sin chequeo estático e implementación en lenguajes sin clases. Interfaces en Java (noción).
- Java como lenguaje con verificación estática. Polimorfismo en Java, con herencia y con interfaces.
- Excepciones en general y excepciones chequeadas en Java.
- Atributos de clase. Métodos de clase. Encapsulamiento y visibilidad. Inicialización, construcción, asociación y composición. UML y modelado (clases, secuencias, paquetes, estados).
### Segunda parte- Calidad de código, buenas prácticas y temas avanzados
- Diseño orientado a objetos (noción). Refactorización. TDD. Uso de dobles de prueba (noción).
- Buenas prácticas de XP. Integración y delivery continuos (noción).
- Temas generales de diseño. Principios de diseño. Algunos patrones de diseño.
- Construcción de aplicaciones con interfaz de usuario gráfica. MVC como patrón arquitectónico. Experiencia de usuario y usabilidad. Java FX.## Trabajos Practicos
- [TP1](https://github.com/Fanusaez/Algoritmos3-Fiuba/tree/master/Tp1)
- [TP2 (1er Cuatri)](https://github.com/Fanusaez/TP2_algo3_algothief/tree/f217e298f4800c99080b53035948b8612e3ea99e)
- [TP2 (2do Cuatri)](https://github.com/Fanusaez/TP2-Algo3-GPS/tree/ea8907f76dcc635302e5789e1cd779df82751607)