Elisy
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Проект Elisy .Net Bridge (1C.Net) Цели проекта Elisy .Net Bridge состоят в следующем:- Обеспечить быстрое подключение существующих .Net-компонентов и приложений к 1С:Предприятие;
- Существенно расширить объектную модель 1С:Предприятие стандартными классами .Net framework;
- Существенно расширить возможности программирования на 1С:Предприятие;
- Популяризировать .Net framework среди разработчиков 1С:Предприятие. Показать егоэффективность и рациональность использования.
Близкие аналоги Традиционно в 1С существуют следующие аналоги, расширяющие функциональность 1С: Проект 1С++ (http://1cpp.ru): ориентирован толькона версию 1С 7.7, которая морально устаревает после выхода версий 8.1 и 8.2. В отличиеот него .Net Bridge поддерживает все современные версии 1С: 7.7/8.0/8.1/8.2. В 1С++за основу взяты C++ и система наследования классов. С++ уступает .Net-технологиипо скорости написания ПО и его отлаженности, также требует больше профессиональныхнавыков. C#/VB.Net –расширения для 1С (http://www.kb.mista.ru/article.php?id=56):до выхода Elisy .Net Bridge традиционным было написание плагинов для 1С по "технологиинаписания внешних компонент для 1С". Традиционный подход уступает подходу, принятомув .Net Bridge, ограниченным набором передаваемых типов. Например, невозможно передатьEnum, а также использовать типы .Net, не помеченные как ComVisible = true.В случае с Elisy .Net Bridge собственный механизм преобразования типов между 1Си .Net "прозрачный" и так не ограничен. COM-обращения: традиционно сложилось, что у каждого 1С-разработчика естьарсенал dll-библиотек, решающих узкий круг задач. Эти библиотеки написаны разнымиразработчиками, многие уже не поддерживаются. Например, обращение к системным функциямвыполняется через dynwrap.dll, шифрование – через capicom.dll, рисование через JScriptи т.д. .Net Framework через .Net Bridge в отличие от них предоставляет все функцииодним пакетом, опираясь на единую систему типов и стиль API. Основные возможности Ключевой библиотекой проекта является Elisy.NetBridge.dll. Она предоставляет следующиепреимущества:- Поддерживает создание объектов .Net из GAC и по полному пути к сборке;
- Поддерживает прямое обращение к свойствам и методам объектов .Net;
- Не требует атрибута ComVisible=true, назначенного классам .Net;
- Поддерживает типы Enum и производные;
- Обеспечивает развернутую информацию об ошибках;
- Свойства объектов .Net видны при отладке из конфигуратора 1C;
- Не требует предварительной регистрации через REGSVR32 и REGASM: можно обращатьсячерез функцию 1C ЗагрузитьВнешнююКомпоненту;
- Содержит логику для обращения к специфическим возможностям .Net framework: вызовстатических методов, обращение к статическим свойствам, обращение к индексным свойствам;
Ниже сравнивается код C# и соответствующий ему код скрипта 1С с использованием Elisy.Net Bridge: Код C# [code=csharp]private SeriesCollection getVolumeData() { SeriesCollection SC = new SeriesCollection(); Random myR = new Random(1); for(int i = 0; i < 1; i++) { Series s = new Series(); s.Name = "Volume"; double startPrice = 50; DateTime startDT = new DateTime(2000,1,1); for(int b = 0; b < 75; b++) { Element e = new Element(); e.XDateTime = startDT; startDT = startDT.AddDays(1); e.YValue = myR.Next(100); s.Elements.Add(e); } SC.Add(s); } return(SC); } [/code] Код 1С:Предприятие [code=text]Function getVolumeData() SC = net.New("dotnetCHARTING.WinForms.SeriesCollection"); myR = net.New("System.Random", 1); for a = 0 to 0 do s = net.New("dotnetCHARTING.WinForms.Series"); s.Name = "Volume"; startPrice = 50; startDT = net.New("System.DateTime", 2000, 1, 1); for b = 0 to 74 do e = net.New("dotnetCHARTING.WinForms.Element"); e.XDateTime = startDT; startDT = startDT + 1*60*60*24; e.YValue = myR.Next(100); s.Elements.Add(e); enddo; SC.Add(s); enddo; return SC; EndFunction[/code] История создания Компонент Elisy .Net Bridge существует уже около года. За это время накоплены положительныеотзывы от разработчиков, использующих компонент на практике. Исторически выпускрелизов происходил следующим образом:- 2 Апреля 2009 вышла первая альфа-версия Elisy .Net Bridge;
- 5 Мая 2009 вышел релиз первой версии компонента;
- Май 2009 – сентябрь 2009 выпущены версии 2.1-2.3;
- 17 октября выпущена утилита LinqTo1CSQL для визуализации внутренней структуры данных1С и прямого доступа к ним;
- 2 ноября 2009 появилась альфа-версия 3й версии компонента;
- 16 января 3я версия перешла в бета-стадию;
Лицензирование и цены Компонент Elisy .Net Bridge является платным компонентом с бесплатной ознакомительнойверсией. Ознакомительная версия не накладывает никаких ограничений на функциональность.Существующая система лицензирования предполагает приобретение отдельной лицензиина каждый компьютер. Цена колеблется от 50 до 9 Euro в зависимости от числа копийи партнерского статуса. Факты и результаты За 9 месяцев существования проекта было выпущено 4 релиза компонента Elisy .NetBridge (версии 1, 2.1, 2.2, 2.3), а 3я версия находится в бета-стадии; Выпущена бета-версия LinqTo1C-обработки, которая генерирует dbml-файлы для 1С идает возможность прямого обращения к базе данных 1С 8.x на MS SQL. Готовится выпускAsp.Net MVC –примера, поддерживающего такой доступ. Пользователями было скачано порядка 300 копий ознакомительной версии и около 600копий прикладных примеров; Были подготовлены развернутые статьи-примеры. Каждая из них вносит элементы новизныи актуальности. Охватывается практически весь .Net framework: Дополнительные ресурсы Перечень релизов и описаний изменений:1C:Enterprise forums Все статьи по Elisy .Net Bridge: richmedia.us Проект на Инфостарт: infostart.ru Источник: richmedia.us | Всего записей: 2 | Зарегистр. 01-12-2009 | Отправлено: 10:59 29-01-2010 | Исправлено: ShIvADeSt, 09:53 14-02-2010 |
|