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

Публикация № 1421272

Разработка - Универсальные функции

Программист - это человек, непрерывно принимающий решения. Написание кода не является процессом принятия решения - это всего лишь трансляция ваших желаний. Если вас периодически тяготит написание сотен строк кода ради решения задач, то прошу обратить внимание. Данный продукт позволит существенно сократить время на рутинные операции при разработке. За счет библиотечной реализации сокращается объём кода, а его читаемость повышается. К библиотеке прилагается документация API и шаблоны кода для наиболее популярных методов.

Данный продукт родился как решение по автоматизации и стандартизации труда программистов. Вместо запоминания, или подвешивания десятков, а то и сотен строк кода на шаблоны кода или иные кодогенераторы, была реализована легкая библиотека содержащая часто используемые методы. Как результат, скорость реализации прикладных решений может возрасти в несколько раз:

- За счет сокращения объёма кода, который необходимо написать

- За счет сокращения объёма кода, который необходимо перечитать хотя бы раз (в реальной разработке бывает намного чаще)

- За счет стандартизации методологии разработки, что сокращает число обидных ошибок, когда забыл обработать исключение или неверно откатил транзакцию.

 

Но это далеко не все возможности. Экономить можно и на поддержке текстов запросов и повышении уровня повторнорного использования.

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

Нет необходимости собирать тексты запроса программно или делать костыли типа Не &ОтборПоОрганизации Или Организация = &Организация. Запросы параметризуются как по вашим настройкам, так и автоматически.

 

 
 Пример 1. Сравнение способов записи группы объектов.
 
 Пример 2. Запросы данных
 
 Пример 3. Регистрация исключений

 

Довольно богато представлен ассортимент методов по работе со стандартными коллекциями

 

 
 Пример 4. Работа с таблицами
 
 Конструкторы таблиц
 
 И много других полезных методов расширяющих возможности таблиц

 

 
 Пример 5. Работа с массивами

 

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

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

 

Особняком идет подсистема динамической подмены кода. Данная подсистема позволяет обеспечить простой и прозрачный способ отказа от динамических обновлений без отказа от контроля версий и централизованной разработки.

 

Подменить можно отдельную функцию, фрагмент кода, целый модуль (общий модуль, объекта, менеджера и.т.д.), обработку/отчет целиком, а при некоторых ограничениях и документ/справочник и другие ссылочные типы.

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

При этом обеспечивается версионная целостность данных и плановое обновление, когда оно всё таки произойдет, не сломает внеочередные заплатки, а дополнит их.

В связи с популярностью данного решения, подсистема может быть куплена отдельно как компонент библиотеки. Поставка предоставляется в виде файла обновления и в виде расширения.

 

ВАЖНО! Позитивные свойства данной системы обеспечиваются версионированием данных и централизованной разработкой. Если данный механизм будет использоваться бессистемно в рамках парадигмы "хренак-хренак и в продакшн", то данная подсистема станет отличным способом отстрелить себе ногу.

В рекомендованных сценариях данная подсистема может быть использована для отладки и тестирования в тестовой среде и как средство экстренного и очень быстрого обновления в продуктовых средах. В отличие от динамического обновления, данная подсистема выполняет обновление сразу же и не требует перезапуска программы для всех заинтересованных пользователей. Следовательно, таким образом можно оперативно исправить ошибку без перезапуска сеансов. 

 

ВАЖНО! Совместимость

 
 Старые версии платформы
 
 Использование модальности

 

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

Причины купить

Даже полный комплект поставки для одного программиста окупится максимум через месяц использования. Только за счет экономии времени. Кумулятивный эффект по сокращению числа зависимостей и объёмов кода будет действовать дольше, но тоже будет давать позитивный эффект.

Гарантия возврата денег

ООО "Инфостарт" гарантирует Вам 100% возврат оплаты, если программа не соответствует заявленному функционалу из описания. Деньги можно вернуть в полном объеме, если вы заявите об этом в течение 14-ти дней со дня поступления денег на наш счет.

Программа настолько проверена в работе, что мы с полной уверенностью можем дать такую гарантию. Мы хотим, чтобы все наши покупатели оставались довольны покупкой.

