Rejunte de Finales de [7507] Algoritmos y Programación 3 (Curso Fontela)- FIUBA
- Si cambian las lecturas obligatorias o presentaciones, también!
- Hacé un Pull Request o mandá un mail (fdelmazo at fi.uba.ar)
En los finales suelen tomar casi siempre el mismo patron de diseño, Double dispatch. Double dispatch es muy polemico y debatible (hay quienes dicen que no es un patron, otros que directamente perjudica el código, etc), por eso hay tan poca documentación online. Suele estar visto bajo el patron Visitor o Multiple-Dispatch. La mejor forma de aprenderlo es con el Ejemplo de Double Dispatch de Tomás Arjovsky sacado de la wiki de FIUBA.
Lo otro que siempre preguntan son los principios SOLID. Estos son 5 principios fundamentales de POO acuñados por Robert Martin ('Uncle Bob', uno de los capos de POO y del desarrollo agil).
SI NO SE HACEN TESTS UNITARIOS EN EL MODELO DEL FINAL NO SE APRUEBA!!!
Si o si leer:
Solo de cebado:
-
Este texto que resume single, double y multiple dispatch sirve bastante para entenderlo mejor.
-
Visitor Pattern: https://sourcemaking.com/design_patterns/visitor y https://youtu.be/pL4mOUDi54o
-
Double dispatch otro ejemplo: https://github.com/iluwatar/java-design-patterns/tree/master/double-dispatch
-
Articulos de Uncle Bob: http://butunclebob.com/ArticleS.UncleBob.PrinciplesOfOod