Scala, Design Patterns, Programming, Factory Pattern.
families of objects. The Options and Reader implementations are the following. abstract class Options { def getOptions(): String } class CsvOptions extends Options { override def getOptions(): String = "csv options specific for csv files" } class JsonOptions extends Options { override def