Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
Насколько я понял сейчас набирает силу идея реализации программной "обертки" на скриптовых языках (типа python), а реализация прикладной логики- на языках низкого уровня (типа С++). Делал ли кто- нибудь такие проекты? Как впечатления? Логично предположить, что С++ в такой связке становится предпочтительнее С#? Есть ли какая- то книжка, статья, блог, канал youtube... где о подобном скрещивании можно почитать подробненько? Благодарю за обмен опытом! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 19:20 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
AlekseySQLНасколько я понял сейчас набирает силу идея реализации программной "обертки" на скриптовых языках (типа python), а реализация прикладной логики- на языках низкого уровня (типа С++). Ты уверен, что не наоборот?.. Если хочешь - вбей в гугль "1С" и хоть зачитайся. Там, правда, не питон, но тоже скриптовый язык. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 19:41 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, на 1с программировал примерно 13 лет... Но я не про многопользовательские СУБД, где скорость работы отдельного пользователя не важна (поэтому, кстати, в 1с нет и никогда не будет многопоточности). Да, в таких случаях и прикладную часть реализуют на скриптовом языке. Если же скорость работы приложения важна, то основной расчет реализуют на языках низкого уровня. Например, в том же python библиотеки написаны на языке С, чтобы шевелилось побыстрее. На вскидку могу предположить, что подобный подход позволяет быстро создать прототип приложения, который потом можно будет оптимизировать с помощью низкоуровневого языка в нужных местах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 20:52 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
AlekseySQLНапример, в том же python библиотеки написаны на языке С, чтобы шевелилось побыстрее. На вскидку могу предположить, что подобный подход позволяет быстро создать прототип приложения, который потом можно будет оптимизировать с помощью низкоуровневого языка в нужных местах. Так работает любой скриптовый язык - от PHP до LUA. И да, библиотеки для питона пишутся на С не от хорошей жизни и даже не чтобы шевелилось быстрее, а потому что иначе никак. Не могут скриптовые языки ни с чем взаимодействовать без нативной прокладки. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 21:04 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
AlekseySQLЕсли же скорость работы приложения важна, то основной расчет реализуют на языках низкого уровня. Например, в том же python библиотеки написаны на языке С, чтобы шевелилось побыстрее. На вскидку могу предположить, что подобный подход позволяет быстро создать прототип приложения, который потом можно будет оптимизировать с помощью низкоуровневого языка в нужных местах. Проблема в том, что любое приложение должно иметь ядро, которое, в том числе, будет порождать процессы (нити) и управлять ими. И это ядро так же является высоконагруженной частью приложения, и, желательно, его сразу иметь на компилируемом языке. Отсюда и возникает конструкция вроде 1С или Axapta. Есть скомпилированное ядро, если скриптовый язык, который может использовать как скомпилированные компоненты ядра, так и внешние компоненты, в том числе и скомпилированные. Иными словами, интерпретатору отдается средний слой, тогда как верхний и нижний остается прерогативой компиляторов. Такой подход как раз и позволяет легко оптимизировать что угодно, вынося это на нижний слой, без ущерба верхнему слою, который сразу компилируемый. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 21:10 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
ptr128Проблема в том, что любое приложение должно иметь ядро, которое, в том числе, будет порождать процессы (нити) и управлять ими. И это ядро так же является высоконагруженной частью приложения, и, желательно, его сразу иметь на компилируемом языке. Отсюда и возникает конструкция вроде 1С или Axapta. Есть скомпилированное ядро, если скриптовый язык, который может использовать как скомпилированные компоненты ядра, так и внешние компоненты, в том числе и скомпилированные. Иными словами, интерпретатору отдается средний слой, тогда как верхний и нижний остается прерогативой компиляторов. Такой подход как раз и позволяет легко оптимизировать что угодно, вынося это на нижний слой, без ущерба верхнему слою, который сразу компилируемый. Одно непонятно: зачем вы верхний слой отдаете компилируемым языкам? Недостатки вижу (нельзя выполнять код, введенный пользователем), а преимущества- нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 22:14 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
AlekseySQLНасколько я понял сейчас набирает силу идея реализации программной "обертки" на скриптовых языках (типа python), а реализация прикладной логики- на языках низкого уровня (типа С++). Вы опоздали лет на 15. В играх для описания квестов и сценариев давно используется Python или Lua. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 22:49 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
AlekseySQLДелал ли кто- нибудь такие проекты? Как впечатления? Логично предположить, что С++ в такой связке становится предпочтительнее С#? Фраза построена непонятно. Предпочтительнее .. чем? И не зависимо от ответа оба варианта будут никуда негодны. Микс С++/C# можно рассматривать как миграцию легаси. Или допиливание дот-нета до поддержки специфичного железа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 22:53 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
maytonAlekseySQLДелал ли кто- нибудь такие проекты? Как впечатления? Логично предположить, что С++ в такой связке становится предпочтительнее С#? Фраза построена непонятно. Предпочтительнее .. чем? И не зависимо от ответа оба варианта будут никуда негодны. Микс С++/C# можно рассматривать как миграцию легаси. Или допиливание дот-нета до поддержки специфичного железа. Я подразумевал такой смысл: если в проекте также используется язык сценариев, который берет на себя "редковыполняемую" часть проекта, то для "долговыполняемой" части нужно использовать более быстрый язык программирования. Поэтому связка python & C++ более разумна, чем связка python & С#. Да, и основное преимущество С#, как языка с более простым синтаксисом теряется, если там где нужен простой синтаксис используется еще более простой язык (python). Другими словами, С# с точки зрения сложности представляет собой нечто среднее между python и С++, и при подобном разделении проекта на две части он становится неудачным решением для обеих частей. p.s. Умею я холивары устраивать :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 23:13 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
AlekseySQLp.s. Умею я холивары устраивать :) бред. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2017, 23:38 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
AlekseySQLptr128Проблема в том, что любое приложение должно иметь ядро, которое, в том числе, будет порождать процессы (нити) и управлять ими. И это ядро так же является высоконагруженной частью приложения, и, желательно, его сразу иметь на компилируемом языке. Одно непонятно: зачем вы верхний слой отдаете компилируемым языкам? Недостатки вижу (нельзя выполнять код, введенный пользователем), а преимущества- нет. Потому что ядро, порождающее процессы и управляющее ими должно быть максимально быстрым. Делать его на интерпретаторе сродни тому, что делать ядро операционной системы на интерпретаторе. Ведь именно ядро будет обеспечивать для среднего слоя весь многопользовательский и мультизадачный сервис. Почему нельзя? Ввод пользователя вообще осуществляется на клиенте и приложению имеет косвенно отношение. Пусть пользователь, например, в веб-браузере что-то вводит. Если это будет интерпретируемый код и прав у пользователя достаточно, то ядро запустит этот код. Но запустит под своим контролем, не давая возможности повлиять ни на работоспособность ядра, ни на работоспособность прочих запущенных ядром процессов. Так что преимущество именно в том и заключается, что ядро не торомозит все приложение (так как быстрое) и обеспечивает изолированность и синхронизацию запущенных им процессов с интерпретатором (или даже разных интерпретаторами разных языков). Собственно говоря, ядро будет выступать в качестве сервера приложений для толстого клиента или для веб-сервера. Но с расширенными возможностями, имея возможность самому порождать процессы по различным событиям или по расписанию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 00:39 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovТы уверен, что не наоборот?..+1 maytonВы опоздали лет на 15. В играх для описания квестов и сценариев давно используется Python или Lua.+1, выносить как-то всю игровую логику на флагах или чем-то ещё в ядерную игровую механику - это мозгоубийство. А вот скриптовые языки поверх движка с этим справляются легко. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 05:36 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
Единственное, что интегрируется абсолютно со всем - это С. Из С++ можно наружу отдать С-интерфейсы, а из Сшарп - нет. Потому Сшарп здесь совсем не в тему. Интероперабельность только через ОЛЕ-прослойку, а она не везде "лезет". Делать пользовательскую логику на скриптовых языках придумали очень давно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 09:23 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
ptr128Потому что ядро, порождающее процессы и управляющее ими должно быть максимально быстрым. Почему вы считаете, что процессы должны порождаться и управляться в самом верху программного стека? Я думаю процессы должны создаваться и управляться по мере необходимости, т.е. в низовом коде. Иначе поломается инкапсуляция, и программа превратится в код- лапшу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 09:50 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
SiemarglЕдинственное, что интегрируется абсолютно со всем - это С. Из С++ можно наружу отдать С-интерфейсы, а из Сшарп - нет. Потому Сшарп здесь совсем не в тему. Интероперабельность только через ОЛЕ-прослойку, а она не везде "лезет". Делать пользовательскую логику на скриптовых языках придумали очень давно. Отдать c-интерфейсы наружу можно и из c# - готовить нужно уметь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 10:00 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
у связки ".NET/С# + скриптовый язык" есть такое преимущество перед связкой "С++ + скриптовый язык": скриптовый язык может быть скомпилирован в тот же CIL и далее JIT-ирован рантаймом дотнета в машинный код, то есть в итого скорость его исполнения будет такой же, как и у C#. есть куча готовых реализаций таких скриптовых языков - IronPython, IronRuby и т.д. если захочется "поскриптовать" на самом C# (или F#, C++/CLI, VB.NET, JScript.NET) - нет проблем: компиляторы - часть фреймворка, и можно встроить редактор скриптов (можно в простом текстбоксе) в свою программу - будет работать без всякой студии (вопрос отладки, конечно, отдельный), при этом интеграция скриптов с кодом на C# будет полной и беспрокладочной в обе стороны при большом желании можно соорудить транслятор со своего уникального языка в один из поддерживаемых дотнетом (+ конвертер позиции в коде (строка, колонка) из дотнетовского сообщения об ошибке компиляции для правильной подсветки ошибочного места уже в коде вашего языка) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 10:40 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
AlekseySQLptr128Потому что ядро, порождающее процессы и управляющее ими должно быть максимально быстрым. Почему вы считаете, что процессы должны порождаться и управляться в самом верху программного стека? Я думаю процессы должны создаваться и управляться по мере необходимости, т.е. в низовом коде. Иначе поломается инкапсуляция, и программа превратится в код- лапшу. С чего Вы взяли, что верх программного стека - это ядро системы? Стек растет снизу вверх, по крайней мере на Intel архитектуре, начиная с 8008. А структуру приложения я рисую сверху вниз, по порядку вызова. Потому что привык читать сверху вниз и справа налево, а не наоборот ) То есть, верхним уровнем я называю ядро, вызываемое из ОС, а нижним - библиотеки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 11:54 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
ptr128верхним уровнем я называю ядро не удивляйтесь, что вас не понимают ptr128Стек растет снизу вверх, по крайней мере на Intel архитектуре, начиная с 8008. и здесь всё наоборот (push - декрементирует регистр указателя стека) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 12:18 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
Изопропилptr128верхним уровнем я называю ядро не удивляйтесь, что вас не понимают Буду тогда избегать понятия верх и низ ) ptr128Стек растет снизу вверх, по крайней мере на Intel архитектуре, начиная с 8008. и здесь всё наоборот (push - декрементирует регистр указателя стека)[/quot] Декрементирует - это да. А вот снизу вверх или сверху вниз? ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 13:01 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
ptr128А вот снизу вверх или сверху вниз? ))) – А не пролечу ли я всю землю насквозь? Вот будет смешно! Вылезаю – а люди вниз головой! Как их там зовут?.. Антипатии, кажется… (с) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 13:43 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
AlekseySQLНасколько я понял сейчас набирает силу идея реализации программной "обертки" на скриптовых языках (типа python), а реализация прикладной логики- на языках низкого уровня (типа С++). Делал ли кто- нибудь такие проекты? Как впечатления? Логично предположить, что С++ в такой связке становится предпочтительнее С#? Есть ли какая- то книжка, статья, блог, канал youtube... где о подобном скрещивании можно почитать подробненько? Благодарю за обмен опытом! Не понял к чему тут слово "сейчас", если это давно. Впрочем, не важно. Вполне себе традиционная схема - если есть большой хост - процесс и куча dll, с функциями которые могут быть вызваны из хоста напрямую, из меню или еще как. И есть каталог скриптов, которые хост может запускать. Скрипты обращаются к функциям реализованным в этих dll и к объектам предоставляемым хостом. Собственно в самих dll лежат ресурсоемкие операции к примеру компрессия или перекодирование или что-то с длинными вычислениями над большими объектами. Те же ГИС к примеру. Как отработать функцию - реализовано в dll, а что и в каком порядке и к каким файлам или объектам в хост - процессе применять - это пользователи самим себе в скриптах рисуют. Программа апгрейдится без изменения этих пользовательских каталогов и показывает к примеру менюшку со списком функций из этих скриптов или просто сами их имена или еще как. Ну и получается что пользователи наращивают свою кастомную логику под свои задачи ну или им под заказ разово делают такие скрипты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 15:59 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
AlekseySQLDimitry Sibiryakov, на 1с программировал примерно 13 лет... Но я не про многопользовательские СУБД, где скорость работы отдельного пользователя не важна (поэтому, кстати, в 1с нет и никогда не будет многопоточности). Из учебных курсов 1С про многопоточность и фоновые задания: http://курсы-по-1с.рф/articles/как-ускорить-1с-многопоточность/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 16:05 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
ну яИз учебных курсов 1С про многопоточность и фоновые задания: http://курсы-по-1с.рф/articles/как-ускорить-1с-многопоточность/ Так можно и через COM из управляющей 1с запустить несколько подчиненных сеансов 1с и разделить между ними задачу. Но будет ли это многопоточностью? Тут происходит тоже самое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 18:01 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
AlekseySQLНасколько я понял сейчас набирает силу идея реализации программной "обертки" на скриптовых языках (типа python), а реализация прикладной логики- на языках низкого уровня (типа С++). С++ не является языком низкого уровня. Это обычный себе прикладной язык. Низкий уровень - это C и/или ассемблер. AlekseySQLДелал ли кто- нибудь такие проекты? Как впечатления? Логично предположить, что С++ в такой связке становится предпочтительнее С#? При чем тут C# предпочтительнее C++? И то и то компилируемые языки. Скриптовые языки нужны и важны именно там, где позволяют не пересобирать приложение минутами (часами). Надо изменить поведение или реплику персонажа - тяп ляп, поменяли что-то там в LUA, даже не перезапуская игру - прошли уровень еще раз из сохранки, красота! Современная игрушка просто на старт иногда требует несколько минут, не говоря уже на перелинковку, без быстрого изменения кода в runtime там вообще никак. AlekseySQLЕсть ли какая- то книжка, статья, блог, канал youtube... где о подобном скрещивании можно почитать подробненько? Благодарю за обмен опытом! да нет никакого сакрального знания там. единственно что стоит почитать - это про то, что писать на чистом LUA скрипты это несколько моветон. статья была на хабре, лень читать тру чуваки скрипты пишут на диалектах C/C++, чтоб после того, как все понаписали и отладили - можно было слинковаться нативно, т.е. скрипты преобразовать непосредстваенно в машинный код. есть и интерпретируемые субдиалекты С или C++, или и вовсе - техника нативной компиляции в runtime с динамической выгрузкой/подгрузкой .dll/.so т.е. цель достичь секундной реакции на изменение в коде можно достичь не только интерпретатором, а и традиционными средствами. преимущества - отладка в родной IDE, нет необходимости отправлять открытый (нетранслированный) код в релиз, и т.п. хотя так обычно мало кто парится, да и геймдевдизайнеры предпочитают ламповый LUA или подобное этим вашим звездочкам и & закорюкам. но опять же - это все нужно лишь там, где от F5 до запуска приложения проходит более 30 секунд. иначе - проще писать сразу в одном языке и не париться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 18:29 |
|
||
|
Какие плюсы в использовании скриптового языка как менеджера вызова прикладной логики?
|
|||
|---|---|---|---|
|
#18+
dbpatchС++ не является языком низкого уровня. Это обычный себе прикладной язык. Несмотря на то, что потребление памяти у C++ больше, чем у C, а производительность несколько ниже, его вполне успешно используют в качестве языка низкого уровня. Например, на том же Arduino, вообще без операционной системы. Так что не все так однозначно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2017, 20:35 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=39574107&tid=2018014]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
76ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 304ms |
| total: | 479ms |

| 0 / 0 |
