1.1, Аноним (1), 11:53, 30/06/2020 [ответить] [﹢﹢﹢] [ · · · ]
| –4 +/– |
> Тип "userdata", предоставляющий возможность хранения в Lua-переменных любых Си-данных
Что это значит? Как работает?
| |
1.2, pin (??), 11:56, 30/06/2020 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
> Подобные переменные могут быть назначены только один раз и после инициализации уже не могут быть изменены.
Для чего это на практике?
| |
|
2.3, Аноним (3), 12:00, 30/06/2020 [^] [^^] [^^^] [ответить]
| –4 +/– |
Для встраиваемых решений (на всяких мелкоконтроллерах, где flash )
| |
|
3.34, ann (??), 16:17, 30/06/2020 [^] [^^] [^^^] [ответить]
| +2 +/– |
Да, скриптовой язык, сборка мусора, на мелкоконтроллерах.
Давай тебе такую трансмиссию поставим?
| |
|
4.47, Аноним (47), 18:51, 30/06/2020 [^] [^^] [^^^] [ответить]
| –2 +/– |
Мелкоконтроллеры давно уже не такие мелкие. Про NodeMCU не слышал?
| |
|
5.55, ann (??), 22:34, 30/06/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
Про эту не слышал. Про то что есть и мелкие которые не мелкие знаю. Но в нормальных (которые отвечают за что-то серьёзное и критичное) как небыло сборщиков мусора, да и вообще работы с динамической памятью, так и нету.
| |
|
6.68, draw1 (?), 00:03, 01/07/2020 [^] [^^] [^^^] [ответить] | +/– | Со скриптами внутри его сборщика мусора тоже не появится Он же будет только... большой текст свёрнут, показать | |
|
5.56, ann (??), 22:37, 30/06/2020 [^] [^^] [^^^] [ответить]
| +/– |
Почитал что за оно. Для другой ниши. В ту же трансмиссию её не засунут. или какой VCU
| |
|
6.99, Аноним (47), 19:32, 01/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
Ну да, не для трансмиссии (хотя боюсь гадать, что там будет через десяток лет). Но мелкоконтроллеры ведь не только в трансмиссии, да?
| |
|
|
|
3.58, Lua Rocks (?), 23:06, 30/06/2020 [^] [^^] [^^^] [ответить]
| +2 +/– |
Не для этого встраивания. Для встраивания в программы в качестве скриптового языка для конфигов или "бизнес-логики".
| |
|
4.62, draw1 (?), 23:35, 30/06/2020 [^] [^^] [^^^] [ответить] | +/– | И для такого встраивания тоже Причем, примерно для таких же целей Само собой, ... большой текст свёрнут, показать | |
|
|
6.69, draw1 (?), 00:08, 01/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
> нет, имется в виду для встраивания в программы на с/c++
Так нативный код для встраиваемых систем чаще всего и пишут на c/c++. Туда и встраивают виртуалки (js, lua, squirrel,...). В чем противоречие-то? Про прям аппаратное встраивание lua вроде никто здесь речи и не заводил...
| |
|
7.71, draw1 (?), 00:28, 01/07/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
И в "железках" тоже бывают конфиги разной степени "умности", "бизнес-логика" и много чего ещё, для чего технически удобно можно было бы использовать скрипты.
Встраиваемое в эти железки ПО пишут на с/с++. При наличии достаточных аппаратных ресурсов (память, производительность,...) нет больших проблем встроить во встраиваемое ПО (то, которое на с/с++) движок js/lua/..., создать и запустить виртуалку, закачать в неё байт-код (можно через компиляцию "на месте", можно скомпилированный заранее) и поехали...
Чё-то не понимаю я этих комментариев вида "нет, не для такого встраивания". В чем разница-то?
| |
|
8.77, СССР (?), 01:16, 01/07/2020 [^] [^^] [^^^] [ответить] | +/– | ну смотри из вики Встра 769 иваемая систе 769 ма встро 769 енная систе 769 ... большой текст свёрнут, показать | |
|
9.78, СССР (?), 01:23, 01/07/2020 [^] [^^] [^^^] [ответить] | +/– | т е я не кого не хочу обидеть, но такое понимане расставляет все точки, и нам б... текст свёрнут, показать | |
9.80, draw1 (?), 01:57, 01/07/2020 [^] [^^] [^^^] [ответить] | +/– | Я прекрасно понимаю в чем разница между встраиваемым ПО ПО для встраиваемых сис... текст свёрнут, показать | |
|
10.87, СССР (?), 09:07, 01/07/2020 [^] [^^] [^^^] [ответить] | +/– | можно да, по сути запилил API для квадракоптера, и уже на луа или жс описать как... текст свёрнут, показать | |
|
|
|
7.76, СССР (?), 00:57, 01/07/2020 [^] [^^] [^^^] [ответить] | –1 +/– | для всяких IoT да, на с c , но все же добавлять в интернет вещь встраиваемую ск... большой текст свёрнут, показать | |
|
8.79, draw1 (?), 01:46, 01/07/2020 [^] [^^] [^^^] [ответить] | +/– | Ну если трактовать термин IoT максимально широко Есть низкоуровневая логика р... большой текст свёрнут, показать | |
|
9.88, СССР (?), 10:17, 01/07/2020 [^] [^^] [^^^] [ответить] | –1 +/– | Все верно говоришь На самом деле, это очень круто когда реаизация низкоуровнево... текст свёрнут, показать | |
|
|
|
|
|
|
3.63, СССР (?), 23:38, 30/06/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
нет, не для этого. Этот язык в том плане встраиваемый, что встраивается в код с/c++ и може предоставлять в выполняемый скрипт доступ к переменным, функциям, объектам, классам (т.е. динамически создавать объекты на базе классов).
| |
|
2.5, Аноним (5), 12:06, 30/06/2020 [^] [^^] [^^^] [ответить]
| –3 +/– |
Если это как в си, то это сахарок для просьбы по возможности не изменять автоматически. Для удобства кодера, не более.
| |
2.19, vad (??), 13:47, 30/06/2020 [^] [^^] [^^^] [ответить]
| +4 +/– |
Для JIT'a: Constant-folding. Ещё один побочный эффект: упрощение работы GC. Уменьшение криворукости (попробывал Lua Demo 5.4, присвоение к константе выдает ошибку уже при компиляции, а не в рантайме)
IPONWEB вообще себе кастомную VM сделали пару лет назад и для них константные таблицы, которые не обходятся GC, увеличение скорости раза 2+ давали. Но константы+таблицы не относятся к ванильному Lua, это так, для примера.
| |
2.60, СССР (?), 23:24, 30/06/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
для расширения функционала программы на с/с++ на более абстрактном уровне. так же для создания "умных" конфигов.
| |
2.105, anonymous (??), 12:00, 02/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
Для написания безопасного кода без необходимости каждый раз копировать значения.
| |
|
|
2.11, Аноним (11), 12:45, 30/06/2020 [^] [^^] [^^^] [ответить]
| +3 +/– |
5.1 ещё долго будет самой распространённой версией Lua, т.к. LuaJIT поддерживает только его (с парой-тройкой обратно совместимых фичей, бэкпортированных из 5.2)
| |
|
3.26, Аноним (5), 14:27, 30/06/2020 [^] [^^] [^^^] [ответить]
| +1 +/– |
Не совсем. Там есть 9999 БЕЗ немодерируемой ауропомойки с вирусами. Не далее чем вчера, я хотел скачать cppcheck, а есть версия только двухлетней давности. Но это не очень страшно — во первых, ничего критического в новых версиях не случилось, а во вторых, некоторый софт в принципе можно собирать только из дев ветки (где вся движуха). Скажем, на прошлой неделе я собрал smatch из гита, релизов там не было уже 10 лет и свежая версия не имеет релизов.
| |
|
|
1.12, Аноним (12), 12:46, 30/06/2020 [ответить] [﹢﹢﹢] [ · · · ]
| –9 +/– |
Я как то не смог без поллитра разобраться с метатаблицами и какой то банальной операцией над ними...ну это я допустим неосилил, хотя зачем мне осиливать, когда куча других более вменяемых встраиваемых скриптовых языков есть? Я лучше раст поосиливаю, если делать нечего будет...
Ну и обратная совместимость. Оператор goto, например, только в 5.3 появился. Не знаю даже баг это или фича. В общем, такое себе поделие...
| |
|
2.13, Аноним (13), 13:03, 30/06/2020 [^] [^^] [^^^] [ответить]
| +6 +/– |
чувак, я не осилил твой поток сознания, пойду в туалет поосиливаю
| |
2.28, Ненавижу SJW (?), 15:17, 30/06/2020 [^] [^^] [^^^] [ответить]
| –2 +/– |
> Оператор goto, например, только в 5.3 появился.
Лучше бы вообще не появлялся. Лучше бы его выдавали по N штук только по специальному запросу разработчикам в виде какой-то библиотеки, это касается любого языка.
| |
|
1.16, Аноним (16), 13:26, 30/06/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Нормальной многопоточности нет, а библиотеки не под все операционки портированы.
| |
|
2.70, Аноним (70), 00:15, 01/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
там вообще многопоточности нет (multithreading).
в каждой нити (внутри C, куда ты встраиваешь Lua) -- предполагается создание независимого контекста Lua.
каждый контекст Lua работает и знает только про свою нить. ни о каких нитях внутри Lua даже подумать нельзя.
хотя конечно забавно что в самом LuaAPI есть внутреннее понятие Thread -- но оно о корутинах, а не о нитях.
| |
|
3.121, Аноним (121), 18:47, 06/01/2021 [^] [^^] [^^^] [ответить]
| +/– |
Там есть корутины для асинхронности и кооперативной многопоточность но хз как это вообще нормально ли работает или нет
| |
|
2.75, Аноним (70), 00:54, 01/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
кстати а зачем тебе все операционки?
ты сам-то какую операционную систему используешь?
вот попробуй для неё и сделай годную программу. это не так просто. а уж сделать годную программу под "все" операционки -- вообще почти не возможно.
| |
|
3.90, Аноним (16), 13:01, 01/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
Сейчас Debian, думаю поставить вместо него одну из BSD систем. Речь не про годные программы, а саму возможность. Хотелось использовать Lua для скриптования своих простых задач, но в BSD не портированы библиотеки многопоточности для Lua.
| |
|
|
1.27, Nellex (?), 15:15, 30/06/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Вместо const лучше бы нативное копирование таблиц добавили, надоел этот велосипед а-ля deepcopy.
| |
|
2.37, Аноним (5), 16:53, 30/06/2020 [^] [^^] [^^^] [ответить]
| +/– |
> Подскажите-ка в какой БЗД-е по умолчанию используют Луа? В НетБЗД-е?
В ядре? А зачем тебе по-умолчанию? Собери для линукса.
| |
2.66, Аноним84701 (ok), 23:52, 30/06/2020 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Подскажите-ка в какой БЗД-е по умолчанию используют Луа? В НетБЗД-е?
В загрузчике фри заменили Forth на сабж.
| |
|
1.36, user90 (?), 16:51, 30/06/2020 [ответить] [﹢﹢﹢] [ · · · ]
| –2 +/– |
В общем-то есть Perl.. вот честно, не оценил фичей Lua. Причем это не критика, а любопытство)
| |
|
2.38, Аноним (5), 16:54, 30/06/2020 [^] [^^] [^^^] [ответить]
| +/– |
> В общем-то есть Perl.. вот честно, не оценил фичей Lua. Причем это
> не критика, а любопытство)
На перл ты не заскриптуешь игровой движок. Или весь движок не напишешь, как на луа. Или питоне.
| |
|
3.39, user90 (?), 16:57, 30/06/2020 [^] [^^] [^^^] [ответить]
| –2 +/– |
> На перл ты не заскриптуешь игровой движок
Хм, такой задачи никогда и не было.. но почему нет? И попроще, если можно :)
| |
|
4.41, Аноним (5), 17:02, 30/06/2020 [^] [^^] [^^^] [ответить]
| +1 +/– |
Потому что делать это будешь не ты, замечательный профессиональный перл разработчик с 30 летним опытом, а обезьянка-формошлёп, нанятая по случаю. Скриптование самая скучная и унылая часть геймдева, которая тем не менее неплохо оплачивается (если это отдельная должность, часто совмещают). Чем проще и примитивней, тем лучше. И луа вполне укладывается в подобную парадигму, где код пишут не программисты.
| |
|
5.44, Аноним (44), 17:42, 30/06/2020 [^] [^^] [^^^] [ответить]
| +/– |
Есть же питон, который тоже встраивается, крайне популярен, имеет дцатиллион библиотек и понятен обезьянкам.
| |
|
6.73, Аноним (70), 00:36, 01/07/2020 [^] [^^] [^^^] [ответить] | +5 +/– | Python хуже встраивается чем Lua и вообще Python НЕ похож на встраиваемый язык ... большой текст свёрнут, показать | |
|
|
|
3.40, 1 (??), 17:00, 30/06/2020 [^] [^^] [^^^] [ответить]
| +/– |
Всё что надо заскриптуешь - и даже чего не могут ни луа ни питон.
жЫрный Perl просто ... Так запросто не встроишь ...
| |
|
4.42, Аноним (5), 17:04, 30/06/2020 [^] [^^] [^^^] [ответить]
| +/– |
Питон же встраивают. Даже джаву встраивали (в качестве скриптового языка). А уж жс и подавно. Вот php и perl я не встречал.
| |
|
5.117, Мокшу затролил (?), 02:18, 04/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
Ну например в Civilization 4 питон использовали. В нескольких гигах общего веса игры, питон был как капля в море🤣 подумаешь 100-200 мб +- 🤣
| |
|
|
|
|
3.74, draw1 (?), 00:48, 01/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
Размер - это часто важно, но и помимо размера есть преимущества.
Удобная, простая, статическая линковка без внешних зависимостей, без необходимости иметь набор доп библиотек, без необходимости иметь файловую систему с установленной системой модулей/пакетов и т. п.
Не то чтобы для встраивания языков типа perl/python это прям всё невозможно... но даже если и возможно, то НАМНОГО сложнее и более ресурсоёмко. Ну и не очень понятно зачем встраивать такие махины внутрь, может тогда проще наоборот - вынести часть в расширения на С/С++, а основным "запускателем" оставить сам perl/python...
Если именно lua как язык не очень нравится чисто синтаксически, то есть другие варианты с таким же простым встраиванием (js, squirrel,...). Некоторые из них даже по байт-коду совместимы с виртуальной машиной lua (ну по крайней мере раньше, вроде, такие попадались, если не путаю).
| |
|
2.92, Аноним (92), 13:50, 01/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
Луа намного быстрее и ffi в разы проще, когда надо что-то сишное дернуть.
| |
|
1.49, Главный Вопрошающий (?), 20:05, 30/06/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Народ, объясните мне, если не сложно конечно, почему LUA в разработке игр, как скриптовый язык, прижилась больше, чем Питон например? Что в LUA такого, за что его любят разработчики игр?
| |
|
2.52, Аноним (52), 22:01, 30/06/2020 [^] [^^] [^^^] [ответить]
| +2 +/– |
потому что для встравания lua в основе достаточно одной dll-ки. И потому что lua самый шустрый из скриптовых.
| |
|
3.81, draw1 (?), 02:05, 01/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
А можно и вообще без dll-ки - статически влинковать прямо в исполняемый код. А такое гораздо проще, например, портировать на другие платформы (не везде есть dll-ки, so-шки да и вообще файлы в обычном понимании этого слова).
| |
|
2.53, Ordu (ok), 22:05, 30/06/2020 [^] [^^] [^^^] [ответить]
| +/– |
Я могу лишь предположить, что дело в том, что lua исходно создавалась как язык для встраивания в приложения. Python же создавался как самостоятельный интерпретатор. Благодаря этому lua проще воткнуть в свой бинарь и запускать скрипты прям из C'шного кода. Я не думаю, что с пайтоном там какие-то непреодолимые проблемы так сделать, но с lua, мне кажется, проще. И это одна из основных маркетинговых фишек lua, насколько я понимаю.
| |
2.72, funny.falcon (?), 00:33, 01/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
Встраивать Lua намного проще, т.к. он имеет минималистический api и не даёт шаловливым рукам отстрелить себе ногу (более-менее).
Кроме того, если не массировать строки (а в играх их редко массируют), то Lua чаще всего заметно быстрее питона.
Но как язык Lua конечно же говно в сравнении с питоном.
| |
|
3.94, Аноним (92), 13:53, 01/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
Луа дает кучу возможностей отмотать себе веревки, чтобы повеситься.
Как язык луа абсолютно прекрасен. Но не для средних умов, в отличие от питона.
| |
|
4.95, funny.falcon (?), 16:51, 01/07/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
Как язык, Lua, после тесного знакомства, лучше только чем Javascript. Python намного приятнее.
Но вот api для встраивания в Lua максимально bulletproof.
| |
|
|
2.83, GentooBoy (ok), 03:05, 01/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
Потому что в базовом виде впиндюриваеться за пару часов в си/си++ проекты.
Дебажить куда удобней чем здоровенный питон.
| |
2.93, Аноним (92), 13:51, 01/07/2020 [^] [^^] [^^^] [ответить]
| +2 +/– |
Потому что в геймдеве не используют тормозные языки программирования. Deal with it.
| |
|
|
2.84, Аноним (84), 06:09, 01/07/2020 [^] [^^] [^^^] [ответить]
| –2 +/– |
Гвидон математик он танцевать не умеет, бразильцы создали Луа под звуки Ламбады.
| |
|
1.54, Аноним (54), 22:28, 30/06/2020 [ответить] [﹢﹢﹢] [ · · · ]
| –2 +/– |
им дали angelscript - нет, не хотим, хотим жрать деерьмо.
и lua - самое гадкое из всех.
| |
|
2.57, Сталин (?), 22:52, 30/06/2020 [^] [^^] [^^^] [ответить]
| +/– |
Чем он лучше ECMAScrilt? Если скриптовый язык и встраивать - то его, ибо в браузерах он работает с jitом и нативно.
| |
2.82, draw1 (?), 02:40, 01/07/2020 [^] [^^] [^^^] [ответить]
| +2 +/– |
> им дали angelscript - нет, не хотим, хотим жрать деерьмо.
> и lua - самое гадкое из всех.
Вот только lua появился на 10 лет раньше и к тому времени уже плотно занял нишу и был обкатан в тысячах программ. Не все склонны всё бросать и бегом ломиться на новое, модное, блестящее...
Вопрос (был?) не в достоинствах/недостатках языков. Ровно тоже самое и про JavaScript vs Lua. Изначально были совершенно разные ниши и разная доступность. И там те же 10 лет (если не больше) преимущество lua в нише простого встраивания во всё что угодно. Плюс ещё стереотипы про js...
| |
2.102, Аноним (102), 19:49, 01/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
ты бы в вопросе сначала разобрался что-ли. в твоем ангельском скрипте даже колжур нет
| |
|
1.89, economist (?), 11:22, 01/07/2020 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Есть шикарный юзкейс применения и сравнения скорости двух языков LUA и Python в одной программе "реального времени" - популярном, почти бесплатном музыкальном мультиплатформенном (MacOS/Win/Lin) редакторе/студии DAW (dig. audio workshop) Reaper, в которой встроена IDE для LUA/Python.
API Рипера содержит >1k команд и методов, и т.к. это музыка, - любая задержка DSP-обработки >5 миллисекунд будет слышна как недопустимый щелчок. И очень здорово что оба ЯП абсолютно равнозначны по набору реализованных команд и одинаковы быстры в работе, но LUA грузит ЦП все же меньше на 40%. Потому и репы кода 5:1 в пользу LUA.
Можно сказать что LUA в Reaper стал тем, чем стал VBA в Excel, то есть "волшебным огнем", постепенно выводящим DAW за 60 USD на топовые места по популярности среди других DAW, стоящих от 300 до 3000 USD.
| |
1.96, Аноним (96), 18:02, 01/07/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Будте ли когда-нибудь Promise и async/await?
Когда будут массивы и словари отдельно?
Очень расстраивает реализация tables{}.
| |
|
2.120, anonymouse (?), 01:12, 09/07/2020 [^] [^^] [^^^] [ответить]
| –2 +/– |
Там даже нормальное наследование из JavaScript не реализовано. Быдлоподелка, недоязык as is.
| |
|
1.97, Аноним (97), 18:08, 01/07/2020 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Ребята, есть смысл учить? Работу найти получится? Что вообще можно писать и где его в web применяют?
| |
|
2.101, Аноним (47), 19:44, 01/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
> есть смысл учить?
Есть, хотя — что там учить-то…
> Работу найти получится?
Получится, если хотя бы сишку ещё осилишь.
| |
2.103, Аноним (92), 02:47, 02/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
Если задаешь такие вопросы - в профессии тебе делать нечего. В лучшем случае как-то протолкаешься 2-3 года и перейдешь в менеджеры.
| |
|
3.108, ss (??), 16:09, 02/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
А что не так в этих вопросах?
Это совершенно нормальные вопросы которые ничего не говорят о дальнейшей судьбе человека как профессионала на выбранном поприще.
Или человек должен узнать ответы на эти вопросы...каким то чудодейственным способом? Или иметь врожденный инстинкт который позволил бы не задаваться этими вопросами?
| |
|
2.104, economist (?), 09:21, 02/07/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
Есть смысл cначала выучить Python, как универсальный и c вдесятеро большим числом вакансий и применений. LUA позже зайдет...
Python в обычной жизни среднего предприятия заменяет полностью или на 80%:
Bash
CMD
Perl
PowerShell
VBA
StarBasic
1C
SQL
При этом шпаргалка по синтакису Python помещается на 2-х страницах А4, а у LUA - на 1-й :-)
| |
|
3.106, ss (??), 15:48, 02/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
я чтото пропустил этот эпический рывок вперед... а в какой версии платформы 1с был встроен питон нативно вместо родного dsl ?
| |
3.107, ss (??), 15:51, 02/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
а оракл в какой версии переполз с pl/sql на питон???
| |
|
4.109, economist (?), 18:29, 02/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
Ни в какой никто и никуда не переползал. Мы же за обобщения и синтез? Следите за руками:
Все 100% IT-работ на "среднем предприятии (с)" состоят из 3-х сфер работ (в %% - трудозатраты):
- 50% сисадминства с дотой/CS/хабром/3дньюс/4пда вперемешку
- 30% эникейства/QA c телефоном или сменой картриджей у красивых девочонок в бухии
- 20% прикладной автоматизации (тех самых 1C/VBA/PL)
Python как "клей" позволяет самым легким путём автоматизировать задачи из первых двух сфер 50+30=80%. Да и в оставшиеся 20% он отчасти вхож, поскольку в состоянии настолько повысить скорость разработки, что, скажем, приводит к следующим кейсам. Положим мне нужен сводный отчет из трех уже имеющихся в 1С (к это задаче сводится 80% всех хотелок бухов). И есть 2 пути решения:
Путь 1-й: Написать за неделю ТЗ для IT, ждать месяц, исправлять баги 2 недели. Итого 1,8 мес.
Путь 2-й: Написать самому за 1 неделю без ТЗ на Python, исправлять баги самому 1 неделю. Итого 0,5 мес.
И хотя я сам ратую за 1-й путь с ТЗ, но беда в том что за 2 месяца любая острая проблема на "среднем предприятии (с)" утрачивает остроту, потому что обязательно появляется совсем новая, острейшая, и все силы бросаются на неё.
Поэтому 2-й путь хоть и неправильный, но хоть что-то дающий в плане пользы.
На должность ЯП-"клея" претендовали многие языки: Bash, PowerShell, VBScript, Perl - но теперь ясно что они уступают Python. Поскольку из него незазорно дернуть любую консольную утилиту, легко перехватить вывод или файл, организовать перебор файлов в папках с рекурсией, дернуть SELECT из любой БД/AD... То есть дописать все остальное проще и быстрее на Python, чем на зоопарке ЯП.
| |
|
5.112, ss (??), 10:11, 03/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
>Все 100% IT-работ на "среднем предприятии (с)" состоят из 3-х сфер работ (в %% - трудозатраты):
>- 50% сисадминства с дотой/CS/хабром/3дньюс/4пда вперемешку
>- 30% эникейства/QA c телефоном или сменой картриджей у красивых девочонок в бухии
>- 20% прикладной автоматизации (тех самых 1C/VBA/PL)
Понятно. вы описали маленькую конторку где всем этим занимается один человек по совместительству гендир. Да, в этом случае вы правы.
В моем представлении "среднее предприятие" в смысле ИТ - с 1С занимаются специально обученные люди которые зачастую кроме 1С незнают даже как сервер перезагрузить. В более мелкой - это приходящие нанятые на разовые работы. в чуть более крупной- собственные. Но в любом случае питон им вообще не уперся никак. Им это ненадо от слова совсем. За серверами следят специально нанятые люди. На оракле опять же разрабатывают люди которые не касаются вопросов 1С.
Питону там делать по большому счету нечего, кроме (в случае) личной блажи сисадмина или разработчиков "с запросами" (тоже блажь, поскольку они пишут на js/php).
Картина которую описали вы- это взгляд человека на проблему никогда не работавшего на предприятии в котором есть хотя-бы один ОТДЕЛ занимающийся ИТ, а не просто "человек занимающийся ИТ".
И ваш выбор питона- это исключительно ваше предпочтение, поскольку все достоинства которые вы перечислили - ниразу не исключение в любом из названных вами языков которые вы питоном "похоронили" :)
А вот как вы будете на питоне писать формы для 1С - загадка великая есть.
| |
|
4.110, economist (?), 18:41, 02/07/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
Ну и чтоб разговор поддержать: с 2015 г. Oracle и Microsoft странными, непостижимыми отказами в продажах и обслуживании, в блокировках серверов обновлений итд (более известными как "поддержка санкций") - сократили число своих клиентов в РФ в ~2 раза.
Половина клиентов (это не "средние, а чуть "крупнее" предприятия) - не умерли, не бросили 1С, а перевелеи её на свободный RDBMS PostgreSQL, а там PL/Python, в принципе, делает свои 80% задач.
| |
|
5.113, ss (??), 10:14, 03/07/2020 [^] [^^] [^^^] [ответить]
| +/– |
>не бросили 1С, а перевелеи её на свободный RDBMS PostgreSQL, а там PL/Python,
При смене СУБД для 1С формы 1С можно начинать писать на питоне???
Пойду подберу челюсть с пола... :)
| |
|
6.115, economist (?), 22:23, 03/07/2020 [^] [^^] [^^^] [ответить]
| –1 +/– |
При смене СУБД для 1С - "формы 1С" (под этим я понимаю её отчеты/обработки) - переписывать ничего не нужно вообще. Ведь 1С - это серьезное приложение с трехзвенной архитекторой, мировой лидер. В базах данных 1С - сами данные хранятся вполне абстрактно. А вот деньги от перехода от ППО экономятся вполне не абстрактные, а реальные:
- До 2015 фирма N тратила на MSSQL 1.5 млн. руб.
- До 2015 фирма M тратила на Oracle 4.5 млн. руб.
- C 2016 фирма N тратит на PostgreSQL 0 млн. руб.
- C 2016 фирма M тратит на PostgreSQL 0 млн. руб.
Частично ответил уместность Python в 1C в посте #6.114
| |
|
|
|
|
|
|