Общие вопросы по разработке > Какая версия C# используется в АД?

Общие вопросы по разработке в Альфа-Директ 4. Обсуждение разработки пользовательских индикаторов, стратегий.
BugsDigger
Сообщения: 533
Зарегистрирован: 11 ноя 2018, 17:11
Благодарил (а): 21 раз
Поблагодарили: 91 раз

Какая версия C# используется в АД?

Непрочитанное сообщение BugsDigger » 21 мар 2019, 17:37

Привет всем.
Собственно, subj: какая версия C# используется в АД?
Просто языковые фичи С#7 не работают...
И (<с наивным видом>), почему не использовать последнюю версию C#?

ensh
Сообщения: 218
Зарегистрирован: 28 июн 2017, 13:56
Благодарил (а): 4 раза
Поблагодарили: 39 раз

Re: Какая версия C# используется в АД?

Непрочитанное сообщение ensh » 24 мар 2019, 12:17

В терминале используется net.4.0. В стратегиях используется встроенный в net компилятор скриптов, соответственно, тоже net 4.0.
Впрочем, использование 4.5 тоже не сильно продвинет ситуацию.
Насколько фишки C#5 и C#7 встроены в компилятор net и не используют поддержку Visual Studio нужно гуглить.

BugsDigger
Сообщения: 533
Зарегистрирован: 11 ноя 2018, 17:11
Благодарил (а): 21 раз
Поблагодарили: 91 раз

Re: Какая версия C# используется в АД?

Непрочитанное сообщение BugsDigger » 24 мар 2019, 12:31

Привет, ensh, спасибо за информацию.
А почему, собственно, не используют последнюю версию?.. Казалось бы, д.б. совместимо, перекомпилять делов-то...

ensh
Сообщения: 218
Зарегистрирован: 28 июн 2017, 13:56
Благодарил (а): 4 раза
Поблагодарили: 39 раз

Re: Какая версия C# используется в АД?

Непрочитанное сообщение ensh » 24 мар 2019, 13:09

Для обратной совместимости, типа есть пользователи у которых старая винда и старый фреймворк.

Поднять фрейморк - новая волна гнева, про убогий терминал, уволить всех тестировщиков и программистов - посмели поднять версию фреймворка, попробуй скачай и разберись какая нужна :lol:

Открою тссссс... секрет, версия виртуальной машины clr net c 2012 года не изменилась - вся та же 4-я, так что все эти фреймворки для программистов, а не для пользователей. Пользователи получают опосредованную выгоду - где-то стандартный алгоритм оптимизировали, где-то более корректно старую фичу реализовали, прикрутили новую, чтобы программистам меньше писать, и тд и тп... новые баги, старые косяки...

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

BugsDigger
Сообщения: 533
Зарегистрирован: 11 ноя 2018, 17:11
Благодарил (а): 21 раз
Поблагодарили: 91 раз

Re: Какая версия C# используется в АД?

Непрочитанное сообщение BugsDigger » 24 мар 2019, 14:30

Я прото наткнулся, что tuple нельзя "из коробки" сделать ключом в dictionary (хэша нету у него и сличения на равенство, как в последних версиях) и именованных элементов в tuple тоже нету ...
Абыдна, однако.
Переживу, конечно.

ensh
Сообщения: 218
Зарегистрирован: 28 июн 2017, 13:56
Благодарил (а): 4 раза
Поблагодарили: 39 раз

Re: Какая версия C# используется в АД?

Непрочитанное сообщение ensh » 24 мар 2019, 15:40

давно уже пора писать свои сборки с классами и подключать к скриптам стратегий

BugsDigger
Сообщения: 533
Зарегистрирован: 11 ноя 2018, 17:11
Благодарил (а): 21 раз
Поблагодарили: 91 раз

Re: Какая версия C# используется в АД?

Непрочитанное сообщение BugsDigger » 24 мар 2019, 17:27

ensh писал:

> писать свои сборки с классами и подключать

Пока не дошел до этого. Видимо, надеюсь обойтись доступными встроенными средствами...

А, кстати, как? Так же, как "инжекция" AD-сборок? (Кстати, а почему не все они доступны сразу?)
Я просто не очень представляю нетовскую механику. Можно ли подключить любую сборку и использовать ее, даже ту, что не использовалась при компиляции головного AD.exe? (Скорее всего ответ - да :))

ensh
Сообщения: 218
Зарегистрирован: 28 июн 2017, 13:56
Благодарил (а): 4 раза
Поблагодарили: 39 раз

Re: Какая версия C# используется в АД?

Непрочитанное сообщение ensh » 25 мар 2019, 12:13

Сборку можно загрузить сразу - без проблем, а вот ее использование нужно прописывать в секции using или писать в коде и компилятор скрипта на это будет ругаться. Поэтому нужен небольшой финт в секции инициализации.
Можно грузить сборку и рефлекшеном доставать из нее классы, как тоже предлагалось.
По вашему кейсу, можно ограниченную порцию данных (два три поля) превратить в строку ииспользоват ее в качестве уникального ключа, если без сборок.

BugsDigger
Сообщения: 533
Зарегистрирован: 11 ноя 2018, 17:11
Благодарил (а): 21 раз
Поблагодарили: 91 раз

Re: Какая версия C# используется в АД?

Непрочитанное сообщение BugsDigger » 25 мар 2019, 18:53

> рефлекшеном доставать

ОК, понятно, спасибо за пояснение.

> строку использовать в качестве уникального ключа

Да, так и делаю.

AP_Bor
Сообщения: 170
Зарегистрирован: 18 дек 2017, 08:18
Благодарил (а): 12 раз
Поблагодарили: 8 раз

Re: Какая версия C# используется в АД?

Непрочитанное сообщение AP_Bor » 26 мар 2019, 05:10

Доброго времени суток
BugsDigger » 24.03.2019, 17:27 писал(а):А, кстати, как?
Пока был занят, что-то пропустил.
Не пойму, что и куда подключаем, думал с этим вопросов уже нет.
Можно подробней, с примером.
► Показать
С наилучшими пожеланиями


Вернуться в «Общие вопросы по разработке»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 18 гостей