0. nixel 903 06.03.18 13:33 Сейчас в теме

Создаем свою библиотеку для OneScript

Как упаковать свою библиотеку в пакет? Что такое загрузчик и зачем он нужен? Как вообще создать свою библиотеку? Разбираемся на примере.

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. Infactum 288 06.03.18 14:38 Сейчас в теме
Вот это правильная статья, в отличие от того, что в последнее время в топе болтается.
Perfolenta; Kosstikk; nvv1970; Soloist; Liris; SerebanSK; bulpi; o4karek; antonst1; fancy; CSiER; kuntashov; Evil Beaver; +13 Ответить
2. nixel 903 06.03.18 14:45 Сейчас в теме
3. Evil Beaver 6754 06.03.18 15:44 Сейчас в теме
Фундаментально, ага!

Для получения автодополнения имен методов, например, у класса УправлениеКонфигуратором (из пакета v8runner), имя переменной должно равно УправлениеКонфигуратором.


Вот у меня точно помню, что переменная называлась иначе, а подсказка в VSC все равно срабатывала. Может в VSC уже и выведение типа переменной сделано, а мы пропустили?
4. nixel 903 06.03.18 16:00 Сейчас в теме
(3)

Фундаментально, ага!


Прелестно, прелестно! :)

Вот у меня точно помню, что переменная называлась иначе, а подсказка в VSC все равно срабатывала. Может в VSC уже и выведение типа переменной сделано, а мы пропустили?


А ты уверен, что у тебя после точки выводились нужные тебе процедуры и функции, а оно не совпало (случайно) с каким-то зарегистрированным классом/модулем?
5. lustin 06.03.18 16:58 Сейчас в теме
(0) теперь для чистоты эксперимента - делаем ставки сколько новых библиотек появится ;-).

Круто кстати - особенно BPMN
nvv1970; creatermc; nixel; +3 Ответить
6. nixel 903 06.03.18 17:16 Сейчас в теме
(5) ну, ты жаловался периодически на тему "как же создать новую библиотеку". вот тебе полноценный гайд :D
olegtymko; +1 1 Ответить
29. Steelvan 12.03.18 15:57 Сейчас в теме
(6) ... полноценное руководство
Perfolenta; +1 2 Ответить
22. bulpi 174 09.03.18 18:04 Сейчас в теме
Не по теме публикации, чисто потрепаться. Одному мне кажется, что все эти тесты - не более, чем игры взрослых мальчиков в солдатики? Подозреваю, что таких как я , большинство, но все молчат, боясь показать свою "немодность" и "непродвинутость". Любая проблема должна быть решена наипростейшим образом, в том числе проблема тестирования. "Визуальное" тестирование и есть наипростейшее решение. А вот это все Ожидаем.Что(Результат).Равно(5)
- "горе от ума". Возможно, это нужно в ооо...чень больших проектах, которых примерно 0.01% от общего количества. За всю жизнь ни разу в таких не участвовал.
23. nixel 903 09.03.18 22:38 Сейчас в теме
(22) любой более-менее серийный/серьёзный продукт надо тестировать. Когда твой скрипт запускается больше, чем один раз и обрастает функциональностью, когда от него зависит работа продакшн контура, его развёртывание и более сложное использование - без тестирования любой баг в логике влетает во вполне ощутимые деньги.
Точно так же и с конфигурациями. Bdd/Tdd спасают производство и ускоряют разработку (хотя для большинства этот пункт звучит удивительно и непонятно)
nvv1970; artbear; +2 Ответить
24. nixel 903 09.03.18 22:41 Сейчас в теме
(22) визуальное тестирование, которое производится более двух раз, обычно уже дороже, чем написание автоматизированного теста. А отсутствие тестирования обычно дороже, чем его отсутствие :) простая мотивация.
Perfolenta; artbear; +2 Ответить
25. nixel 903 10.03.18 00:55 Сейчас в теме
(24) а наличие тестирования дороже, чем его отсутствие *
26. nixel 903 10.03.18 11:09 Сейчас в теме
(25) и с третьей попытки - отсутствие тестирования дороже, чем его наличие :)

P.S. Вчера был тяжёлый день
27. baton_pk 401 10.03.18 20:28 Сейчас в теме
(22)
игры взрослых мальчиков в солдатики

это как велосипедный шлем, как наколенники при катании на роликах, как очки и перчатки во время ремонта, как строительные ботинки со стаканом в носке. "Крутые парни с улицы" смотрят на всё это свысока, но профессионалы без этого за дело не берутся.
Perfolenta; Kosstikk; nvv1970; Evil Beaver; SerebanSK; artbear; nixel; JohnyDeath; +8 Ответить
46. Perfolenta 188 07.07.19 14:35 Сейчас в теме
(27) на счет ботинков со стаканом в носке подтверждаю на 100%, т.к. лично видел, как эти ботинки спасли человеку ступни...
28. vano-ekt 730 11.03.18 08:25 Сейчас в теме
(22)
игры взрослых мальчиков в солдатики

не обращай внимания, они даже ИС читают curl'ом , а не хромом
зачем нажимать целых две кнопки ctrl+F в браузере, когда можно вызвать программу с десятью опциями?
те же яйца, но в другой корзинке IDE
7. artbear 1184 06.03.18 17:39 Сейчас в теме
Отличная статья.

