2

注: これは、ThreeTen バックポートを JSR-310 と比較するの複製ではありません。私の質問はより具体的です。

私の会社では、レガシー コードのリファクタリングに ThreeTen-Backport の使用を DevOps に許可しようとしています (これは、WebLogic 10.3.6.0 のデプロイの制約により、Java 6 からアップグレードできず、どのバージョンの Java も使用できません)。バージョン 1.2.1 以降の JodaTime)。

ThreeTen-Backport の Github ページで、DevOps がこのステートメントに問題を抱えていることがわかります。

バックポートはJSR-310の実装ではありません。多くの不要なフープを飛び越える必要があるためです。代わりに、これはユーザーが Java SE 6 および 7 で JSR-310 API をすばやく使用できるようにするための単純なバックポートです。

「実装ではない」とはどういう意味かと聞かれたら、説明できるようにする必要があります。ただし、実装という言葉には広い意味範囲が含まれている可能性があり、それが何を意味するのか、私自身も正確にはわかりません。

だから私の質問は、このような文脈では、実装とバックポートの意味は何ですか? JSR-310 は実装ではなくバックポートであるため、ThreeTen-Backport がJSR-310 の実装ではないのと同じ意味で、私が使用できるものの反例、つまり他の何かの実装はありますか? Java 6 用の JSR-310の実際の実装は、そのようなものが存在するとしたらどのようなものになり、ThreeTen-Backport とどう違うのでしょうか?

4

1 に答える 1

4

JSR 310: Date and Time APIは、 Java Community Process (JCP)によって制御される正式な仕様JSR-310 を含む JSR の実装には、テスト キットやその他のハードルに合格する必要があります。

JSR-310 の場合、JSR はJava 8 自体に統合されています。つまり、JSR を個別に実装することは不可能です。JDK 以外に JSR-310 のテスト キットはありません。したがって、JDK 自体の外部で JSR-310 を実装できるコードはありません。

したがって、ThreeTen-Backportは、実際には実装ではなく、JSR-310 仕様の実装に近いものです。「実装」はJSR-310 仕様を参照しています。

于 2015-06-29T17:04:57.393 に答える