如何保存和重用Scala实用程序代码

Jac*_*ack 7 scala

在项目中收集和使用有用的Scala实用程序函数的好方法是什么.这里关注的是非常简单的独立功能,例如:

def toBinary(i: Int, digits: Int = 8) =
    String.format("%" + digits + "s", i.toBinaryString).replace(' ', '0')

def concat(ss: String*) = ss filter (_.nonEmpty) mkString ", "
concat: (ss: String*)String
Run Code Online (Sandbox Code Playgroud)

这个问题是基本的,我知道;-)但是,我知道总有一种最佳的方法可以做某事.例如,重用Scala交互式shell中的代码,Idea,Eclipse,有或没有SBT,将库放在GitHub等上,可以快速为这样一个简单问题引入最佳和非最佳方法.

Jes*_*per 11

您可能希望将此类方法放在包对象中.

您也可以将它们置于正常状态,object并在需要这些方法时导入对象中的所有内容.

object Utilities {
  def toBinary(i: Int, digits: Int = 8) = // ...
}

// Import everything in the Utilities object
import Utilities._
Run Code Online (Sandbox Code Playgroud)