Obecnie robię moje pierwsze kroki w Scali, więc szukam najlepszych praktyk w zbliżaniu się do wspólnych problemów. Poniżej znajduje się kod, który nie działa, ale opisuje to, co chcę zrobić. Czy mógłbyś polecić najlepsze podejście do tego problemu?Scala ciąg wzorców pasujących do najlepszych praktyk
def resolveDriver(url: String) = {
url match {
case url.startsWith("jdbc:mysql:") => "com.mysql.jdbc.Driver"
case url.startsWith("jdbc:postgresql:") => "org.postgresql.Driver"
case url.startsWith("jdbc:h2:") => "org.h2.Driver"
case url.startsWith("jdbc:hsqldb:") => "org.hsqldb.jdbcDriver"
case _ => throw new IllegalArgumentException
}
}
Zobacz też [to pytanie] (http://stackoverflow.com/q/7586605/53013) na inny sposób, aby rozwiązać ten problem, jeśli dopasowaną częścią jest cały protokół. –