Бизнес-правила для расчета цен - PullRequest
0 голосов
/ 21 апреля 2009

Бизнес, в котором я работаю, это онлайн-ритейлер, в настоящее время я работаю над проектом, который, помимо прочего, включает в себя расчет потребительских цен на продукты. Мы, вероятно, создадим сервис, который будет выглядеть примерно так ...

public interface IPriceService
{
  decimal CalculateCustomerPrice(ISupplierPriceProvider product);
}

public interface ISupplierPriceProvider
{
    decimal SupplierPrice { get; }
    string Currency { get; }
}

Не волнуйтесь, это будет выглядеть не совсем так, но вы получите общее представление. В нашей реализации этого сервиса будет ряд правил для расчета этой цены, эти правила могут изменяться довольно часто, и что мы, вероятно, хотим сделать когда-нибудь в будущем, это создать некоторый DSL для этих правил. На данный момент, хотя мы не совсем уверены, какие изменения на самом деле будут запрашивать отдел продаж и так далее, поэтому я думаю о размещении DLR и наличии файла сценария Iron Python или Iron Ruby, который содержит большую часть расчета цены. Таким образом, мы можем быстро обновить правила расчета цены, а также понять, какой тип DSL нужен деловым людям. Звучит ли это как нормальная идея, а также есть ли у кого-нибудь ссылки / статьи / руководства о том, как разместить DLR и как файлы сценариев взаимодействуют с объектами CLR и возвращают значения?

1 Ответ

1 голос
/ 21 апреля 2009

Это определенно звучит для меня как нормальная идея. Вы можете тривиально получить доступ к внутренним объектам CLR (объектам и возвращаемым значениям) из IronPython, я не знаю о IronRuby. Главы 1 и 7 IronPython в действии доступны онлайн и, вероятно, будут полезны. В блоге Learning Python .

также есть учебник по стилю "hello world".
...