Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

ScalaのEnumerationは使うな Scalaで列挙型を定義するには AntiPattern Published 29 June 2012 ScalaのEnumerationは使いにくい Scalaには列挙型としてEnumerationが用意されているが、以下の理由で使いにくい。 値にメソッドを定義できない DNAというEnumerationを定義しても、個々の値は、DNA.Value型として扱わなければならないため、コードが不自然になる。 Enumerationを使ったコード例 object DNA extends Enumeration { val A, C, G, T, N = Value } val base : DNA.Value = DNA.A また、DNA.Value型を拡張することが許されていないので、ラベルとしての機能しか持たせることができない。 解決策 Sca
Mark Harrah 著 Eugene Yokota 訳 はじめに 値クラス (value class) は実行時のオブジェクトの割り当てを回避するための Scala の新しい機構だ。 これは新たに定義付けされる AnyVal のサブクラスによって実現される。 これは SIP-15 にて提案された。 以下に最小限の値クラスの定義を示す: これはただ1つの、public な val パラメータを持ち、これが内部での実行時のデータ構造となる。 コンパイル時の型は Wrapper だが、実行時のデータ構造は Int だ。 値クラスは def を定義することができるが、val、var、または入れ子の trait、class、object は許されない:
Scalaでシングルトンといえば、object型でしょう。実は、「はい それで終わり」ではありません。今日はそんな話。 object Singleton { println("Construct") val name = "SINGLETON" } println(Singleton.name) jadるとこんな感じ。 public final class Singleton$ implements ScalaObject { private final String name = "SINGLETON"; public String name() { return name; } public static final Singleton$ MODULE$ = this; static { new Singleton$(); } // 上記は public static final Si
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く