Зачем это все? Теперь мы можем «использовать» нашу библиотеку «по имени»! Вернемся в сценарий my_project/script.os и заменим строку «использования» библиотеки с «пути» (с кавычками и двумя точками) на подключение «по имени» (без кавычек и каких-либо путей):

а теперь попробуйте доработать библиотеку в исходниках, запустить тесты и получить прохождение тестов не своих исходников, а уже установленной библиотеки.

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

и также лучше указать, что #Использовать ".." должно быть первым в списке #Использовать для исключения проблем разработки
alex_bob; +1 Ответить
8. nixel 903 06.03.18 18:06 Сейчас в теме
(7) новый сценарий и так вне каталога библиотеки располагается, это внешний проект, созданный в начале статьи. в чем вопрос?
9. artbear 1184 06.03.18 18:16 Сейчас в теме
(8) Упс, не увидел на скриншоте.
Значит, заработался, пора домой!
16. artbear 1184 07.03.18 11:15 Сейчас в теме
(8) Предлагаю указать, что #Использовать ".." должно быть первым в списке #Использовать для исключения дальнейших проблем разработки
10. AlexWhite 190 06.03.18 20:28 Сейчас в теме
11. Brawler 469 06.03.18 21:09 Сейчас в теме
Завидую тем, кто не погряз в учетных дебрях типовых и тренирует пытливые мозги!))
Осознаю, что наблюдаю со стороны за рождением чего-то значительного.
Так держать!!!
nvv1970; nixel; +2 Ответить
12. kuntashov 367 06.03.18 23:09 Сейчас в теме
Заранее извиняюсь за огромное количество упоминаний слова «библиотека» в тексте статьи :)


$ curl -s -L https://infostart.ru/public/791568 | iconv -f cp1251 -t utf8 | grep -o 'библио*' | wc -l
139
Kosstikk; nvv1970; artbear; JohnyDeath; Evil Beaver; lustin; nixel; +7 Ответить
13. nixel 903 07.03.18 01:24 Сейчас в теме
(12) кажется, что это новый рекорд :D
kuntashov; +1 Ответить
18. Evil Beaver 6754 07.03.18 14:02 Сейчас в теме
(12) Эта строчка заслуживает отдельной гик-медали. Как посчитать количество вхождений слова в интернет-статье одной строчкой консоли, используя только стандартные утилиты unix ))
bulpi; artbear; +2 Ответить
19. baton_pk 401 07.03.18 14:48 Сейчас в теме
(18)
я позанудствую, но слово "Библиотека" есть в разделах в меню слева. Ещё наверняка в каких-нибудь мета-тэгах.
20. Evil Beaver 6754 07.03.18 16:22 Сейчас в теме
(19) Пулреквест в oneliner от Кунташова?
kuntashov; +1 Ответить
21. kuntashov 367 07.03.18 17:18 Сейчас в теме
(19) Я подумал, что в данном случае погрешностью в пару случаев можно пренебречь :)
14. new_user 179 07.03.18 08:57 Сейчас в теме
15. nixel 903 07.03.18 09:29 Сейчас в теме
(14) спасибо, Саш :) ждать от тебя библиотеку?)
30. new_user 179 21.03.18 16:23 Сейчас в теме
(15) да, простенькую, но полезную)
17. Samarkan63 07.03.18 11:47 Сейчас в теме
Интересная тема, понаблюдаю )
41. Gureev 23.04.18 16:07 Сейчас в теме
Может не очень в тему, подскажите, можно ли OneScript собрать в exe'шник?
42. nixel 903 23.04.18 17:31 Сейчас в теме
(41) да, можно. oscript -make путь/к/главному/файлу/os имя.exe
47. alex_bob 222 31.07.19 09:26 Сейчас в теме
Отличная статья. Многое проясняет. А что делает oscript, если в двух разных используемых библиотеках встретятся модули или классы с одинаковыми названиями?
48. nixel 903 31.07.19 09:32 Сейчас в теме
(47) в зависимости от настроек и флагов в переменных среды.
Либо упадёт с исключением, либо загрузит одно из них.
49. ahyahy 03.12.19 18:36 Сейчас в теме
Спасибо! Статью обязательно прочитаю/дочитаю. Вот библиотека для создания gui. Приходите на https://onescriptgui.teriy.com/ Пока она там находится. Классов - 176, свойств - 1073, методов - 557, перечислений - 63. Основана на KiXforms.NET v3.2.16.0 написанной Shawn Tassie. Правда её причесать как следует надо. Вот эта статья как раз то, что надо. Исходный код позже будет, рук не хватает и теперь времени не стало хватать.
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Екатеринбург
зарплата от 80 000 руб. до 130 000 руб.
Полный день

Автор новостных обзоров на тему 1С и бухучета
Санкт-Петербург
По совместительству

Разработчик 1С
Санкт-Петербург
зарплата от 140 000 руб.
Полный день

Консультант-аналитик 1С
Санкт-Петербург
зарплата от 90 000 руб.
Полный день

Программист 1С
Москва
зарплата от 150 000 руб. до 200 000 руб.
Полный день