Для возврата оплаты просто свяжитесь с нами.

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. sashocq 192 22.04.21 16:20 Сейчас в теме
Вообще непонятно для чего это.
Несколько функций, на разбор которых что они делают и для чего нужны нужно потратить времени не меньше, чем на написание.

Половина функций работы с массивами я сразу вижу, что они уже есть в БСП.

А ещё есть какая-то полная поставка аж за 15 тыщ. И упоминается какая-то загадочная "динамическая подмена кода", что это?

Данная подсистема позволяет обеспечить простой и прозрачный способ отказа от динамических обновлений без отказа от контроля версий и централизованной разработки

Это о чём?

Позитивные свойства данной системы обеспечиваются версионированием данных и централизованной разработкой

Это для кого написано??? Для бухов или для разработчиков всё же?

Может, конечно, это что-то крутое. Но из описания совершенно непонятно что это. + наверное кто-то поставил просто чтобы в закладки внести.
2. Техподдержка 22.04.21 16:46
(1)
Здравствуйте, благодарю, что не прошли мимо.

Вообще непонятно для чего это.
- в анонсе и в названии статьи об этом и написано. Для сокращения издержек на воспроизведение и сопровождение часто используемых алгоритмов

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

Половина функций работы с массивами я сразу вижу, что они уже есть в БСП.
- не сомневаюсь. Но ряд функций в этой библиотеке появились как замена БСП-шных или дополнение. Часть возможно воспроизвелись синхронно. Да и не везде БСП можно применить с её немалым размером и сильной связностью подсистем между собой.

А ещё есть какая-то полная поставка аж за 15 тыщ
почему аж? Это окупится максимум за месяц, в зависимости от специфики работы.

И упоминается какая-то загадочная "динамическая подмена кода", что это?
- альтернатива динамическому обновлению.

Это о чём?
дело в том, что на практике не раз встречал различные кустарные методики подобные этой, но не обеспечивающие контроль версий, бесшовность и вообще беспроблемность при обычных обновлениях и.т.д.

Это для кого написано??? Для бухов или для разработчиков всё же?
вообще для программистов. С первых до последних слов. Программист является даже первым словом в данной публикации.

Спасибо за критику, Вы обратили внимание на слабые места в подаче. Попробую переработать. Но в любом случае детально описать библиотеку это то же самое что написать её повторно. Именно для этого я и предложил сомневающимся сеанс демонстрации возможностей:

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

См. также

SALE! 25%

PowerTools Промо

Универсальные обработки Администрирование данных 1С Поиск данных Распределенная БД (УРИБ, УРБД) Сервисные утилиты Обработка документов Обработка справочников Чистка базы Консоль запросов Прочие инструменты разработчика Структура метаданных v8 v8::УФ 1cv8.cf Россия Платные (руб)

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

2000 1500 руб.

14.01.2013    124321    628    0    

Infostart Toolkit

Консоль запросов Прочие инструменты разработчика v8 v8::УФ v8::Запросы v8::СКД 1cv8.cf Платные (руб)

Простые и удобные инструменты: Консоль запросов, СКД, Редактор объекта, Поиск ссылок и другие. Редактор запросов и кода с раскраской и контекстной подсказкой. Улучшенный конструктор тонкого клиента и др.

8000 руб.

02.09.2020    20807    58    124    

Коннектор: удобный HTTP-клиент для 1С:Предприятие 8

Практика программирования Внешние источники данных WEB Универсальные функции Инструментарий разработчика Универсальные обработки v8 1cv8.cf Платные (руб)

Коннектор - библиотека для работы с HTTP запросами. Библиотека берет на себя всю рутину работы с HTTP запросами. Буквально в одну строку можно получать данные, отправлять, не заботясь о необходимости конструирования URL, кодирования данных и т.п.

2000 руб.

31.01.2019    66055    436    185    

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

Производительность и оптимизация (HighLoad) Инструментарий разработчика Математика и алгоритмы Универсальные функции v8 1cv8.cf Россия Платные (руб)

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

3000 руб.

07.02.2018    78077    159    60