如何在scala项目中组织类?

时间:2014-03-01 11:37:11

标签: scala

在Java中,我习惯将类放在包含模板domain.company.project.module.ets的长信息名称的包中,并用于以下名称:

  • ch.qos.logback.classic.net
  • org.hibernate.cache
  • com.google.common.collect

但是在 akka sbt 项目的来源中,包含简单名称的包中有很多类:

  • akka.actor
  • SBT

并非全部。类内有很多类。按类别我也指所有可能组合的对象和特征。在特征内部有对象,在类内部有特征等。但是嵌套的级别总是1 (或者我应该说2?)

显然,还有另一种课堂组织方法。我想知道你是否可以给我一个如何在scala中命名包以及何时将类放在彼此内的提示?

1 个答案:

答案 0 :(得分:3)

您好我会建议您阅读第7章scala for the greatient is free free here http://typesafe.com/resources/free-books

作为摘要的关键点,如书中所述:

- Packages nest just like inner classes.
- Package paths are not absolute.
- A chain x.y.z in a package clause leaves the intermediate packages x and x.y invisible.
- Package statements without braces at the top of the file extend to the entire file.
- A package object can hold functions and variables.
- Import statements can import packages, classes, and objects.
- Import statements can be anywhere.
- Import statements can rename and hide members.
- java.lang, scala, and Predef are always imported.