Обсуждение:Extra. Полезные библиотеки на RSL.
5 (2)
- Обсуждение:Extra. Полезные библиотеки на RSL. ( Обсуждение примера 29.04.2019 09:24 )5(1)В состав библиотеки входит:
- Библиотека коллекций для RSL (Lists, Maps, Sets)
- StreamApi (ленивые цепочки вычислений)
- Лямбда-функции (динамическая генерация функций из строк)
- RUnit (юнит-тестирование)
- LogR (логирование)
- StringUtils (утилиты для работы со строками)
- TimeUtils (утилиты для работы с датой/временем, парсинг/форматирование даты из/в строку по шаблону)
- SArray (расширение стандартного класса TArray) обновленный с раздачи (https://isupport.softlab.ru/portal/samples/sample.asp?Typ=7&id=496)
- SimpleMenu (Реализация скроллинга на базе Menu).
Большинство интерфейсов классов было взято из Java (немного из Kotlin и JS).
Позволяет писать код в ООП и функциональном стилях.
Избавляет от необходимости использовать временные таблицы.
Ускоряет как написание кода, так и время его исполнения (но поджирает ОЗУ).
Весь код написан исключительно на RSL (без dlm), а значит не требует регистрации и прост в отладке.
Ключевые моменты протестированы.
Документация в комплекте.
Установка:
Папку extra закидываем целиком в директорию "../mac/".
Документация онлайн (через современный браузер):
https://rslextra.github.io/
Репозиторий библиотеки на Github:
https://github.com/RslExtra/Extra
Репозиторий документации:
https://github.com/RslExtra/RslExtra.github.io
P.S Рефакторинг и тесты дописывались на RS-Forms.
Поэтому если кому не сложно, запустите тесты в файле "/_Tests/UT_RunAllTest.mac" и напишите, все ок или нет.
Посмотреть пример
>> Ответить- версия? ( MirnyiAtom 17.05.2019 16:03 )0(0)Коллеги, это для какой версии РС?
>> Ответить- под 5.5 должна работать ( Marik 20.05.2019 09:38 )0(0)Библиотека изначально писалась под 5.5. Но судя по документации, в 6 используется тот же RSL. Единственные зависимости окружения это (bankinter, rcw, rsexts). Как с ними в 6ке я, к сожалению, не знаю.
>> Ответить
- под 5.5 должна работать ( Marik 20.05.2019 09:38 )
- Круто! ( techmaster 02.08.2019 14:01 )0(0)Интересная библиотека. Посмотрел, позапускал примеры. Вот уже 10 лет, как я прекратил заниматься RSL-ем. Потрясающе, но он продолжает развиваться благодаря таким энтузиастам! Ещё раз убеждаюсь, что талантливый человек может сделать шедевр из чего угодно. Очень здорово!
>> Ответить - В языке RSL можно объявлять только одномерные массивы? ( dadgoff 08.10.2019 12:49 )0(0)https://rslextra.github.io/packages/arrays/index.html
>> Ответить- Да ( Marik 08.10.2019 13:58 )0(0)Да. Это цитата из официальной документации. Раздел "Определение массивов"
>> Ответить- не понял ( Sergey V. Mamaev 29.10.2019 06:07 )0(0)не понял. а что мешает делать так?
var a=tarray;
a[0]=tarray;
a[0][0]=100500;
msgbox(a[0,0]); // обращаться можно и так
>> Ответить- Это вложенный массив ( Marik 29.10.2019 06:19 )0(0)Сделать то можно, но это одномерные массивы вложенные в одномерный массив. Не инициализированные и с объектным оверхедом по памяти, если сделать a[1,0] схватим NPE.
Конечно можно сделать двумерный массив на базе одномерного с фиксированной шириной(аля как в VBA), но это будет собственная реализация.
>> Ответить
- Это вложенный массив ( Marik 29.10.2019 06:19 )
- не понял ( Sergey V. Mamaev 29.10.2019 06:07 )
- Да ( Marik 08.10.2019 13:58 )
- версия? ( MirnyiAtom 17.05.2019 16:03 )