Что нового

Какими ЯП вы владеете и за что любите/не любите AutoIt

_ToBe_

Осваивающий
Сообщения
142
Репутация
35
Люблю AutoIt за его дружелюбность ко мне и простоту кодинга
Хотелось бы на нём игры делать, но увы... Вот меня завлекают перейти на С# игры делать... Хотя и на питоне есть хорошие примеры игровых жанров :smile:
 

asdf8

Скриптер
Сообщения
564
Репутация
152
Viktor1703 [?]
И в справке ясно написано

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


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

Если бы меня это пугало, я б не пользовался РВ. :smile:
 

Viktor1703

AutoIT Гуру
Сообщения
1,535
Репутация
413
asdf8 [?]
есть функция бесконечного проигрывания звука, но нет функций определения статуса

Я порой тоже удивляюсь с разработчиков PureBasic

[?]
А теперь то-же для версии 4.61, или мне надо будет 5000 строк кода переписывать под версию 5.11?

Если сравнивать с AutoIt то в AutoIt тоже раньше не было например

Код:
ObjCreateInterface()


Я просто слежу за версиями PureBasic и пытаюсь переходить на более свежие, если нет желания переписывать исходник, то и не нужно, просто в будущем например я уже буду знать что такая - то функция уже есть в PureBasic N версии. По моему нет смысла говорить о каком либо языке в лучшую или худшую сторону, так как каждый язык по своему чем - то хорош, а чем - то плох, не написали ещё такой язык чтоб по лёгкости и автоматизации он был как Autoit, мощью как СИ, С++, Python... и поддерживал макросы и asm вставки как в C++, PureBasic и т.д. :smile:


Добавлено:
Сообщение автоматически объединено:

Кстати, ни кто ни чего не слышал, когда появится AutoIt v4 ?
 

sims

Осваивающий
Сообщения
184
Репутация
24
asdf8 [?]
А теперь то-же для версии 4.61, или мне надо будет 5000 строк кода переписывать под версию 5.11?
У вас что проект на несколько миллионов строк?
Между PureBasic 4.61 и 5.11 не такая существенная разница чтобы все переписывать.


То, что я имел в виду на AutoIt выглядело бы примерно так :
Выше уже написали что в AutoIt массив, это массив указателей. А в PureBasic массив, это последовательность ячеек в памяти.
Код:
Dim Test.a(10, 10)

Count=0

For x=0 To 10
  For y=0 To 10
    Test(x, y) = Count
    Count + 1
  Next y
Next x

ShowMemoryViewer(@Test(), 11*11)
Доступ к массиву в PureBasic выполняется быстрее чем в AutoIt и памяти требуется меньше, ведь массиве хранятся данные, а не указатели на области данных.
Но раз вам непременно захотелось изменять размер многомерного массива при этом, сохраняя данные в нем, то структура вам в помощь.
Код:
Structure ar
  Array x.l(10)
EndStructure

Dim x.ar(10)

x(4)\x(10) = 20

ReDim x(100)

Debug x(4)\x(10)
И кстати, такой метод, позволит иметь разное число элементов в подмассивах.


Остальные библиотеки написаны теми-же руками.
Вы просто не имеете их готовить.
Ваша проблема в том, что пытаетесь программировать на PureBasic думая на AutoIt.
Это разные языки и их внутреннее устройство кардинально отличается.

есть функция бесконечного проигрывания звука, но нет функций определения статуса и общей длительности.
Все есть.
Статус. http://purebasic.com/documentation/sound/soundstatus.html
Длительность. http://purebasic.com/documentation/sound/soundlength.html
 
Автор
A

Altlans

Знающий
Сообщения
10
Репутация
5
Какую IDE для Python посоветуете?
Чтобы удобств было >= чем в SciTE...
 

asdf8

Скриптер
Сообщения
564
Репутация
152
sims
Может закончим дискуссию? Пока что все ответы на мои посты описывали, как обойти недоделки библиотек РВ, хотя я не писал, что у меня с этим какие-то проблемы. Хотелось бы послушать и других участников форума по теме топика.
 

sims

Осваивающий
Сообщения
184
Репутация
24
Altlans [?]
Какую IDE для Python посоветуете?
ИМХО обмен шила на мыло.
Python как и AutoIt - интерпретируемый ЯП. Может конечно он и поддерживает многопоточность, но скажем, DLL не сделать по той же причине что и в AutoIt - интерпретация а не компиляция. Другими словами, на питоне для AutoIt библиотеку не напишешь.
Для работы питон-скриптов, нужно устанавливать питон-интерпретатор на комп. Это затруднит распространение программы.

Лучше попробовать компилируемый ЯП, желательно в нейтив.


asdf8 [?]
Пока что все ответы на мои посты описывали, как обойти недоделки библиотек РВ
Нет, я открывал вам глаза на то, что указанных недоделок нет.
 

Viktor1703

AutoIT Гуру
Сообщения
1,535
Репутация
413
sims [?]
но скажем, DLL не сделать по той же причине что и в AutoIt

Язык по моему выбирают не из - за возможности компиляции в нём dll, можно и без них жить спокойно.

Для работы питон-скриптов, нужно устанавливать питон-интерпретатор на комп. Это затруднит распространение программы.

