Skip to content

dcc-cc3002/money-dd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Double Dispatch en Scala: Money & MoneyBag | CC3002 – Metodologías de Diseño y Programación

Universidad de Chile

License: CC BY 4.0 Scala sbt Tests Status

Ejemplo mínimo para estudiar Double Dispatch en Scala (OOP puro). Modela dos jerarquías: Money y MoneyBag, donde la suma + se resuelve por double dispatch.

Contenidos

Requisitos

  • Scala 3.3.6
  • sbt 1.11.6

Estructura

src/
  main/scala/money/
    MoneyLike.scala     # interfaz común y contrato del double dispatch
    Money.scala         # valor atómico (monto + divisa)
    MoneyBag.scala      # bolsa de valores por divisa; normaliza sumas
  test/scala/money/
    MoneyTest.scala     # pruebas de Money
    MoneyBagTest.scala  # pruebas de MoneyBag

Uso rápido

Clonar y entrar al proyecto:

git clone https://github.com/dcc-cc3002/money-dd.git
cd money-dd

Compilar:

sbt compile

Ejecutar tests (munit):

sbt test

Ideas clave (qué observar)

  • MoneyLike.+ delega en that.addMoney/that.addMoneyBag1er dispatch.
  • Las implementaciones (Money, MoneyBag) deciden cómo combinar → 2º dispatch.
  • MoneyBag agrega por divisa y evita inspecciones de tipo.

Licencia

Este material se distribuye bajo la licencia Atribución 4.0 Internacional (CC BY 4.0).

About

Ejemplo educativo en Scala 3 que muestra cómo implementar Double Dispatch con Money y MoneyBag. Material de apoyo para CC3002 – Metodologías de Diseño y Programación (U. de Chile).

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages