powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Скрипты в .NET приложении
11 сообщений из 36, страница 2 из 2
Скрипты в .NET приложении
    #38381355
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pempА как влияет оптимизация алгоритма на скорость компиляции?
Оптимизация кода, ровно как и его рефакторинг, нередко приводят к уменьшению итогового объема. Как следствие, скорость компиляции может варьироваться от большего значения к меньшему.

pempСобственно потому я сейчас и рассматриваю все предложенные и не предложенные варианты. хотя на рослине, между делом, рабочий движок сделал, полностью удовлетворяющий требованиям, за исключением отладчика. Но что-то подсказывает, что есть подводные камни.
Ежики кололись, пугались, но продолжали есть кактус...
...
Рейтинг: 0 / 0
Скрипты в .NET приложении
    #38381886
pemp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУОптимизация кода, ровно как и его рефакторинг, нередко приводят к уменьшению итогового объема. Как следствие, скорость компиляции может варьироваться от большего значения к меньшему.
хорошая фраза для учебника, но на практике имеем метод с одним пробегом по строке и парой строчек с вызовом StringBuilder который первый раз вместе с JIT выполняется 3мс, последующие 0мс и при первом вызове из XSLT 700мс Если тут может помочь оптимизация, то после нее код должен выполнятся за отрицательное время.

МСУЕжики кололись, пугались, но продолжали есть кактус...
Может и кактус, но полноценный скриптовый движок с проверкой синтаксиса и зачатком отладчика набросал за пару кофебрейков, можно сказать получил уже приемлемый результат, еще даже не приступая к решению задачи. На мой взгляд глупо не исследовать такие возможности только по причине того, что уже есть какой-то любимый инструмент.
...
Рейтинг: 0 / 0
Скрипты в .NET приложении
    #38381938
Фотография tAZAR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pemp,

Почему бы при написании и тестировании скрипта не компилировать его каждый раз, а во время выполнения приложения загружать уже сохраненную скомпилированную версию? Проблемы с постоянной компиляцией уйдут, и не будете одинаковые сборки плодить при каждом запуске скриптов.
...
Рейтинг: 0 / 0
Скрипты в .NET приложении
    #38382007
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pempхорошая фраза для учебника, но на практике имеем метод с одним пробегом по строке и парой строчек с вызовом StringBuilder который первый раз вместе с JIT выполняется 3мс, последующие 0мс и при первом вызове из XSLT 700мс Если тут может помочь оптимизация, то после нее код должен выполнятся за отрицательное время.
Учебник учебнику рознь. Оптимизируй, кешируй, выноси в отдельный домен. Для мне первые 700мс не проблема.

pempМожет и кактус, но полноценный скриптовый движок с проверкой синтаксиса и зачатком отладчика набросал за пару кофебрейков, можно сказать получил уже приемлемый результат, еще даже не приступая к решению задачи. На мой взгляд глупо не исследовать такие возможности только по причине того, что уже есть какой-то любимый инструмент.
Может и кактус. Но неумелое обращение мартышки с гранатой порой приводят к печальным последствиям. Если тебя прельщает такая вероятность, продолжай дальше аккуратно расставлять себе грабли. На мой взгляд глупо использовать какие-то инопланетные поделки, когда кругом полно нормальных штатных инструментов.
...
Рейтинг: 0 / 0
Скрипты в .NET приложении
    #38382148
pemp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tAZARПочему бы при написании и тестировании скрипта не компилировать его каждый раз, а во время выполнения приложения загружать уже сохраненную скомпилированную версию?

Этот вариант тоже прорабатывается, с ним просто все понятно и нет технических вопросов. Здесь вопросы сугубо развертывания и удовлетворения целевой аудитории. Задачи для скриптов разноплановые, какие-то ближе к плагинам, какие-то ближе к конфигам, есть задачи которые сделал один раз и забыл, есть требующие постоянной обработки напильником. Еще есть две категории конечных пользователей: программисты. и не программисты, но технические специалисты. С первыми все просто, им нужна только точка входа и документация. здесь тот же MEF 100% покрывает задачу, но их меньшинство. Для большинства же идеальный вариант иметь скрипт в тексте. чтобы можно было нажать кнопку в приложении, посмотреть результат, поправить скрипт, ctr+s и снова нажать кнопку в приложении итд. если билдить сборки такая доводка выйдет в разы дольше. + учить людей пользоваться студией, кому-то все это ставить прописывать пути итп мелочи, но в масштабах как уже говорил такие мелочи набегают на серьезные затраты, тут нужно несколько раз взвесить все варианты прежде чем делать выбор в пользу конкретной реализации.

