Приготовление блюд в Java - PullRequest
21 голосов
/ 19 июня 2009

Существуют ли какие-либо библиотеки с открытым исходным кодом для представления кулинарных единиц, таких как чайная ложка и столовая ложка в Java?

Я нашел только JSR-275 (https://jcp.org/en/jsr/detail?id=275), который великолепен, но не знает о кулинарных единицах.

Ответы [ 4 ]

13 голосов
/ 19 июня 2009

JScience является расширяемым, поэтому вы должны иметь возможность создать подкласс javax.measure.unit.SystemOfUnits. Вы создадите несколько открытых статических окончательных объявлений, таких как:

public final class Cooking extends SystemOfUnits {
  private static HashSet<Unit<?>> UNITS = new HashSet<Unit<?>>();

  private Cooking() {
  }

  public static Cooking getInstance() {
    return INSTANCE;
  }
  private static final Cooking INSTANCE = new SI();

  public static final BaseUnit<CookingVolume> TABLESPOON = si(new BaseUnit<CookingVolume>("Tbsp"));

  ...

   public static final Unit<CookingVolume> GRAM = TABLESPOON.divide(1000);

}

public interface CookingVolume extends Quantity {
  public final static Unit<CookingVolume> UNIT = Cooking.TABLESPOON;
}

Определить другие единицы и преобразования довольно просто, если вы знаете, каковы коэффициенты преобразования.

1 голос
/ 11 октября 2016

Боюсь, мы не можем помочь вам с JSR-275, поскольку он был отклонен, но JSR-363 только что вышел в финал в сентябре, так что если у вас есть отличная идея для таких систем, как "Единицы приготовления", пожалуйста, просто сообщите нам в UoM-Systems .

1 голос
/ 19 июня 2009

Это может быть полезно: JUnitConv . Это Java-апплет для преобразования единиц (включая единицы приготовления), но он лицензирован по GPL, поэтому вы можете загрузить исходный код и адаптировать соответствующие части для своего собственного использования.

С другой стороны, похоже, что нет ничего сложного в создании класса CookingUnits, совместимого с JSR 275. (Это то, что я бы сделал)

1 голос
/ 19 июня 2009

Полагаю, вы можете разобрать вики-страницу для измерений приготовления: Веса и меры приготовления

В нем все меры организованы в виде таблиц, поэтому их довольно легко разобрать.

...