Не нужно, есть компиляторы для Python.
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
sims [?]
ИМХО обмен шила на мыло.
если мыло это python, то размером так с дом.
на питоне для AutoIt библиотеку не напишешь
зачем? у библиотеки конечно есть свои способы использования, но писать python библиотеки для autoit по крайней мере неэффективно, и отсутствие подобной фичи далеко не является недостатком.
Это затруднит распространение программы.
не очень. так же как и autoit, python поддерживает распространение с минимальным набором файлов и подключаемых библиотеки для stand-alone работы.
желательно в нейтив.
что это?
 

sims

Осваивающий
Сообщения
184
Репутация
24
Kaster [?]
если мыло это python, то размером так с дом.
Но от этого оно мылом не перестает быть. А зачем вам такое огромное мыло?

Native. http://ru.wikipedia.org/wiki/Машинный_код
Программы на интерпретируемых языках (таких как Бейсик или Python) не транслируются в машинный код, вместо этого они исполняются непосредственно интерпретатором.

Kaster [?]
зачем? у библиотеки конечно есть свои способы использования, но писать python библиотеки для autoit по крайней мере неэффективно
Это был всего лишь пример.
Представьте что вы хотите сделать библиотеку, общую для нескольких программ.
На питоне вы ее не скомпилируйте - компилятора-то нет.

И еще, ваша программа никак не защищена и ее видят все! Что поделать - скрипт нужно передать интерпретатору в неизменном виде. Думаю тем, кто хочет защитить свои AutoIt-проги, это знакомо не по наслышке.
 

sims

Осваивающий
Сообщения
184
Репутация
24
Viktor1703 [?]
В таком случае лучше учить С++
Но нужно учитывать что C++ это не самый простой ЯП. И его изучение и разработка на нем могут даться не легко.

Я в уже писал что ЯП нужно выбирать исходя из задачи, чтобы не пришлось стрелять из пушки по муравьям.
Сперва нужно узнать какие задачи предполагается решать, и уже тогда советовать ЯП. А то получается типа того что придя к врачу, он не спрашивает "на что жалуетесь", а сразу дает универсальное лекарство, которое очень вредное для здоровья, малоэффективное для большинства болезней, поэтому его нужно принимать в больших дозах что пагубно влияет на организм. :rofl:

Может вообще нужно программировать под андроид и нужно учить джаву. :whistle:
 

Viktor1703

AutoIT Гуру
Сообщения
1,535
Репутация
413
sims

Я это и писал в начале

Хочу сказать только одно, попробовав ООП, ни в коем случае не вернусь на процедурные языки программирования, знаю что и в PureBasic можно использовать ООП, но через одно место, это только моё мнение и ни чего больше.
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
sims [?]
Но от этого оно мылом не перестает быть. А зачем вам такое огромное мыло?
ну, я всего лишь перефразировал. в моем понимании, это отличный язык, простой в использовании, универсальный, кроссплатформенный, многопоточный, что уж там многопроцессорный, ну и т.д. не встречался еще с задачей, которую нельзя было бы решить относительно простыми способами. будь то GUI или простая автоматизация.
как ты выразился, нужно смотреть под задачу. мне лично не приходилось иметь дело с программами с таким ограничением, или где отсутствие конечного исполняемого файла было критичным. в конце концов JIT-компиляцию еще никто не отменял.
Представьте что вы хотите сделать библиотеку, общую для нескольких программ.
ну это понятно, в этом и весь смысл создания библиотек. но как уже было замечено, без них можно приспокойно обойтись. я лично часто используемые функции оформил в виде модуля. та же самая библиотека, только для самого python. а писать один и тот же проект на двух разных ЯП мне видится неэффективным, однако, несомненно практикуемым явлением.
И еще, ваша программа никак не защищена и ее видят все!
это проблема не языка, а программиста. лично мне защищать свои творения не приходилось. как-то вполне обходился лицензиями. злоумышленники были всегда. от дизассемблирования и реверс-инжиниринга не спасет ни один ЯП. ну разве что писать на каком-нибудь малболдже, там одни сорцы можешь раздавать. народ будет "годами" гадать.
 

joiner

Модератор
Локальный модератор
Сообщения
3,556
Репутация
628
Viktor1703 [?]
Хочу сказать только одно, попробовав ООП, ни в коем случае не вернусь на процедурные языки программирования
Viktor1703, что можешь сказать по поводу споров правильности существования ООП?
 

Viktor1703

AutoIT Гуру
Сообщения
1,535
Репутация
413
joiner

Мне это нужно читать?


Добавлено:
Сообщение автоматически объединено:

«ООП ради самой ООП уже давно превратилось в замкнутый круг. Конечно, можно считать C# в .NET 3.5 с более чем 50,000 реализованных классов „венцом эволюции“. Добавить в следующей версии .NET ещё миллион классов — что может быть более правильным и более вожделенным, с точки зрения ООП-программиста? Говорите, это и есть то самое бегство от сложности?» (на этом месте интервью Ричард демонстративно делает паузу и выкашливается от приступа смеха).

Однако. И я ни где не писал что ООП - это наиболее правильное и простое решение, ни кому не говорил, сам пишу на PureBasic иногда, ООП мне нравится за его возможности и не нужно развивать холивар, это бессмысленно....
 
Верх