К слову о "инопланетной поделке", на текущий момент планируется что эта поделка будет основным компилятором C# 6.0. а большинство из готовых сторонних скриптовых движков с которыми я ознакомился - заброшенные проекты.
...
Рейтинг: 0 / 0
Скрипты в .NET приложении
    #38382235
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pempК слову о "инопланетной поделке", на текущий момент планируется что эта поделка будет основным компилятором C# 6.0. а большинство из готовых сторонних скриптовых движков с которыми я ознакомился - заброшенные проекты.
Это еще вилами по воде писано, да и у MS полно тухлых проектов, которые закрыли по той или иной причине. Не нужно бежать впереди паровоза, дай ему сначала разогнаться. А то получится как с сильверлайтом - хотели побороть флеш и завоевать мир, а оказались у разбитого корыта.
...
Рейтинг: 0 / 0
Скрипты в .NET приложении
    #38382267
Фотография tAZAR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pempДля большинства же идеальный вариант иметь скрипт в тексте. чтобы можно было нажать кнопку в приложении, посмотреть результат, поправить скрипт, ctr+s и снова нажать кнопку в приложении итд. если билдить сборки такая доводка выйдет в разы дольше.
Компиляция для запуска 1 скрипта во время разработки - это не задача, являющаяся высоко нагруженной или узким местом, нет смысла экономить на компиляции.
А вот последующие запуски пользователем уже оптимизируются понятным способом - сохранением готовой сборки.
Студия тоже не нужна, есть неплохие редакторы с подсветкой синтаксиса, к которым даже прикручивается полноценный intelli-sence. Примеры реализации и некоторые компоненты можно найти в SharpDevelop.

Скриптовый язык даст 1 значимый плюс: разграничение доступа к компонентам системы. Но он имеет и минус: настройка этого самого доступа, сложности при интеграции.

C# сборка же может получить доступ к любым типам из референсов или через рефлексию. Выполнение в отдельных доменах, кстати, приводит к проблемам в WinForms (хэндлы окон без напильника через домены не прокидываются).
Когда был похожий проект - реализовали дизайнер форм в отдельном приложении, использовали разработку пользовательского кода на C#, дизайнер генерил CodeDom, все это переваривалось в 1 исходник и компилилось. Клиент пользовался готовыми сборками, но можно было и на лету что-нибудь написать и выполнить. Все это интересно и кажется гибким. Но я лично лучше буду пользоваться студией :)

К чему я это все:
Скрипты для пользователей? Учить студии? Их в любом случае придется чему-то учить, какой бы язык не был выбран (не считая ваш API).
Для пользователей, которых не хочется долго учить, лучший выход - это конструктор процессов.
...
Рейтинг: 0 / 0
Скрипты в .NET приложении
    #38405623
Фотография badboychik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А как написать и подключить свой язык, например совместимый с 1С - чтоб на русском и без строгой типизации?
...
Рейтинг: 0 / 0
Скрипты в .NET приложении
    #38405723
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
badboychikА как написать и подключить свой язык, например совместимый с 1С - чтоб на русском и без строгой типизации?Например, вот исходники аддина, который добавляет в студию поддержку TypeScript: https://github.com/mrward/typescript-addin
...
Рейтинг: 0 / 0
Скрипты в .NET приложении
    #38405734
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тьфу, он под SharpDevelop.
...
Рейтинг: 0 / 0
Скрипты в .NET приложении
    #38754744
Spartak19
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите как сделать так чтобы парсинг с сайта выполнялся после выполнения javascript, в общем что то типо паузы, пока скрипт невыполнится, парсинг не делать. Знаю как сделать проверку на загрузку страницы в браузер, а вот с скриптом увы нет.
Код: vbnet
1.
2.
3.
While WebBrowser1.ReadyState <> WebBrowserReadyState.Complete
            Application.DoEvents()
        End While


Ждем пока загрузится страница, а как ждать чтобы выполнился яваскрипт?
...
Рейтинг: 0 / 0
11 сообщений из 36, страница 2 из 2
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Скрипты в .NET приложении
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]