как называется то, что я хочу?
так как количество анализируемых сетей увеличивается - то хочется сделать не через модули, а "по-взрослому"Выкинуть vb.net?
а на чём это лучше делать?
А так - на том языке, на котором удобнее вашему программисту.
проблема в том, что:
Methods or events that implement interface members cannot be declared 'Shared'.
можно как-то обойтись без интерфейса?
Module TestModule
Sub Main
Dim A As New Test(New TestMethodsA)
Dim B As New Test(New TestMethodsB)
A.f
B.f
End Sub
Public Interface ITestMethods
Sub f
End Interface
Public Class Test
Dim methods As ITestMethods
Public Sub f
methods.f
End Sub
Sub New(m As ITestMethods)
methods = m
End Sub
End Class
Public Class TestMethodsA
Implements ITestMethods
Public Sub f Implements ITestMethods.f
Console.WriteLine("F -> A")
End Sub
End Class
Public Class TestMethodsB
Implements ITestMethods
Public Sub f Implements ITestMethods.f
Console.WriteLine("F -> B")
End Sub
End Class
End Module
Зависит от того, нужно ли прямо этой программой парсить прайсы, и так же от того в каком виде эти прайс-листы. Если они текстовые, то можно быстро всё на питоне написать для начала. А так - на том языке, на котором удобнее вашему программисту.проблема не парсить, а то что появляется куча модулей/классов, хочется иметь класс, который параметризуется набором методов при создании
а на чём это лучше делать?На том языке, который хорошо знает ваш программист.
проблема не парсить, а то что появляется куча модулей/классов, хочется иметь класс, который параметризуется набором методов при созданииЭто не проблема в любом нормальном языке программирования.
хочется иметь класс, который параметризуется набором методов при созданииНу так в любом нормальном языке программирования объявляется один класс, который в своём конструкторе содержит код, который делает каждый объект данного класса подходящем для конкретного магазина.
После этого созданные объекты класса данного класса запихиваются в массив, а дальше как ты уже писал -
for shop in shoplist do; shop.method; done
Про бейсик ничего сказать не могу, можно ли создать там определение класса, а потом наплодить объектов данного класса, или нельзя. Может, там каждый Module уже сам по себе объект класса и его нельзя повторно создать.
В общем, выберете любой язык, на котором вашему программисту будет удобно - python, ruby, java, да хоть даже php. Не говоря уже про все более серьёзные языки.
Да всё там можно. Пусть курит мануалы по объектно-ориентированному программированию в VB.NET для новичков.
Оставить комментарий
Lord_Max
предисловие:- есть сети магазинов
- каждая сеть состоит из филиалов
- у любого филиала есть прайслист
- филиалы принадлежащие к одинаковой сети имеют одинаковый формат прайса
нужно обновить и распарсить все прайслисты
написано это всё на vb.net'е, каждая сеть магазинов это модуль (вроде бы это что-то типа статического класса например
само обновление делается так:
так как количество анализируемых сетей увеличивается - то хочется сделать не через модули, а "по-взрослому" и ещё хочется, чтобы обновление делалось примерно так:
Upd(!): сети магазинов отличаются друг от друга только парсером прайслиста