gpt4 book ai didi

scala - Scala中有什么方法可以将类代码拆分成多个文件吗?

转载 作者:行者123 更新时间:2023-12-01 23:16:53 25 4
gpt4 key购买 nike

我问这个问题有两个原因:
1.我想要更好的代码碎片,以方便每个功能级别的版本控制
2. 我患有注意力缺陷障碍,并且很难处理长代码,例如大类文件

为了解决这些问题,我曾经在 C++ 中使用 include 指令,在 C# 中使用部分类定义和手动定义的可折叠区域。 Scala 2.8 中有这样的东西吗?

我尝试在 NetBeans IDE 中使用编辑器折叠标记,但遗憾的是它在 Scala 编辑器中不起作用:-(

更新: 据我了解,Scala 中没有这样的设施。所以我想问:与 Scala 作者有任何联系的人,或者在他们的 Bugzilla 上有帐户(或者他们使用的任何东西)的人,向他们提出一个想法 - 他们可能应该考虑引入恕我直言,这样的东西(例如,我对 C# 区域和部分类很着迷,普通的旧包含看起来也像是一个方便的工具),通过简洁性使 Scala 变得更加美丽。

最佳答案

用特质来做怎么样?您可以这样定义它:

trait Similarity 
{
def isSimilar(x: Any): Boolean
def isNotSimilar(x: Any): Boolean = !isSimilar(x)
}

...然后你像这样使用它:

class Point(xc: Int, yc: Int) extends Similarity 
{
var x: Int = xc
var y: Int = yc
def isSimilar(obj: Any) =
obj.isInstanceOf[Point] &&
obj.asInstanceOf[Point].x == x
}

如果类 Point 更大,您可以将其进一步拆分为特征,从而得到您想要的划分。但请注意,我认为这是不可取的,因为除非您已经牢记在心,否则很难很好地概述您的代码。然而,如果你能以一种很好的方式打破它,你也许能够从中得到一些很好的、可重用的 block ,所以最终它可能仍然值得做。

祝你好运!

关于scala - Scala中有什么方法可以将类代码拆分成多个文件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3721196/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com