Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

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

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)