То то они пол года по всем фронтам молчали.
Еще бы IDE до ума довели, а не 4 гига на пустой\почти пустой конфе с лагами и периодическими вылетами (хотел микроконфу сделать, но вечер поборолся и закрыл, то вылетит, то ошибку выдаст). Ибо в конфигураторе - не хватает фич, снегопат заглох, а улучшалки на .NET не везде разрешают устанавливать.
(9)1Script тогда уж! Но это не для компании 1С - им извратиться надо!
И что же делать тем, кому Python не нравится (мне, вон, Scala больше нравится).
Ну ударилась компания 1C в Java (во внутренних разработках) - ну сделала бы хоть бы JavaScript
Думаю, где-то просто готовый Python-движок-интерпретатор взяли, который хорошо прикручивался к данной приблуде!
Мне кажется, тут лучше заняться плагиатом ;-) и переложить идеологию "1С:Центр администрирования" в новом антологичном проекте, базирующемся на 1Script. По сути тут не так уж много "уникальных" наработок. Обычный remoteAgent-шедуллер со структурироваными задачами сценария планировщика, допускающими распараллеливание, и скриптовым-движком, да набор инструментов взаимодействия с инфраструктурой 1С и OS для выполнения заложенных туда команд. Даже передача "артефактов" ещё не реализована.
Прикольно то, что я, как раз, сейчас нечто похожее на 1С8 делаю (но пока более ограничено по части команд, постановкой практического ТЗ для бизнеса) - будет конфигурация - центр обработки ИБ 1С, выполняющая параллельно-последовательные любые задачи (на языке 1С: Предприятие 8) сценария на клиентах 1С по обработке данных в ИБ, с разными способами подключения к ИБ, настройкой параметров и с передачей "артефактов" :-)
(35) Это не придирка. Я просто ошибся постом - я отвечал не на (9), а на (8) на фразу "Уж если развивать внутренние инструменты, то было бы неплохо брать встроенный язык 1С." А так да 1Script - старое написание разработки, OneScript - новое! А ещё есть "Oscript" от домена сайта :-)
Хотелось бы как-то разделить понятия технического средства (интерпретатора) и самого языка, исполняемым этим техническим средством. Вот, реально в платформе 1С:Предприятие 8 алгоритмический язык официально так никак и не называется. И все так и кличут его "язык 1С" - а 1С - это название компании, его создавшей и развивающей в своих продуктах и не более того!
(10) Речь не о том, кому что сложно/несложно освоить, а про общую инфраструктуру. Логично, если речь про 1С, то неплохо развивать именно возможности 1С. На мой взгляд, это прекрасный повод для развития языка. Тем более развиваться есть куда. К тому же, применение основного языка автоматом расширяет комьюнити. Согласитесь, или тратить время на изучение, или вы сразу готовы разбираться с API. Если посмотреть опыт других комьюнити, то все они развиваются по одному и тому же принципу - создают условия для написания инструментария на языке, который они используют постоянно в работе. Комьюнити JavaScript - яркий тому пример.
Нужны детальные примеры? Возьмем современные редакторы, написанные на веб-технологиях (Atom, VS Code и т.д.). Теперь нет никаких преград для написания дополнительных плагинов/модулей. Каждый JS-разработчик может сам написать плагин не тратя время на изучение дополнительного стека технологий/языков. Как было раньше? Есть редактор, написанный на C++/Delphi/C#, хочешь плагин - изучи соответствующий язык. В результате, развитие редакторов было медленным.
(16) почему не взять тогда groovy или любой скриптовый JVM язык? уж если притащили на сервер приложения джаву чуть ли не в JDK-версии, то на кой еще и питон тащить?
а у джавы/груви количество библиотек уж побольше питона будет.
(20)На Питоне! Шутка... а чем Вам Java не угодил? Кроссплатформенный, достаточно шустрый, невероятно популярный, надёжный, масштабно поддерживаемый, высоко развитый и развивающийся язык - и этим всё сказано! Да и не так уж важно (кроме кроссплатформенности) на чём написан агент - это для потребителя большой роли не играет! Всё равно скрипты надо писать на Python :-( я, вот, несчитаю этот язык локонично крассивым!
(26)Да что там осиливать та - примитивизм - зато красивый и лаконичный примитивизм (ну можно же ограничиться для нчала какой-нибудь 4-й 5-й Явой - не бросать в бой народ сразу на 8-ю)! Хотя Котлин - ещё интереснее, а Scala - крассивее (но сложнее).
(29) Мне не Java неугодила, а подход 1С.
Во-первых они очень часто совершенно неверно выбирает инструменты для решения задач. Java они пихают куда угодно чаще потому, что у них много разработчиков на ней. Но это все мелочи..
Главный вопрос: сколько вы открытых проектов от 1С видели на Java? Как всегда предоставят одни бинарники и сиди потом гадай, почему этот ***** агент не работает.
(30)Java 1С выбирала по другим причинам (и отнюдь не по тому что у неё много Java программистов - их 10-лет назад у компании 1С вообще почти не было), частино они указаны в (25). Ещё можно добавить то, что компания 1С сейчас начала попытки выхода на европейский рынок учётных систем, а там действительно много Java-программистов - вот и пытается создавать новые инструменты так, чтобы они были близки европейцам по идеологии и освоению. Так же Java (в основном в лице JavaScripts но не только) очень хорошо интегрируется с WEB-разработками, и мобильными решениями (по своей идеологии и библиотекам). Но, кроссплатформенность тут всё же более важный фактор.
Python, видимо, тоже близок европейцам.
Эх.... кто-то надеялся, что когда-нибудь Java (ну или хотя бы JavaScripts) придёт в 1С Предприятие (например в 9-ку) и настанет нирвана! А тут народ "скулит", что вот, дайте нам классический язык 1С: Предприятие 8, чтобы писать скрипты (правда кто-то ещё и просит его расширения). Народ сам не знает что хочет. А 1С.... вот возьмёт и сделает в 1С: Предприятие 9 Pythono-подобны язык. Так что, если сравнивать Python и Java (да даже JavaScropst) c языком платформы 1С: Предприятие 8, то Pyhon может показаться более подходящим по своей идеологии к тому, как видит развитие языка конфигурирования на платформе 1С: Предприятие сама компания 1С. Так что, может в действительно в 9-й платформе нас ждёт Pythono-подобное воплощение языка 1С, скорее болльше похожее именно на Python, чем на классический 1С, со всеми поддерживаемыми Puthon парадигмами в т.ч: структурное, объектно-ориентированное, функциональное, императивное и аспектно-ориентированное программирование! А так же параллельное программирование, ООП-рефлексию, ну и, конечно же, динамическую типизацию без возможности задавать типы и ограничения типов переменных, параметров, свойств (увы, хотя кому-то нравится) и сборку мусора, сериализацию.
(40)Даже и не пытался. Как раз наоборот. JavaSript идеологически более близок к языку 1С и к Python - именно в контексте скриптового языка. А Java - это тот язык, на котором сейчас компания 1С стремится создавать внутреннюю архитектуру своих программных продуктов. Но многие хотли бы, чтобы Java пришёл на смену языку 1С как алгоритмический язык конфигурирования в 1С: Предприятие 9. Но JavaScript по парадигмам более соответствует языку 1С. А если говорить о скриптах - то тут нужнj говорить именно о JavaScript нежели о Java.
(20) в текущей реализации скорее всего на питоне. но агент как таковой - это слушатель TCP + отправлятор tcp/http + запускатель чего-то отдельного. его можно написать хоть на баше с использованием непонятных бинарей. главный вопрос - почему скрипты на питоне. я не говорю, что скрипты должны быть на джаве - джава не скриптовый язык. но есть скриптовый груви с простым синтаксисом, всей мощью пакетов джавы, открытым кодом скриптов (не бинари, а просто текстовик).
(32) и большая претензия к pull-интерфейсу в виде http-сервиса, а не установка tcp-соединения и нормальный push в tcp-сокет. но здесь я, к сожалению, не удивлен. :(
и большая претензия к pull-интерфейсу в виде http-сервиса, а не установка tcp-соединения и нормальный push в tcp-сокет. но здесь я, к сожалению, не удивлен. :(
А чем плоха реализация в виде http в данном случае?
З.Ы. мне для расширения кругозора :)
почему скрипты на питоне. я не говорю, что скрипты должны быть на джаве - джава не скриптовый язык. но есть скриптовый груви с простым синтаксисом, всей мощью пакетов джавы, открытым кодом скриптов (не бинари, а просто текстовик).
Чем плох питон для этого? у него так же простой синтаксис, много мощных пакетов и тд. По пакетам для "повседневных задач" пусть будут условно одинаковыми. Чем то сам язык плох или что?
На питоне часто пишут скрипты для автоматизации. Есть книги по использованию питона для администрирования и тд. Вроде как бы не такой уж "не очевидный" выбор.
Да и на сколько знаю питон вообще часто используется в автоматизации тестирования, администрирования и тд.
(32)ну, Payhon тоже java-классы может использовать, и тоже не бинарник, а текстовик. А агенты, я думаю, как раз Python скрипты получают (возможно не исходные, а перегенерированные - только свою часть, которую нужно незамедлительно выполнить). Агенты вполне могут быть написаны на Java (из-за кросплатформенности и чтобы не использовать другие интепретаторы, а лишь Java-Runtime), на Java как раз есть JPython,чтобы исполнять текстовые питоновые скрипты в Java среде и использовать Java библиотеки для прямой интеграции.
(19)
100% Так решил архитектор.
Почему решил именно так мы никогда, скорее всего, уже не узнаем.
Не стоят на месте, уже хорошо. Ибо в каждой конторе автоматизация рутины решается по своему, кто то на powershell, кто то на питоне, кто на 1sscript, это из того что я видел, а слышал и о более экзотических способах. Решение от вендора, хоть и спорное, но на мой взгляд скорее +, чем -.
Еще бы выпустили "принципиально новый" КИП 3, о котором давно говорят, и прототип которого глубоко в недрах вроде как существует.
Кстати, раз конфигурация "1С:Центр администрирования" открыта, то ничто не должно мешать написать для неё "апдейт" - где скрипты бы писались на языке 1С (тут же выполнялись через "Выполнить") - а команды агенту - попросту подменялись простыми Python вставками.
Хочу, чтобы на платформе можно было на python программировать наравне с языком 1С - т.е. используя язык python работать с объектами платформы и поддержкой библиотек python.. вот это был бы праздник!
Для вопрошающих - почему они тянут python?
А может это связано как то с планами встроить в 1С т.н. "машинное обучение" и всякие "нейросети"?
(47)Согласен, такое вполне может появится в будущем - может как раз в данном продукте началась отработка такого решения. Но.... учитывая что нативной поддержки хотя бы регулярных выражений в 1С за всё время так и не появилось, как и не появилось что-нибудь наподобие C# LINQ для глубокой интеграции запросов в программный код, или технологии глубокой интеграции XML c прямsvb запросами XPath прямо в программном коде. То я бы особо не рассчитал на глубокую интеграцию алгоритмов Python (да ещё с доступностью на них контекста 1С конфигурации). Рассчитывать пока можно лишь на что-нибудь как с запросами:
Скрипт = Новый ИнтерпретаторPython(ТекстСкрипта);
Скрипт.УстанвоитьПеременную("НекаяПеременняКонтекста",НекоеЗначениеСовместимогоТипа);
Скрипт.Выполнить();
Результат = Скрипт.ПолучитьПеременную("НекаяПеременняКонтекстаСРезультатом");
(52)Я тоже так представлял, или хотя бы на уровне подпрограмм через директиву компиляции процедура ("&НаPython"). Но, как я написал в предыдущем посте - рассчитывать скорее придётся на работу через встроенные программные объекты. Аналогично тому, как Python встраивается в Java или в Си.
По поводу Си, вряд ли стоит ожидать хоть-какой-нибудь интеграции Python в 1С ранее появления новой платформы 1С: Предприятие 9 (но, конечно, могло бы что-нибудь появиться и на какой-нибудь 8.5...), 9-как с наибольшей вероятностью будет уже написана на Java - хотя бы из-за кроссплатформенности и библиотек, ну и тенденция такая есть в серьёзных учетных системах - на Java переходить! Да и интеграция Jython c Java более эффективная чем CPython и C.
Был ещё такой транслятор 1С в AST далее в PowerShell (где ещё упоминался Python):
https://infostart.ru/public/658866/ Но проект заглох пока - хотя, со временем, может как раз стать актуальным - чтобы генерировать скрипты на Python, формируя их изначально но языке 1С
Можно я побуду "нудным ну-ну"... А где здесь DevOps ? нормальные пацаны собирают скриптами образа операционных систем для 1С на 1С (1Скрипте) - без всяких питонов. А устанавливать платформу - это уже прошлый век ;-) (я примерно понимаю кто авторы этой конфы - поэтому если они почитает эту тему, ни в коем случае не обижайтесь - вам почет и уважуха за выпуск решения, потому что сил скорее всего было много затрачено).
Кстати насчет питонов - напомню у Фреша (Технология разработки сейчас в комплекте идет Вагрант и Питон также, если мне не изменяет память).
P.S. Новость для нас классная - теперь мы не гики, а авторы альтернативного решения... Раньше какие вопросы нам задавали прошедшие курс Никиты "А что говорит компания 1С по поводу ваших практик", мы вынжудены были отвечать "Что пока компания 1С сосредточена на других направлениях", а теперь мы будем отвечать "Так у них есть аналог jenkins свой, так что компания 1С смотрит в этом направлении" .
Причем если нам теперь зададут вопрос "А почему вы остаетесь на своих серверах - jenkins, tfs, teamcity, bamboo, travis, appveyor" я напомню ответ "Потому что Серебряная Пуля использует одинаковые технологии и подходы для 1С, Веб и другой разработки". Система в указанной новости из коробки для php не подойдет - поэтому компании партнеры у кого помимо 1С есть 1С-Битрикс - вынуждены будут либо ставит 2 сервера 1С+jenkins, либо допиливать 1С, либо использовать jenkins+oscript
P.S.S. Как говорил один наш знакомый - "больше инструментов - хороших и разных"
(57) Можно и я побуду "нудным ну-ну"...
"нормальные пацаны собирают":
1) >>образа операционных систем для 1С - таки вероятно речь о контейнерах, или прямо вот так образ (кста образы, образа - это из области религии) в виде готового файла? Не верю! (с).
2) >>скриптами на 1С" .. или таки на 1Скрипте - т.е. языком платформы к самой платформе 1С имеющим мало отношения, реализованным без всяких питонов, но с довеском в виде .NET|NET Core | mono...
Я ничего не имею против продвижения OScript, кста, не самое лучшее название, ибо может возникнуть у буржуев путаница, но таки пистон сейчас в сильном тренде.
Я чесс слово не знаю насколько все хорошо с использованием .NET сборок в 1Скрипте/OScript егда даже у PowerShell не всё гладко хотя и сообщество немалое.
"Ваши практики"... Так ли это? Можно подумать прям весь подход эксклюзивно Ваш и кроме Вас никто ничего подобного никогда не делал? :)))))
"Система в указанной новости из коробки для php не подойдет" - Вы, вероятно, развернули, посмотрели и решили - не подходит для php. Точка.
Серебряная пуля сказала - "Это не подходит для php". :)))
Так ведь это Ваше решение. Да и вообще прям какая-то безальтернативность, "вынуждены будут либо ставит 2 сервера 1С+jenkins, либо допиливать 1С, либо использовать jenkins+oscript.".
Других альтернатив нет.
По мне, так выйдет продукт - посмотрим. А то, вон, сервер взаимодействия выпустили, а что-то особых восторгов это пока не вызвало.
Вообще альтернативы 1Скрипт/OScript нет.
Microsoft совершенно напрасно вкладывается в PowerShell.
(58) я по старой памяти сразу на ты, надеюсь можно - "ты чего это вдруг ?", мой евангелизм тебе напряг ? Ну так делай скидку, знаешь же лично мои особенности.
Насчет образов и докеров - зря не веришь, делал не только я, так что это уже не прототип, а вполне себе работает. Речь именно про образа через packer.io и именно в виде готового файла. Докеры кстати уже как 3 года существуют - это уже прошли и развивается Женькинсом (двумя Женями), Никита кстати тоже участвовал в доработке и по моему еще человек 5. Первая версия Ванесса.Сервисов вообще только на этих докерах с 1С и была построена.
(59) есть несколько - только понять бы что ты подразумеваешь под серверами. Если речь про контура для сборки - то да есть. Еще в 2015 году на первой версии Ванеса.Сервисах контура разворачивались и запускались из одной оболочки и управлялись из неё же, однако сетевая топология управляется уже из другой оболочки. Эти 2 оболчки - jenkins для релиз инженера и consul.io для организации топологии. 2 оболочки потому что 2 роли - релиз иненер и администратор инфраструктуры.
Нулевая версия (0.5) управлялась из консоли openStack - но оно скажем так оказалось несколько дороговато по доработке, поэтому перешли на такую связку.
Если ты про управление продуктивными серверами - то в эту сторону копает Андрей: проще узнать у него в каком там статусе "одминус".
(59) Маленький апдейт - про оболочку: мы же оболочки не делаем: используем уже готовые из jenkins, tfs, teamcity, bamboo. У каждого сервера есть свой интерфейс управления инстансами и софтом на них, мы только адаптируем это дело к 1С: версии, кластеры, настройки сервера и logcfg.xml. Там в целом никакой особой инновации то нет.
В продолжение темы, В блоге 1С еще за год до статьи об инструменте "Центр администрирования" было упоминание о возможностях Python по управлению Конфигуратором удаленно через SSH. Причем такой вариант по сравнению с "пакетным режимом" гораздо более функционален.
https://wonderland.v8.1c.ru/blog/rezhim-agenta-konfiguratora/?sphrase_id=86077 Думается, на Python делаются определенные ставки при развитии продукта.