Предположим, что у меня есть trait
в Scala
trait Connection {
def init(name: String)
def dispose
}
И я хочу создать класс, который его реализует. Но я также хочу называть его Connection
:
class Connection extends Connection {
// ....
}
Это не сработает. Конечно, я мог бы назвать trait
что-то по-другому, но оказалось, что соглашение об именах в Scala говорит, что я должен назвать черту как обычные классы, то есть без какого-либо префикса, который я бы использовал в С# (IConnection
где IConnection
будет interface
).
И в этом конкретном случае более подходящим является название Connection
для class
и trait
.
Или я пропустил что-то в соглашении по именованию Scala?