Мелочи от зануды



  • Хинты (они же тултипы) бы для всех кнопок в UI, не только для некоторых. Многие хинты можно сделать посодержательнее.



  • Может быть, я не разобрался ещё, но есть ли способ выпонять селекторы на конкретном элементе или списке элементов? Чтобы найти нужный фрагмент и парсить дальше только внутри него. В текущем исполнении, вроде бы, надо просто родительский селектор ставить перед дочерним, но тогда это фактически просто длинный селектор от корня документа и движок селекторов отрабатывает каждый запрос дольше, чем мог бы, что неоптимально для производительности.



  • Удобная работа с потоками - одна из ключевых фич продукта. Но можно ли вообще для потока не инстанциириовать браузер? Для простых задач иногда достаточно только HTTP-клиента и браузер не нужен, а ресурсы жрутся, скорость thread spawning падает.



  • @daemons said in Мелочи от зануды:

    Удобная работа с потоками - одна из ключевых фич продукта. Но можно ли вообще для потока не инстанциириовать браузер? Для простых задач иногда достаточно только HTTP-клиента и браузер не нужен, а ресурсы жрутся, скорость thread spawning падает.

    Браузер не запускается, если в коде нет блоков, которые его используют.



  • @Antonio Ну я допускаю, что недоразобрался. Однако галочки браузеров появляются для каждого потока при выполнении в режиме Запуска. Это только чекбоксы, больше ничего?



  • @daemons, да.

    "Относительные пути для ресурсов! Это очень важно! Релокэйшн скрипта и на дев и на прод машину (или, может, у кого еще и тест есть, а? ;) )"

    Ресурсы задавать через настройки скрипта и на других машинах выбирать нужное расположение. Потом сохранять в файл эти настройки и для новых версий скрипта их сразу загружать из этого файла (импорт/экспорт настроек только для скомпилированных проектов работает).

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



  • @daemons said in Мелочи от зануды:

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

    Мне кажется, что это сделано как раз, чтобы разгрузить интерфейс. Там и так с непривычки челюсть можно уронить.



  • @Antonio

    Ресурсы задавать через настройки скрипта и на других машинах выбирать нужное расположение. Потом сохранять в файл эти настройки и для новых версий скрипта их сразу загружать из этого файла (импорт/экспорт настроек только для скомпилированных проектов работает).

    Я этот маршрут уже рассматривал. Но костыльно всё равно.
    Вообще, надо бы глобально решить вопрос с current working directory или ввести понятие root directory. Сейчас есть блок "Путь к проекту", но на этапе задания ресурсов его не поюзаешь. Да и в целом абсолютные пути - это зло. Не абсолютное, но часто таки зло. Сейчас CWD, я так понимаю, это директория, в которой расположен исполняемый файл. Более логично было бы сделать ее директорией с файлом проекта .



  • @daemons said in Мелочи от зануды:

    Сейчас CWD, я так понимаю, это директория, в которой расположен исполняемый файл. Более логично было бы сделать ее директорией с файлом проекта .

    Дело в том, что архитиктура БАСа заточена под то, что ты проекты компилируешь и у каждого файла проекта все равно свой exe. Никто в здравом уме не гоняет в многопотоке проекты в режиме запуска из редактора.



  • @Antonio

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

    Мне кажется, что это сделано как раз, чтобы разгрузить интерфейс. Там и так с непривычки челюсть можно уронить.

    Про разгрузку я тоже думал, но постепенно начинающим врубаться юзерам (как я :)) перестаёт этого хватать. Иногда этот единственный маршрут через клики начинает подбешивать. Хочется просто добавить блок и быстренько набить там всё, что тебе надо.

    Может быть, надо упрятать это под кнопку Advanced...



  • @Antonio

    Дело в том, что архитиктура БАСа заточена под то, что ты проекты компилируешь и у каждого файла проекта все равно свой exe. Никто в здравом уме не гоняет в многопотоке проекты в режиме запуска из редактора.

    Тут я немного не соглашусь. Ибо это не единственный вариант использования BAS. Можно иметь множество ботов, скрейперов и проч. для одной глобальной задачи (у меня так, например). И у каждого - своя среда с данными. А среда с программными компонентами может быть общая. Я еще не до конца разобрался, как бы получше всё это обустроить в данном смысле, но буду дальше копать.



  • @daemons, так или иначе, можно задать папку в переменную из настроек или из файла в корне диска c, а потом в скрипте все пути строить относительно неё ([[moyapapka]]/url.txt). Не уверен, можно ли к ресурсам так путь прикрутить, но наверное можно создавать ресурсы не в настройках, а экшенами в onapplicationstart.



  • @Antonio

    можно задать папку в переменную из настроек...

    Да, я не спорю, workarounds есть, и не один. Но тогда красивый диаложек выбора ресурса не будет включать этот ресурс, ну там где-то еще что-то не так... Короче, опять щемящее чувство гемороя.



  • @daemons, так ты что хочешь - выбирать или наоборот, чтобы жесто прописано было? Можно эту папку прописывать в этом диалоге настроек - и то, и то получится. А то, что в БАСе не все интуитивно или не идеально, так это ты еще столкнешся не раз - тут надо вникать в специфику иногда. Это все не реально в обозримом будущем к идеальному виду привести, потому-что автор скорее функционал будет добавлять, чем такие мелочи ковырять.



  • К тому же, если ты сам нормально кодишь, то как раз можешь что-нибудь модифицировать и автор вполне может это добавить в релиз. Например, модуль работы с телеграмом написан участником форума.



  • @Antonio
    Я скажу так. Скрейперы, кролеры, парсеры, боты - всё это можно писать на чём угодно. Я вот до этого на чем только не писал: C#, PHP, JS, PowerShell, C++, t4, SQL-и разные, всего уж и не упомнишь. Всё время куски какие-то лепить надо было. И всегда была мысль сделать нечто систематизированное - библиотку - и там уж всё будет по уму. Но времени, как всегда, не хватало. Потом начал поиски - и после долгого выбора решил присесть на BAS.

    Вот и хочется, чтобы была специализированный функционал, удобная отладка, блок-схемо подобные сценарии выполнения (ну вот для меня эталон - это как в SSIS или ETL в SAP BW), возможность параметризации всего, что можно. Минимизировать время разработки, избежать разных геморов и костылей, сосредоточиться на главном.

    Концепция ресурсов тут хорошая, ничего не скажешь. Но то, что я не могу параметризировать это как мне надо (и неважно, какая у меня цель - я, как разраб с опытом, уверен, что она оправдана) - немного неудобно. Это значит, что геморы и костыли таки возникают на трудовом пути.

    Но продукт развивается, и это радует. Надежда, что мои feature reqs заметят, есть.

    Что-то многа букаф. Сорри.



  • Я не к тому, что не нужно придумывать возможные улучшения для БАСа, а к тому, что, как ты сам понял, автор один сейчас все делает, а планы большие. Он даже форум читает по своему расписанию, чтобы не перекидываться с разработки на фикс багов постоянно. Так что пока придётся во многих местах костыли использовать как не крути.



  • Еще есть некая специфика. Оказывается, Punto Switcher не работает нигде в BAS GUI. Прога в русской среде распространена.



  • @daemons said in Мелочи от зануды:

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

    Премиум стоит 80 баксов на 1 год. Самый простенький бот стоит в пределах 30 баксов (по крайней мере у меня). Сделал 3 бота по 30 баксов за год и окупил лицуху и даже вышел в плюс))

    На счет всех пожеланий по доработке БАС. Если есть опыт разработки, можешь помочь автору. Код в открытом доступе на гидхабе. Делай свои коммиты, если качество будет на уровне, автор по любому примет твой код. Знаю некоторые модули БАС сделаны сторонними разработчиками. Модули можно писать на JS.



  • @daemons said in Мелочи от зануды:

    Однако галочки браузеров появляются для каждого потока при выполнении в режиме Запуска. Это только чекбоксы, больше ничего?

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


Log in to reply
 

Looks like your connection to Bablosoft was lost, please wait while we try to reconnect.