Учебник по autoit 2. Версия 7
Autoit - хороший язык программирования,но единственный его минус в том,как говорил в первой части учебника,что он имеет интерпретатор,который работает только в windows.
Интересно,может ли autoit выполняться в линукс под вайном - wine?
В первой части учебника я не использовал тайм-аут функции Msgbox.
Данная autoit-программа простая,но она в наглядной форме показывает использование тайм-аута и приращение целочисленной переменной.
#include <MsgBoxConstants.au3>
Local $counter = 0
While 1
MsgBox($MB_SYSTEMMODAL, "Отображение счётчика", $counter,1)
$counter = $counter + 1
if $counter > 10 then Exit
WEnd
Раньше я считал,что объёмные тексты говорят об уме,но сейчас я склоняюсь к мысли,что объём неважен,а необходимо качество.
Чтобы твой читатель действительно чему-либо у тебя научился - нужно писать не количественно,а качественно.
Любая интересная подача материала должна быть логически-обоснованной и строится от легкого уровня к сложному уровню.Но это к идеале!
В языках программирования существует такое понятие,как область видимости переменной.В autoit явно определять области видимости можно с помощью оператором Local и Global.
#include <MsgBoxConstants.au3>
Local $number_1 = 1
Global $number_2 = 2
MsgBox($MB_SYSTEMMODAL, "$number_1", $number_1)
MsgBox($MB_SYSTEMMODAL, "$number_2", $number_2)
В данном случае операторы Local и Global действуют идентично и ничем в общем сильно не отличаются.
Я привёл некоторый тест областей видимостей.
Файл TestScript.au3
#include <MsgBoxConstants.au3>
#include "GlobalFile.au3"
Local $number_1 = 3
MsgBox($MB_SYSTEMMODAL, "$number_1", $number_1)
MsgBox($MB_SYSTEMMODAL, "$number_2", $number_2)
Файл GlobalFile.au3
Local $number_1 = 1
Global $number_2 = 2
Переменная $number_1 из файла TestScript.au3 перекрывает переменную $number_1 из файла GlobalFile.au3.Присвоение переменной $number_1 значения из файла TestScript.au3 берёт верх над присвоением в файле GlobalFile.au3.Этот пример описывает один из механизмов области видимости.На самом деле писать большие программы используют в своей работе области видимости,так как это очень удобно для реализации алгоритмов.
Файл TestScript.au3
Global $number = 1
#include <MsgBoxConstants.au3>
#include "LocalFile.au3"
MsgBox($MB_SYSTEMMODAL, "$number", $number)
Файл LocalFile.au3
Local $number = 2
MsgBox($MB_SYSTEMMODAL, "$number", $number)
Переменная $number из файла TestScript.au3 переопределяется переменной из файла LocalFile.au3.Поэтому я пока не вижу разницы работы операторов Local и Global.Локальная переменная одного файла не должна перекрывать глобальную переменную из главного файла.Но из теста понятно,что это не относится к интерпретатору autoit.
Иными словами,переопределение зависит от того,в каком месте находится оператор Local c переменной.Только второе присвоение и будет определять значение.
Эти два последних примера хоть и являются почти одинаковыми,но помогли мне сделать вывод о том,как работают операторы Local и Global.Возможно я что-то упустил или не так понял,но эти два оператора имеют одинаковую фунциональность.
При создании программ конечно необходимо использовать переменные и смотреть за тем,какие они принимают значения по ходу выполнения того или иного алгоритма.
Операторы сравнения - больше,меньше,равно,больше или равно,меньше или равно,не равно являются одними из главных конструкций языков программирования.Можно сказать,что эти понятия изучаются в начальной школе и являются интуитивно понятными,поэтому особых сложностей в использовании операторов сравнения возникнуть не должно.
Свидетельство о публикации №123032300394