Платформа для решения задач по программированию на языке 1С

02.06.23

Разработка - Инструментарий разработчика

Описание новых возможностей, которые были добавлены в платформу для решения задач по программированию на 1С.

Кратко о площадке "Соревнования по программированию на 1С"

Прошло уже полгода с момента запуска системы для решения алгоритмических задач на языке программирования 1С.

Система представляет собой опубликованную базу 1С: любой желающий может подключиться, зарегистрироваться и проверить свои навыки программирования. За каждое решенное задание присваиваются баллы, таким образом составляется общий рейтинг участников.

Среди 500 участников есть такие, которые правильно решили все доступные задания!

Основное окно выполнения задания:

 

 

1) Текст задания, описание входящих параметров и результатов, которые должны быть получены.

2) Кнопки тестов к заданию: зеленый цвет обозначает, что тест прошел успешно, красный - что есть ошибки, пустой кружок - тест еще не был выполнен.

3) Текст программы, тут нужно написать программу на 1С, чтобы решить задание и пройти все тесты.

4) Результаты выполнения теста. Если нажать кнопку "Запустить тест", в этом поле будет отображена подробная информация о результатах выполнения теста.

5) Когда все тесты пройдены - нужно нажать гиперссылку "Завершить турнир". После этого можно будет посмотреть решения других участников - часто для одной и той же задачи есть совершенно разные решения.

 

Что изменилось при выполнении заданий

1) Отключено ограничение по времени на выполнении задачи. Теперь не нужно торопиться - любую задачу можно решать сколько угодно.

2) Задачи разделены на уровни сложности от простого до самого сложного. И если на решение простой задачи нужно приблизительно 10-15 минут, то на сложные задачи даже у опытных участников уходит не меньше часа.

3) За решение задачи участники получают разное количество баллов в зависимости от уровня сложности и времени, затраченного на ее решение.

 

Редактор кода

Взяв за основу замечательную разработку Александра Шкураева, получилось добавить редактор кода с подсветкой синтаксиса 1С, который работает даже в веб-клиенте. Решать задачи стало гораздо удобнее и приятнее.

 

Выполнение кода на языке 1С

Исходный код теперь выполняется в модуле внешней обработки. Больше не используется метод "Выполнить". Благодаря этому стало возможно использовать все возможности языка 1С: глобальные переменные, объявления процедур и функций, рекурсии.

Внешняя обработка с исходным кодом создается "на лету" при помощи конфигуратора запущенного в режиме агента. Спасибо Александру Дмитренко за статью "Управление конфигуратором в режиме агента с помощью python" - взяв за основу его решение получилось сократить время генерации внешней обработки.

 

Темное оформление

Многие программисты предпочитают работать с темным оформлением окон. Поскольку средствами 1С не получается полноценно изменить оформление элементов управления, решение было найдено при помощи подмены CSS средствами сервера Apache, кому будет интересно, могу поделиться деталями. Тема выглядит непривычно, но очень привлекательно, по сравнению со стандартным оформлением 1С.

 

 

Другие улучшения

1) Добавлена возможность оценить (проголосовать) за решение других участников.

2) Появился форум для обсуждений на Wordpress.

3) Участники могут предложить свой тест или задание.

4) Добавлено много интересных задач из различных областей программирования: лабиринты, рекурсии, работа с структурами данных, математические и логические задачи, динамическое программирование.

 

Пятничные задачи

Для тех, кто заинтересовался, приведу пример заданий.

 
 Простое: Кубик Рубика (ссылка)
 
 Среднее: Нарисовать горы (ссылка)
 
 Сложное: Криптарифмы (ссылка)

 

Спасибо за уделенное внимание, всем хорошего дня и удачного решения задач!  Подключайтесь .

Задачи программирование турнир площадка платформа решение задач

См. также

Infostart Toolkit: Инструменты разработчика 1С 8.3 на управляемых формах

Инструментарий разработчика Роли и права Запросы СКД Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

10000 руб.

02.09.2020    126597    685    389    

737

Infostart PrintWizard - создание и редактирование печатных форм в 1С 8.3

Пакетная печать Печатные формы Инструментарий разработчика Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:Конвертация данных 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Инструмент, позволяющий абсолютно по-новому взглянуть на процесс разработки печатных форм. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и "прозрачность" разработки, а также навести порядок в многообразии корпоративных печатных форм.

18000 руб.

06.10.2023    8329    24    6    

45

Infostart УДиФ: Управление данными и формами 1С

