Войдите, чтобы сохранять историю комментариев, голосовать за комментарии и создавать закладки
Регистрация
Авторизация
Авторизовываясь, вы соглашаетесь с правилами обработки данных
Этот сайт защищен reCAPTCHA и Google. Применяются Политика конфиденциальности и Условия использования.
Войдите, чтобы сохранять историю комментариев, голосовать за комментарии и создавать закладки
Регистрация
Авторизация
Авторизовываясь, вы соглашаетесь с правилами обработки данных
Этот сайт защищен reCAPTCHA и Google. Применяются Политика конфиденциальности и Условия использования.
Войдите, чтобы сохранять историю комментариев, голосовать за комментарии и создавать закладки
Регистрация
Авторизация
Авторизовываясь, вы соглашаетесь с правилами обработки данных
Этот сайт защищен reCAPTCHA и Google. Применяются Политика конфиденциальности и Условия использования.
Войдите, чтобы сохранять историю комментариев, голосовать за комментарии и создавать закладки
Регистрация
Авторизация
Авторизовываясь, вы соглашаетесь с правилами обработки данных
Этот сайт защищен reCAPTCHA и Google. Применяются Политика конфиденциальности и Условия использования.
OneScript (1Script) - Проект Андрея Овсянкина (EvilBeaver). Сайт проекта: oscript.io
На сегодняшний момент 1Script это стабильный, успешно применяемый в десятках компаний инструмент автоматизации для 1С-ников. Кроме того, OneScript это уже своего рода бренд, это название известно в сообществе, инструмент активно применяют, пишут, задают вопросы, обсуждают и, что особенно приятно -- дорабатывают.
Кроме того, практически неотъемлемой частью проекта является библиотека пакетов повторно используемого кода. Она небольшая, но покрывает значительную часть задач, ежедневно решаемых типовым 1С-ником.
Это уже не просто <<интерпретатор 1С>>. Сообществом была создана экосистема полезных и востребованных инструментов.
Для меня же это был уникальный опыт, я получил слова (и дела) поддержки от десятков незнакомых (и теперь уже знакомых) мне людей. Программа, которую я начал исключительно для того <<чтобы попробовать>> превратилась в работающий проект, используемый в реальных боевых задачах. Кроме того, получен огромный опыт управления таким вот open-source проектом -- поддержка, сопровождение, инфраструктура и т.д...
Ну и самое главное -- получено удовольствие от того, что делаешь нечто нужное.
Что планируем сделать дальше
Активное применение библиотеки пакетов выявило ряд недочетов и неудобств. Планируем внести коррективы в инфраструктуру пакетов и расширить функционал пакетного менеджера. Также планируем расширять набор библиотек, например, сейчас идет работа над оберткой для Docker API. Мы управляем docker-контейнерами с помощью скриптов на 1С и наработки по этой теме, вероятно, также будут опубликованы, когда будут доведены до ума. В результате будет получен упрощенный DSL для манипуляции контейнерами из сценария 1script.
Техническая сводка
Язык программирования -- C#, .NET v4.0/Mono 3.1x
Среда разработки -- VS 2013-2015
Имя интерпретатора -- oscript.exe (запуск на выполнение -- oscript <your-file>)
Расширение файла скрипта -- .os
Расширение файла пакета -- .ospx
Производительность кода -- в большинстве замеров до 4-х раз быстрее оригинальной платформы 1С. Как минимум, не медленнее ее.
Репозиторий движка -- github.com/EvilBeaver/OneScript
Репозиторий библиотеки -- github.com/EvilBeaver/oscript-library
Советы начинающим экспериментаторам
Если у вас есть свой проект, который вы хотели бы вывести в свет, то позволю себе дать вам пару советов, основанных на личном опыте.
Дерзайте! Если вы будете держать свой проект в столе и никому о нем не рассказывать, то о нем никто и не узнает. Начните со статьи на Хабр. Одной статьи будет недостаточно. Упоминайте свой проект в форумах, посвященных предметной области вашего проекта, приводите примеры удачного применения.
Будьте готовы к тому, что предложений от людей много, а реальных коммитов -- сильно меньше. Подход в стиле <<Это open-source, тебе надо, ты и сделай>>, к сожалению, не прокатит.
Заранее продумайте решение <<проблемы роста>>. Рост, как правило, взрывной и справиться с резко возросшим пулом задач довольно сложно.
Автоматизируйте все что можно с самого начала -- тестирование, сборку, публикацию версий, документирование. Эти вещи проще всего отложить на потом, но <<потом>> уже не будет времени все это автоматизировать.
Привлекайте контрибьюторов. Вклад в проект это не только код. Зачастую это даже просто идеи. Спрашивайте: <<как лучше сделать это>>, <<как могло бы выглядеть вот это>>. Вам подскажут. И вполне вероятно -- помогут.
Выращивать проект -- невероятно круто. Не стесняйтесь, делитесь своей работой, получайте удовольствие от процесса!
https://habrahabr.ru/post/301064/