Инструменты администратора БД Инструментарий разработчика Роли и права Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

10000 руб.

10.11.2023    4689    12    2    

38

SALE! %

PowerTools

Инструментарий разработчика Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

3600 2280 руб.

14.01.2013    178878    1084    0    

862

Бустер Конвертации данных 3 (Infostart Toolkit)

Инструментарий разработчика 8.3.14 1С:Конвертация данных Россия Платные (руб)

Расширение для конфигурации “Конвертация данных 3”. Добавляет подсветку синтаксиса, детальную контекстную подсказку, глобальный поиск по коду.

15000 руб.

07.10.2021    15078    3    12    

37

Многопоточность. Универсальный «Менеджер потоков» 2.1

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

5000 руб.

07.02.2018    99805    240    97    

298

1С HTML Шаблоны / HTML Templates

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Быстрая и удобная обработка для работы с шаблонами HTML. Позволяет легко и быстро формировать код HTML.

2040 руб.

27.12.2017    28402    4    10    

16

[ЕХТ] Фреймворк для Расширений 1С

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Платные (руб)

"Фреймворк для Расширений 1С" это универсальное и многофункциональное решение, упрощающее разработку и поддержку создаваемых Расширений. Поставляется в виде комплекта из нескольких Расширений с открытым исходным кодом. Работает в любых Конфигурациях в режиме Управляемого приложения с режимом совместимости 8.3.12 и выше без необходимости внесения изменений в Конфигурацию.

3000 руб.

27.08.2019    18498    6    8    

40
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. ixijixi 1801 02.06.23 09:25 Сейчас в теме
Спасибо за вклад в развитие сообщества. Отрадно видеть, что есть люди, которые занимаются его развитием путем создания подобных платформ! Успехов!
user1619761; DrAku1a; van_za; kaaasteeen; ЛЛ Юрий; dmpas; Rafaraf; starik-2005; BigMih; SerVer1C; AllShallFall; kuntashov; burni4; elcoan; +14 Ответить
12. elcoan 1003 05.06.23 17:19 Сейчас в теме
(1) Спасибо, такие комментарии очень мотивируют)
2. Tavalik 3361 02.06.23 09:28 Сейчас в теме
Отличная идея и реализация! Молодцы, жалею дальнейшего развития проекта!
van_za; kaaasteeen; ЛЛ Юрий; dmpas; Rafaraf; AllShallFall; kuntashov; ixijixi; burni4; elcoan; +10 Ответить
3. kuntashov 449 02.06.23 10:19 Сейчас в теме
Круто!

А еще есть open source есть платформа Let's Code, разработанная Артемом Пластининым: https://github.com/plastinin/let-s-code

Она использовалась для проведения INFOSTART DevBattle на прошлогоднем Эвенте.

Также есть ее форк с продвинутыми фичами, которые реализовал Андрей Крапивин и команда Контура - https://github.com/KrapivinAndrey/let-s-code

С ее помощью проводили соревнования в Контуре.
kaaasteeen; ЛЛ Юрий; dmpas; ixijixi; artbear; +5 Ответить
4. PowerBoy 3364 02.06.23 10:46 Сейчас в теме
Попробовал, понравилось.
5. acces969 344 02.06.23 11:27 Сейчас в теме
Интересно. Запуск УФ только под толстым клиентом?
13. elcoan 1003 05.06.23 17:20 Сейчас в теме
(5) основной режим запуска - веб-клиент.
6. tanya_charm 02.06.23 11:55 Сейчас в теме
Отличный сервис, использую для тестирования стажеров.
Прошу связаться со мной через личные сообщение, готов финансировать развитие проекта
14. elcoan 1003 05.06.23 17:21 Сейчас в теме
(6) Интересный кейс) можете рассказать подробнее про тестирование?
26. AlexCherdakov 20 15.06.23 13:03 Сейчас в теме
(14) в общем зря я беспокоился что тестируемый может закрыть текущую задачу открыть такую же уже решенную посмотреть ответ и вернуться в решение, если стажер это сможет то фиг с ним )) берем на работу ))

Спасибо за вашу разработку, буду использовать, обычно я просто говорю "запросите у пользователя числа и выведите их в порядке возрастания не используя типовых сортировок, сортировать значения можно только вручную"
25. AlexCherdakov 20 13.06.23 15:27 Сейчас в теме
(6) Вы заводите стажерам отдельный аккаунт? Стажер получает случайное задание? Мне больше нравится давать предварительно решенное мной задание иначе больше времени уходит на тестирование и сложнее оценить знания. Простой результат решил/не решил и время решения не очень хороший критерий оценки тем более в случае случайного задания.

Если же вы даете задание из уже решенных то как быть с возможностью закрыть текущую задачу и найти его в списке решенных с возможностью просмотра всех текущих решений

Для тестирования стажеров была бы хороша функция запуск конкретного задания у нового пользователя, например без зачета результата в турнире...
7. maXon777 129 02.06.23 12:28 Сейчас в теме
Шикарная штука. В свое время открыл для себя тренажер запросов http://old.its22.ru/zaprosi-1s-8, а тут такая шикарная штука :) Спасибо ребят!

PS Можете подсказать как реализовали деавторизацию в форме регистрации? (показать участок кода?) Вообще реализация тренажера огонь!
elcoan; Rafaraf; +2 Ответить
15. elcoan 1003 05.06.23 17:22 Сейчас в теме
(7) Спасибо) не очень понял о чем речь, что такое деавторизация?
20. maXon777 129 05.06.23 17:28 Сейчас в теме
(15) Вход осуществляется через пользователя "Регистрация". Затем появляется обработка - в ней создаем нового пользователя. Нажимаем создать - дальше форму выбивает и появляется окно авторизации. Получается как-то программно разорвали сеанс? Интересно как этот блок реализован программно
21. elcoan 1003 05.06.23 17:33 Сейчас в теме
(20) Понял. На самом деле это одна строчка кода:

ЗавершитьРаботуСистемы(<Запрашивать возможность>, <Перезапустить при завершении>, <Дополнительные параметры комадной строки>)

Не запрашивать, перезапустить, в параметрах логин и пароль пользователя - эти значения введены в форме регистрации.
maXon777; +1 Ответить
8. SerVer1C 763 02.06.23 12:33 Сейчас в теме
подмены CSS средствами сервера Apache

Напишите про это статью, сообществу будет полезно, т.к. на вебинарах по платформе многие хотят видеть темное оформление в эске.
elcoan; ixijixi; maXon777; IamAlexy; Rafaraf; +5 Ответить
16. elcoan 1003 05.06.23 17:25 Сейчас в теме
(8) постараюсь на этой неделе написать.
9. dmpas 418 03.06.23 12:16 Сейчас в теме
мои вам плюсцы!
Сделайте восстановление пароля...
kaaasteeen; Melefaro; elcoan; +3 Ответить
17. elcoan 1003 05.06.23 17:25 Сейчас в теме
(9) спасибо) попробую подключить штатную функцию по восстановлению пароля
22. elcoan 1003 05.06.23 18:08 Сейчас в теме
(9)
Сделайте восстановление пароля...

Сделал.
10. user1181064 04.06.23 15:56 Сейчас в теме
Не удается зарегистрироваться, пароль не соответствует уровню сложности: буквы - заглавная, строчная, - цифры, спец.символы, более 8 символов длина. ЧЯДНТ???
18. elcoan 1003 05.06.23 17:26 Сейчас в теме
(10) Может быть пароль содержит повторяющиеся символы? Попробуйте сгенерировать пароль спец. утилитами.
11. DoReMu 3 05.06.23 07:11 Сейчас в теме
Что-то лежит сервис - 502 ошибка
19. elcoan 1003 05.06.23 17:27 Сейчас в теме
23. van_za 246 06.06.23 12:30 Сейчас в теме
24. Rafaraf 37 09.06.23 12:02 Сейчас в теме
Чет серверу поплохело ))) лежит
27. gtrr34 6 16.06.23 19:03 Сейчас в теме
Для меня, как для новичка - просто находка!
Решаю в день по задаче, что позволяет не забывать пока еще не отработанные до автоматизма приемы.
Затягивает так, как компьютерные игры не затягивали в студенчестве :)
Радует поддержка в телеграмм-канале.

P.S. Новичку найти эту платформу "случайно" практически не возможно, мы не сидим на инфостарте, так как у нас нет "инфомани" и тут нас обычно поливают из ушата профессионалы. В основном на ютубе тремся :)
28. Briss 29.06.23 13:00 Сейчас в теме
Давно искал что - то подобное для 1С.
Удобный интерфейс, интересные задачи и главное - возможность посмотреть решения других пользователей и подчерпнуть для себя что - то новое.
29. MarkovPTZ 12.02.24 15:06 Сейчас в теме
Всем Здравствуйте.
Не приходит код подтверждения на почту.
В чем может быть дело?)
Оставьте свое сообщение