Язык программирования PERL. Сфера применения

PERL – как язык программирования. История PERL. Интерпретируемых язык программирования. Сравнение PERL и языков программирования С/С++. Богатство возможностей языка. Методы, и сфера использования данного языка. Применение языка PERL для безопасности.

Рубрика Программирование, компьютеры и кибернетика
Вид реферат
Язык русский
Дата добавления 12.11.2008
Размер файла 96,8 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

15

Язык программирования PERL

Наиболее широко применяемым языком для написания скриптов является Perl. Эта глава посвящена языку Perl и его использованию. После того как вы научитесь программировать, используя Perl, вы сможете использовать его для написания скриптов, с помощью которых решаются разнообразные задачи программирования для Internet и Web. Особый упор будет сделан на тех особенностях, которые используются при написании CGI-скриптов. Если вы никогда не программировали ранее на языке Perl, используйте эту главу как отправную точку в его освоении. Концепции, с которыми вы познакомитесь в этой главе, научат, как писать профессиональные скрипты на языке Perl. В главе рассматриваются не только основы программирования на Perl, но также и несколько других аспектов. К моменту окончания чтения главы вы будете в состоянии усвоить следующие ключевые концепции: Perl является интерпретируемым языком программирования, специально ориентированным на обработку текста. Программисты часто называют программы на языке Perl скриптами. Используя Perl, программисты создают CGI-формы. Perl поддерживает операции с файлами и с базами данных. Это делает его хорошо приспособленным для хранения и извлечения информации в соответствии с потребностями пользователей Web. Perl снабжается отладочной программой, с помощью которой вы тестируете код Perl.

PERL - как язык программирования

Perl (Practical Extraction and Report Language) является переносимым, интерпретируемым языком, идеально приспособленным для многочисленных приложений по обработке текста. Perl поддерживает структурированные программные конструкции, как и большинство языков программирования высокого уровня, и предлагает богатство встроенных возможностей, накопленных им за годы эволюции среде UNIX. Perl является бесплатным программным обеспечением. Его можно получить платно, и книга Web-программирование служит его бесплатному распространению. Фактически, Perl версии 5 имеется, на CD-ROM, прилагаемом к этой книге. Эта глава, однако, посвящена в первую очередь концепциям Perl версии 4, которая полностью совместима с версией 5 и широко используется на Web.

История PERL

Отцом языка Perl является Ларри Вол (Larry Wall). Он разработан в 1986 году для создания отчетов о содержании многочисленных текстовых файлов в среде UNIX. Поскольку существующие средства не подходили для решения такой задачи, Вол (Wall) изобрел новое средство для ее решения. Название Perl означает практический язык для извлечения и составления отчетов (Practical Extraction, а Report Language). Вол продолжал добавлять различные возможности к Perl и сделал его доступным для общего пользования. Популярность Perl возрастает до сих пор, и он стал излюбленным средством многих программных пакетов. Умение программировать на Perl имеет возрастающую важность при составлении резюме.

PERL - интерпретируемых язык программирования

Perl является интерпретируемым языком. Это означает, что программы, написанные на Perl, обычно исполняются путем вызова интерпретатора Perl и переда" ему списка команд, из которых состоит программа. Поскольку интерпретатор тает и исполняет команды Perl именно таким образом, разработчики часто называют программы на Perl скриптами. Если вы вышли из мира UNIX-систем, то, вероятно, знакомы со многими типам; скриптов, такими как скрипты shell, скрипты sed и т. д. В таком случае вы, вероятно, в состоянии оценить полезность и мощность языка, основанного на скриптах. Если вы пришли из мира DOS и Windows, то пакетные (. BAT)-файлы или программы на языке BASIC приходят на ум всякий раз, когда выдумаете об интерпретируемых скриптах. Если вы представляете себе файлы скриптов наподобие пакетных файлов MS-DOS, то вы, возможно, скептически относитесь к использованию скриптов, за исключением самых простейших задач. Однако если вы придерживаетесь непредвзятого взгляда на вещи, то в скором времени сможете оценить всю мощь Perl.

Сравнение PERL и языков программирования С/С++

Структура Perl очень напоминает структуру языка программирования С и на первый взгляд выглядит так же, как программа С. Все операторы С представлены в 1 Perl, а управляющие структуры, такие как if или for, имеются на языке Perl в несколько измененном виде. Чего не достает в Perl, так это указателей, структур и типов, определяемых пользователем. Место языка С в программировании неоспоримо, но не следует думать, что С-программа всегда лучше, чем эквивалентная программа на языке Perl. Как и у всякого средства, у Perl и у С есть свои области применения, к которым они лучше всего приспособлены. Надо хорошо знать оба языка, чтобы представлять, когда предпочтительнее использование одного из них.

Богатство возможностей языка PERL

Perl предоставляет разработчику широкий спектр возможностей для создания кратких и эффективных программ. Ниже приведены некоторые наиболее замечательные черты Perl. Далее в главе вы познакомитесь с использованием каждой из них: ? Ассоциативные массивы, которые индексируются программами с использованием нецелых ключей ? Автоматическое преобразование типов между целыми числами, числами с плавающей точкой и строками ? Автоматическое преобразование размера массивов ? Функции для преобразования бинарных данных ? Широкая поддержка так называемых регулярных выражений, которые программы используют для поиска, замены и других операций, связанных с разбором текста ? Функции вывода/ввода файлов ? Функции форматированного вывода, наподобие функции С, с добавлением к ним способности генерации отчетов на основе шаблонов (template)? Полный набор. операторов С, с добавлением также операций по сравнению строк ? Функции для обработки списков, которые поддерживают стеки, очереди и другие данные списочных типов ? Функции системного сервиса ? Богатый набор операторов и структур управления, включая подпрограммы

Использование PERL

Чтобы разобраться, как использовать Perl, необходимо проанализировать коды, написанные на нем. Самый простой путь познакомиться с языком Perl состоит в изучении коротких примеров. Следующий раздел основан на коротких примерах для того, чтобы ввести вас в курс дела. После того как вы поймете основы техники программирования на языке Perl, вы сможете писать на нем CGI-скрипты.

Использование perl как фильтра данных

Средства UNIX-систем в значительной мере основаны на концепции о том, что программа служит фильтром данных, поток которых поступает на вход, а отфильтрованные данные - на выход. Таким образом, программа-фильтр отбрасывает нежелательные данные. MS DOS-также поддерживает концепцию фильтра данных. Утилита grep в среде UNIX представляет собой классический пример фильтра данных. Эта утилита сканирует входной поток данных в поиске строк, которые соответствуют заданному шаблону. Программа направляет на выход те строки, которые соответствуют этому шаблону. Она отфильтровывает, отбрасывает строки, не удовлетворяющие шаблону. Perl идеально подходит для построения фильтров данных. Действительно, вы можете создать простую версию утилиты grep, используя следующий короткий скрипт на языке Perl:

$pattern = shift(@ARGV); # берет командную строку

while (<>)

{ # читать строку из входного потока

print if (/$pattern/); # output line if it matches

}

В этом случае скрипт просто просматривает входные данные строка за строкой. Если строка содержит текст, определенный первым аргументом командной строки, то программа печатает такую строку. Не беспокойтесь, если написанный текст скрипта вам пока непонятен. В этой главе вы найдете описание всех операторов подобного типа программ на языке Perl.

Использование языка PERL как шлюза безопасности

Вопросам безопасности придается большое значение как в программировании CGI, так и при решении других задач, связанных с программным обеспечением для сетей. Часто бывает необходимо защитить файлы и другие ресурсы системы от угрозы со стороны пользователей, которая может проистекать от их неаккуратности или даже злого умысла. Это особенно важно для Web-серверов, а также других серверов, таких как FTP-сервер, которые подключены к Internet, где наличие злоумышленных пользователей хорошо известно. Одним из путей защиты системы от атак таких злоумышленников служит создание шлюзов безопасности, через которые пропускаются входные данные. В этом случае только данные, оцененные шлюзовой программой как безопасные, передаются в систему. Традиционно большая часть серверов Internet исполняется под системой UNIX и написана на языке С. Неверное использование программистами указателей на языке С ведет к нарушению безопасности работы системы. Одним из достоинств Perl, существенным при написании надежных шлюзовых программ, служит тот факт, что переменные строкового типа изменяют свою длину автоматически в зависимости от потребности. Строковые переменные содержат столько символов, сколько им присваивает скрипт. Perl не позволяет программе писать данные в одну переменную таким образом, чтобы нарушить целостность данных другой переменной. Имеется также специальная версия языка Perl, которую называют taintperl, в которой осуществляется проверка зависимостей между данными и предотвращается выполнение системой команд по передаче данных серверу от источника, не заслуживающего доверия. Если испорченные или некорректные данные поступают на вход программы taintperl, то она помечает все значения командной строки, переменных окружения и входные данные как испорченные, предотвращая их дальнейшую передачу серверу и возникновение фатальной ошибки.

FRONTEND-программы для связи с базой данных

Утилита типа frontend для базы данных представляет собой программу, которая упрощает доступ к серверу базы данных для остальных программ. Такая программа обрабатывает запрос пользователя к базе данных и на этой основе формирует свой запрос к базе данных с параметрами, необходимыми для доступа к данным на сервере. Frontend-программа может также обрабатывать результаты запроса, формировать ответ и посылать его обратно пользователю. Как вы узнаете, программисты создают простые приложения для баз данных исключительно на языке Perl, причем не возникает необходимости в специальном сервере базы данных. Perl имеет встроенные возможности для отображения ассоциативных массивов (обсуждаемых дальше в этой главе) на файл базы данных. В результате доступ к файлу базы данных в рамках скрипта Perl так же прост как и доступ к элементам массива, поскольку ввод/вывод в файл является прозрачным для скрипта. Для более сложных приложений на основе баз данных Perl может выполнять роль связующего звена с сервером базы данных и функционировать как Frontend программа для базы данных. Несколько специальных версий языка Perl было создано для расширения поддержки конкретных серверов баз данных. Например, ora perl обеспечивает возможность доступа к серверам баз данных Oracle.

Использование языка PERL для написания CGI-cкриптов

Как вы узнали из предыдущей главы, CGI обеспечивает узлам Web вoзмoжнoсть интерактивной работы с клиентскими программами, в качестве которых обычно выступает броузер. Во многих случаях узлы используют скрипты CGI для доступа к базам данных в тех случаях, когда клиент и сервер должны обмениваться данными. Использование CGI позволяет пользователю получать доступ к базе данных на Web, используя обычный Web-броузер. CGI-скрипт читает и обрабатывает содержание НТМL-форм, устанавливает соединение с базой данных, посылает ей запросы, обрабатывает результаты ответов, формируя на их основе новый НТМД документ, и затем посылает его обратно пользователю. Кроме того, все эти шаги должны быть сделаны так, чтобы обеспечить безопасность сервера.

Знакомство с языком PERL

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

<HELLO WORLD> НА ЯЗЫКЕ PERL

Большинство учебников по языкам программирования начинается с простейшей программы, которая выводит текст <Hello World>. В соответствии с этой традицией мы приводим нашей книге несколько примеров программ <Hello World>. Следующий код служит для вывода на экран сообщения <Hello World> три раза, используя три различных способа:

# Три способа как сказать <Hello World>

printf("Hello world\n");

printf("%s\n", 'Hello world');

print "Hello World", "\n"

Первая строка представляет собой комментарий. На языке Perl знак диез (#) означает комментарий. Когда Perl находит этот знак, он игнорирует весь текст, начиная с него и до конца строки. Знак диез служит единственным способом ввести комментарии на языке Perl. В отличие от С здесь нет конструкции, которая сразу бы определяла несколько строк комментариев. На первый взгляд функция printf выглядит так же, как в языке С. Однако вы можете заметить, что программа не содержит функции main. Хотя скрипты поддерживают подпрограммы (аналогичные функциям С), скрипт не определяет раздела, который бы содержал тело функции main. Вместо этого интерпретатор Perl сразу начинает исполнение скрипта с первого выражения в файле. Второе выражение, содержащее функцию printf, опять-таки выглядит аналогично своему использованию в языке С, за исключением того, что вторая строка аргументов заключена в одинарные кавычки ('') в противоположность двойным ("), используемым в С. В языке Perl строка в двойных кавычках означает определенный род преобразования. Например, интерпретатор Perl преобразует выражение новой строки в двойных кавычках "\n" в символ новой строки. Скрипт Perl использует одинарные кавычки для включения строковых литералов, т. е. строковых выражений, как это написано выше. Например, Perl напечатает выражение в одинарных кавычках ('\n') как два знака ('\') и 'n', а не как знак перехода на новую строку. Наконец, последняя строка кода программы содержит функцию print, которой нет в языке С. В этом случае наиболее полезная черта этой функции заключается в отсутствии скобок. Оказывается, что вы можете всегда включать скобки в состав функция языка Perl. Однако в большинстве случаев необходимости в них нет. Perl требует включения скобок только в том случае, если без них выражение оказывается не полностью определенным, двусмысленным. Тем не менее, включение скобок в код соответствует хорошей традиции, и вам не следует отказываться от нее.

Установка PERL

Теперь настало время попробовать работать с языком Perl непосредственно. Если у вас не установлен Perl на вашей системе, то необходимо сделать это. Обратитесь к файлу Perl.txt на CD-ROM, который входит в комплект книги. Далее полагаем, что Perl правильно установлен. Наберите команду для запуска скрипта Perl, аналогичную следующей:

C:\PERL>perl script-name <ENTER>

Например, создайте файл с именем hello. pl, содержащий показанную ниже строку:

Print "Hello world\n"

Далее в командной строке наберите следующую команду:

C:\PERL>perl hello. pl <ENTER>

На экране вы увидите следующий текст:

Hello World

Как уже говорилось, если вы используете UNIX-систему, то можно вызвать скрипт Perl таким же образом, как другую самостоятельную программу. Для того чтобы начать, отредактируйте файл так, чтобы первая строка была аналогична представленной ниже:

#!/usr/bin/perl

print "Hello world\n"

В этом случае первая строка указывает системе, что необходимо запустить скрипт, используя Perl. Можно видеть, что эта строка является комментарием и это не случайно, так что Perl, проигнорирует ее. Тем не менее, большинство UNIX командных скриптов shell просмотрят два первых символа в любом исполняемом скрипте. Если первыми символами служат #!, то shell будет использовать остаток строки в качестве команды для запуска скрипта. В данном случае такой командой является /usr/bin/perl. Shell пересдаст имя скрипта Perl автоматически. Для того чтобы запустить скрипт, необходимо запустить команду chmod для того, чтобы указать скрипту на файл, который необходимо выполнить (например, chmod + хhello. pl). В зависимости от программы shell, также может потребоваться набрать команду rehash для того, чтобы указать программе shell, что вы добавили новую команду. Возможно, также потребуется модифицировать путь к Perl, если он не инсталлирован в подкаталоге /usr/bin вашей системы.

Примечание: Большинство скриптов Perl используют в качестве расширения. р1, но это необязательно. Если вы запускаете скрипт Perl как отдельную программу, то, возможно, более удобным будет вообще опустить расширение.

Использование отладчика PERL

Может показаться преждевременным говорить сейчас об отладчике Perl. Но использование отладчика может оказаться исключительно полезным при изучении языка Perl. С ним вы можете легко испытать все программы, которые приведены в этой главе в качестве примеров. Фактически можно внести любое выражение Perl непосредственно в отладчик, используя его в качестве интерактивного Perl. Таким способом можно ознакомиться со многими возможностями языка, что намного проще, чем создавать и запускать полные скрипты. Отладчик Perl встроен в сам Perl. Можно запустить отладчик, используя ключ -d в командной строке следующим образом:

C:\PERL> Perl -d hello. pl <ENTER>

В таком случае Perl загрузит скрипт hello. pl и начнет отладку. Если вы используете UNIX-систему, то можете поместить комментарий #!/usr/bin/perl -d в самом начале скрипта Perl. Если хотите загрузить Perl с отладчиком без загрузки скрипта, то можете использовать следующую команду: С: \> Perl -de 0 <ENTER> В таком случае аргумент командной строки -d указывает Perl на необходимость вызова отладчика, а аргумент -e 0 заставляет выполнить Perl скрипт, состоящий из 0 строк. Поскольку скрипт 0 не существует, то Perl просто запустит отладчик. Если Perl установлен на вашу систему корректно, то на экране вы увидите следующие данные, которые говорят, что вы находитесь в отладчике:

Loading DB routines from $RCSfile: perldb. pl, v $$Revision: 4. 0. 1. 3

$$Date: 92/06/08 13:43:57 $

Emacs support available.

Enter h for help.

main '(p1000159:1):

DB<1>

Если Perl выводит ответ, но указывает на ошибку, такую как Can't locate perldb. pl @INC, то, значит, Perl установлен в вашей системе некорректно. В таком случае прочитайте readme-файлы, которые сопровождают вашу версию Perl. В отладчике можно набрать любое выражение Perl, и он немедленно его исполнит. Дополнительно можно использовать следующие команды отладчика: ? h - распечатать в качестве подсказки список команд отладчика ? n - выполнять до следующего выражения ? <CR> - повторить последнюю команду n или s ? p выражение - сокращение для команды print выражение ? q - окончить работу ? r - исполнять до выхода из подпрограммы ? s - один шаг по скрипту (со входом в подпрограмму)

Например, следующая команда отладчика использует функцию print для того, чтобы вывести на экран сообщение Hello World:

DB<1> prinf "Hello World\n"; <ENTER>

Hello World

DB<2>

Используя отладчик с помощью команды р, можно вывести на экран любое выражение. Для упрощения набора в отладчике можно опускать точку с запятой в конце выражения, поскольку отладчик добавит ее для вас. Наконец, отладчик всегда переходит на новую строку для новой команды. Следующий код иллюстрирует использование команды р: <ENTER>

DB<2> р "Hello World\n" <ENTER>

Hello World

DB<3>

Как можно видеть, всякий раз, когда вы набираете команду отладчика, счетчик отладчика увеличивается на единицу, что находит отражение в его строке DB. Читая дальше эту главу, вам, вероятно, стоит запустить отладчик, чтобы иметь возможность набирать в нем примеры и работать с языком Perl интерактивно.

Примечание: Для того, чтобы ввести выражение из многих строк в отладчик (debugger), необходимо использовать символ продолжения<\> конце каждой строки. . Иначе отладчик сообщит о синтаксической ошибке.

Следующая команда иллюстрирует использование символа продолжения при работе с отладчиком:

DB<3> for ($i = 0; $i < 10; $i++) { \ <ENTER>

cont: print $i; \ <ENTER>

cont: } <EIITER>

0123456789

DB<4>

В этом случае для вывода чисел от 0 до 9 использовался цикл for, который будет подробно рассмотрен в этой главе.

Типы данных в PERL

Типы данных используются в программах при объявлении переменных. Короче говоря, тип данных определяет то множество значений, которые может принимать переменная, а также набор операций, которые программа может выполнять с ней. В языке Perl данные могут быть числом или строкой символов. Одно значение называется скалярной величиной или просто скаляром. Ниже приведены примеры скалярных значений, которые используются в языке Perl: ? Десятичные: 127 или 127. 0 или 1. 27Е2 ? Шестнадцатиричные: Ox7F или 0x7f? Восьмеричные: 0177 (первый 0 указывает, что используется восьмеричное число) ? Строка: "Hello World\n" или 'Hello World'

Например, следующая команда использует отладчик Perl для того, чтобы вывести число 0177 восьмеричной системы, соответствующее числу 127 десятичной:

DB<4> р 0177 <ENTER>

127

Perl переводит данные в свой внутренний формат. Когда Perl печатает восьмеричные или шестнадцатиричные значения, он сначала переводит их в десятичный формат, как было показано.

Примечание: Как вы узнаете, скрипт Perl позволяет использовать функцию printf для того, чтобы выводить, значения в вызываемом формате, в таком как восьмеричный или шестнадцатиричный.

В качестве внутреннего представления всех чисел используется формат с плавающей запятой двойной точности (double). Иными словами, среди внутренних форматов нет целочисленного. Тем не менее, в большинстве случаев вы можете не обращать на это внимания, и Perl сделает все сам как надо. Например, если вы используете величины в контексте, где только целочисленные значения имеют смысл, Perl сам автоматически усечет число.

Примечание: Если вы программируете на С и использовали целочисленное деление с усечением целых чисел автоматически, то, программируя на языке Perl, надо не забыть выполнить усечение вручную, используя функцию int().

Следующая команда иллюстрирует, как Perl обрабатывает числа целого типа и с плавающей запятой:

print 6 & 3; # выведет 2

print 6. 9 & 3. 1 #

print 7 / 2 # выведет 2. 3333 не целое

print int(7/3) # выведет 2

Точно так же, как Perl преобразует числа с плавающей запятой в целые числа: когда скрипт использует целочисленные значения, он также преобразует числа в строки и наоборот, когда такое преобразование имеет смысл. Например, если скрипт использует числа в контексте, где только строки имеют смысл, например, при соединении строк, он конвертирует числа в строки. Аналогичным образом, если требуется использовать строки там, где только числа имеют смысл, то Perl конвертирует их в числа. Работая со скриптами Perl, обычно не надо беспокоиться о внутреннем представлении скалярных величин. Perl поддерживает также концепцию булевых значений, но не имеет для их описания специального типа. Как и в С, численное значение рассматривается истинным, если оно не равно нулю. Дополнительно строковое значение рассматривается как истинное, если оно не равно '' или '0'. Некоторые булевы операторы, такие как <>> (больше), возвращают единицу в качестве значения<истинно> и нуль - в качестве <ложно>. Тем самым, ваш скрипт должен просто рассматривать ненулевые величины как строчного типа, так и числового в качестве булева значения <истинно>. Скрипты Perl могут группировать скалярные величины вместе и создавать список (list). Если скрипт хранит список в какой-то переменной, то эта переменная становится массивом (array).

Переменные

Perl поддерживает три типа переменных: скаляры, массивы и ассоциативные массивы. Как и в языке С, имена переменных пишутся с различением строчных и заглавных букв. Таким образом, имена VAR, Var и var описывают различные переменные. Скрипт может иметь скалярную переменную под именем var и переменную-массив, также названную var. Они будут различаться в языке Perl в соответствии с контекстом.

Примечание: Переменные Perl не типизированы, как это делается и в С. Например, скалярная переменная может содержать любой тип скаляра, и приведение типов осуществляется автоматически. Также, как вы могли уже заметить, переменные на языке Perl необязательно должны быть объявлены. Если переменная не объявлена, то Perl рассматривает ее как глобальную. Ниже вы познакомитесь с объявлением переменных и их областью видимости.

Скалярные переменные

Как отмечалось, скалярная переменная может содержать единственное значение. В языке Perl имена скалярных переменных всегда начинаются со знака ($). В еле дующем выражении скалярной переменной $age присваивается значение 35, а переменной $name строковое значение <Bob>. Затем используется функция print для вывода значения каждой из переменных:

$age = 35;

$name = 'Bob';

print ($name, 'is', $age);

Если вы сохраните эти выражения в файле под именем SCALAR. PL, то сможете запустить программу следующим образом:

C:\PERL> Perl SCALAR. PL <ENTER>

Bob is 35

Массивы

Как было сказано выше, массивы представляют собой переменные, принимающие в качестве значения список из скалярных величин. Следующий текст программы на языке Perl иллюстрирует объявление переменных типа массив и их инициализацию:

@days = ('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat');

print(@days); # выведет 'SunMonTueWedThuFriSat'

print($days[4]); # выведет 'Thu'

@weekdays = @days[1. . 5]; # значение ('Mon', 'Tue', 'Wed', 'Thu', 'Fri')

@emptylist = (); # постой список

Ссылка на переменные типа <массив> обычно начинается со знака (@) и сопровождается значениями в квадратных скобках ([ ]). Как и в программировании на языке С, индексами массивов для скриптов всегда являются переменные целого типа, которые обычно начинаются с нулевого значения. Вы увидите исключения из этих двух правил в примерах, которые будут объяснены в этой главе. Третье выражение ($days[4]) служит примером массива, который ссылается на скалярное значение. Поскольку он содержит только один элемент, результирующее значение представляет собой скаляр. Если использовать знак ($) вместо знака (@), то скрипт будет ссылаться на скалярную величину. Это замечание является очень важным. Квадратные скобки указывают, что скрипт ссылается на массив. Знак $, в свою очередь, означает ссылку на скалярную величину. Инициализация массива @weekdays осуществляется путем выборки части массива @days. В предыдущем примере массив @days использовался без индекса. Когда индекс опущен, Perl ссылается на весь массив. Аналогичным образом, в предыдущем примере массив @days инициализировался списком литералов. Кроме того, что массиву могут присваиваться в качестве значений литералы, скрипт может также присваивать массивам значения переменных или даже других массивов, как показано ниже:

@stuff = ($age, $name)

@FriendsOfMine = ('Joe', 'Mary', @FriendsOfYours);

В следующем примере используются части массивов:

@weekend = @days[0, 6] ; # результат ('Sun', 'Sat')

print (@days[1. . 5, 0, 6]); # выведет 'MonTueWedThuFriSunSat'

Если скрипт использует переменную типа массив в контексте скаляра, то значением служит число элементов массива. Скалярным контекстом является такой контекст, где только скалярные значения имеют смысл. Например, следующее выражение использует скалярный контекст для массива stuff для того, чтобы определить число элементов, содержащееся в массив. Если число элементов, больше или равно 2, то скрипт выдает сообщение и заканчивает исполнение:

(@stuff >= 2) || die "Too much stuff! \n";

Функция die служит директивой языку Perl закончить выполнение и выдать при этом указанное сообщение. Если сообщение не содержится, то функция просто заканчивает выполнение скрипта. Perlтакже поддерживает специальную конструкцию $# переменная, которая возвращает последнее значение индекса в массиве. Например, следующее выражение for использует $[ для того, чтобы определить начальное значение индекса массива, и $# для определения последнего из элементов массива. При этом с помощью выражения for выводятся значения каждого из элементов:

for ($i =$[; $i <= $#stuff; $i++)

{

print $stuff[$i];

}

Записанный цикл for можно заменить следующим эквивалентным выражением:

Print @stuff;

Роль контекста аля переменных скалярного и векторного типа

Отметим, что оператор построения списка (,) выглядит точно так же, как оператор (, ) последовательного вычисления (sequentialevaluation). Какой из операторов используется, зависит от контекста, в котором он появляется, в частности, является ли переменная скаляром или массивом. Perl использует конструирование списков в контексте массивов и последовательное вычисление для скаляров. Рассмотрим следующие выражения:

@an_array = (1, 2, 3, 4, 5);

$a_scalar = (1, 2, 3, 4, 5);

В первом выражении инициализируется массив, в то время как второе выражение устанавливает значение скалярной переменной $a_scalar равным 5, отбрасывая первые четыре величины. Рассмотрим два следующих выражения:

print $assoc{1, 2};

print @assoc{1, 2};

В первом случае будет напечатано одно значение ассоциативного массива с двумя ключами, в то время как во втором будут напечатаны два значения ассоциативного массива с одним ключом. Из двух следующих выражений первое копирует список, тогда как второе присваивает скалярной величине значение, равное размеру массива:

@x = @list;

$x = @list;

Ассоциативные массивы

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

$ages{'Bob'} = 35;

$ages{'Mary'} = 25;

$, = ' '; # change output separator for print operator

print @ages{'Bob', 'Mary'}; # выведет '25 35'

print keys(%ages); # выведет 'Bob Mary'

for $name (keys(%ages))

{

print "$name is $ages{$keys}\n";

}

Как можно видеть, программа присваивает значения переменной '$, ' (скалярная переменная, именем которой является запятая). Скрипт использует это выражение для того, чтобы при дальнейшем использовании оператора print выходные данные не сливались между собой. Далее в этой главе обсуждаются специальные переменные, такие как '$, '. Ассоциативные массивы идентифицируются с помощью фигурных скобок. Так же как с массивами, при ссылках на ассоциативный массив целиком индексы не используются. Например, ссылка@ages{'Bob', 'Mary'} использует индексы в скобках, что указывает на ассоциативный массив. Префикс @ указывает на то, что речь идет о массиве. Аналогичное использование знака доллара перед массивом указывает, что используется скалярная величина.

Примечание: Если два ключа заданы, то вместе со знаком @ эта говорит о том, что речь идет о части ассоциативного массива и результат должен быть в виде списка. Такое выражение эквивалентно #ages{' Bob'}, #ages{'Mary'}. которое имеет своим значением величину (35, 25).

Выражение print keys(%ages) вызывает оператор keys, который возвращает полный список ключей ассоциативного массива. Ссылка %ages со знаком процента в качестве префикса означает, что ссылка относится ко всему ассоциативному массиву. Обратите внимание, что цикл for ссылается на переменные, заключенные в двойные кавычки. Наконец, последний из рассмотренных примеров также использует оператор keys и вводит цикл for для распечатки всех сочетаний ассоциативного массива. Цикл for ссылается на переменные, заключенные в двойные кавычки. Perl, в свою очередь, заменит значения, на которые ссылаются переменные, в то время, когда будет анализировать строку. Программисты называют этот процесс подстановкой переменной или интерполяцией.

Примечание: Perl не интерпретирует переменные, содержащие строкив одинарных кавычках.

Операторы PERL

В то время как типы данных и переменных языка Perl значительно отличаются от соответствующих типов языка С, операторы и выражения Per] должны вам показаться гораздо более знакомыми. Все операторы С присутствуют в языке Perl, за исключением операторы приведения типов (type), операторы обращения к содержимому указателя *ptr и оператора выбора члена структуры var. member илиvar->member. Кроме того, в языке Perl реализовано много новыхоператоров для использования в таких операциях как сравнение иобработка строк.

Арифметические операторы

Арифметические операторы действуют на числовые значения, и их результатом является число. Если выражение включает строковые операнды, то Perl конвертирует строковые значения в числовые перед тем, как оценить выражение. Perl выполняет преобразование строк в числа подобно тому, как это делает функция atof() языка С в библиотеки времени выполнения. В настоящее время Perl поддерживает следующие арифметические операторы: ? + сложение ? - вычитание или изменение знака ? * умножение ? / деление (только для чисел с плавающей запятой) ? % взятие по модулю (только для целочисленных значений)

Рассмотрим примеры следующих арифметических операций языка Perl:

$x = 2. 5;

$y = 3;

print ($x + 2*$y); # выведет 8. 5

print (7 / $y); # выведет 2. 3333333

print int (7 / $y); # выведет 2

print (7 % $y); # выведет 1

print (7. 5 % $y); # выведет 1

Примечание: В языке Perl оператор деления всегда имеет результатом 4ucw с плавающей точкой, а результатом взятия одного числа по модулю другого является целое число и причем предварительно оба операнда преобразуются к целому типу.

Рассмотрим следующую операцию взятия по модулю:

print (7. 9 % 3. 6); # выведет 1 то же (7 % 3) = 1

Perl также поддерживает операторы инкремента и декремента:? ++ декремент в префиксной или постфиксной форме? - инкремент в префиксной или постфиксной форме Рассмотрим примеры операций инкремента и декремента:

$x = 4;

++$x;

print $x; # выведет 5

$y = $x-; # уменьшит x после присвоения y значения x

print "$y $x" # выведет 5 4

Наконец, Perl обеспечивает арифметический оператор для возведения в степень (**). Рассмотрим следующие примеры использования операции возведения в степень:

$x = 2 ** 3; # результат 8

$x = 2 ** 0. 5; # квадратный корень из 2

$x = -2 ** -3; # 1/(-2 в кубе), результат -1/8 (-0. 125)

Побитовые операторы

Побитовые операторы воздействуют на бинарное представление целых чисел и имеют целочисленный результат. Если операндом является строка или дробное число, Perl предварительно преобразует его в целое число, обрабатывает операнд, используя 32-битноепредставление. Все побитовые операторы С представлены в языке Perl: ? | побитовое ИЛИ ? & побитовое И ? ^ побитовое исключающее ИЛИ ? ~ побитовая инверсия ? << сдвиг влево ? >> сдвиг вправо

Рассмотрим следующие примеры побитовых операций:

$x = 5; # 101 в двоичном

$y = 3; # 011 в двоичном

print $x | $y; # 7 (111)

print $x & $y; # 1 (001)

print $x ^ $y # 6 (110)

print $x & ~1; # 4 (100)

print $x << 2 # 20 (10100)

print $x >> 1 # 2 (10)

Так же как в С, поведение операторов сдвига вправо зависит от реализации языка в случае, если операнд является отрицательным.

Операторы сравнения

Операторы сравнения сравнивают величины двух операндов. Также как при работе с арифметическими операторами, Perl преобразует строчные операнды в численные перед тем, как выполнять сравнение. Для того чтобы позволить скрипту сравнивать строки, которые не являются числами, Perl имеет дополнительные операторы строкового сравнения. Эти операторы сравнивают строки, используя величины ASCII. Если численное значение задано как операнд при сравнении строк, оно сначала преобразуется в строку. Таблица 12. 1перечисляет операторы сравнения:

Число Строка Значение

= = eq равно

!= nе не равно

> gt больше чем

< it меньше чем

>= gе больше или равно

<= lе меньше или равно

<=> cmp не равно (результат со знаком)

Табл. 12. 1. Операторы сравнения языка Perl Результатом операции сравнения является единица, если сравнение истинно и нуль в противном случае. Однако последняя операция (<=> или cmp) может возвращать значения -1, 0 или 1 в зависимости от того, является ли значение первого операнда меньше, чем второго, равным ему или большим.

Примечание: Оператор cmp языка Perl ведет себя, аналогично функции Strcmp() библиотеки времени выполнения языка С.

Рассмотрим следующий пример сравнения:

$x = 5; # x равно 5

print ($x < 4); # если false, то выведет 0

Логические операторы

Логические операторы анализируют булевы выражения и возвращают значения <истинно> или <ложно> в качестве результата. Perl обрабатывает операнды логических операций как булевы величины, т. е. как истинное или ложное значение.

Логические операторы языка Perl включают следующие:

? || логическое ИЛИ

? && логическое И

Perl всегда обрабатывает логические выражения слева направо. Кроме того. Perl всегда прекращает оценку, если уже выполненной оценки достаточно, чтобы определить значение результата. В дополнение к общим логическим операторам Perl поддерживает следующие дополнительные логические операторы:

? ! логическое отрицание ()

? ?: условная операция

?, последовательное выполнение

Оператор логического отрицания (!) заменяет значение булевой величины на противоположную. Так же как и в С, в языке Perl условный оператор (?:) использует три операнда. Выражение, использующее условный оператор, имеет следующую форму:

Condition ? true-result: false-result

Аналогично, следующее выражение использует условный оператор для того, чтобы предоставить Бобу полный доступ, а всем остальным ограниченный:

$access = ($user eq 'Bob' ? 'Full': 'Limited');

Оператор последовательного выполнения <, > (также известный как оператор запятая) не является вполне логическим оператором, поскольку он не анализирует истинность своих операндов. Perl выполняет операнды оператора последовательного выполнения слева направо и возвращает значение самого правого операнда. Следующий пример иллюстрирует использование оператора запятая в цикле for.

For ($i=0, $j=10; $i<10; $i++, $j-)

{

print i$, ' ', $j

}

Строковые операторы

Поскольку Perl представляет собой язык для обработки текста, неудивительно, что в него включены дополнительные операторы дляработы со строками. Ниже перечисляются операторы обработки строк:?. конкатенация строк ? х репликация ? =~ сопоставление переменной с образцом ? !~ то же, что и предыдущее, но с дополненным отрицанием результата

Первые два оператора легко иллюстрируются примером:

print 'b'. 'an' x 2. 'a'; # выведет 'banana'

Как показано, это выражение использует конкатенацию строк иоператор репли-кации для того, чтобы напечатать строку <banana>. Два последних оператора используются для проверки того, включаетли строковый операнд заданный образец. Этот вопрос детально обсуждается в разделе <Регулярные выражения>. Следующий пример иллюстрирует их использование:

$var = 'banana';

print ($var =~ /ana/) ? TRUE: FALSE;

В этом случае оператор проверки вхождения в строку образца(=~) использовался для проверки того, входит ли образец ana в переменную $var. В данном случае выражение принимает значение <истинно>.

ОПЕРАТОРЫ ПРИСВАИВАНИЯ

Если вы знакомы с языком программирования С, то формы операторов присваивания языка Perl должны быть для вас совершенно знакомыми. Так же как и в С, эти операторы заставляют Perl выполнить специальные операции со значениями, которые появились с правой стороны оператора, и затем выполнить присваивание:

= += -= *= /= %= |= &=

^= ~= <<= >>= **=. = x=

LVALUES В языке Perl, так же как и в С, l value представляет собой имя того, что стоит с левой стороны оператора присваивания. Таким образом, lvalue представляет собой целостность, которой может быть присвоено значение, например, lvalue может быть переменной. Например, скрипт Perl не может присвоить значение строке символов, наподобие выражения <Bob> = 32, поскольку <Bob> не является lvalue. Тем не менее, скрипт может присвоить значение переменной $Bob, например, следующим образом $Bob = 32, поскольку переменная $Bob является lvalue. В языке Perl любая целостность, которая может использоваться как lvalue, обычно таковой и является. Например, следующее выражение упаковывает (pack) и распаковывает (unpack) список значений, причем список переменных в первом случае и три скалярных во втором являются lvalues:

@color = ($r, $g, $b); # пакет цветов

($r, $g, $b) = @color; # распаковка цвета

Когда вы работаете со списками в языке Perl, оператор присваивания не обязательно относится ко всему списку. Скрипт может присваивать значения отдельным элементам списка, как показано ниже:

@items[2, 4, 7] = (100, 200, 300);

В этом случае оператор присваивает значение трем элементам списка. Аналогичным образом следующее выражение распаковывает элементы списка, присваивая значения двух первых элементов двум скалярным переменным, а остаток массива - списочной переменной:

($arg1, $arg2, @rest) = @ARGV; # можно смешать скаляры и массивы

Операции для работы со списками

В состав операций для работы со списками входят следующие:

-, конструктор списков

-. . оператор области

- х оператор репликации

Вы уже использовали конструктор списков для инициализации массивов и создания списка переменных, использованных как lvalues. Оператор области возвращает в качестве значения последовательность целых чисел, которая начинается от левого операнда и продолжается до правого операнда включительно. Скрипты часто используют оператор области совместно с конструктором списков для создания списков. Например, следующее выражение использует оператор области для того, чтобы создать список под именем @digits, который содержит числа от нуля до девяти:

@digits = 0. . 9; # список (1, 2, 3, 4, 5, 6, 7, 8, 9)

Аналогичным образом, это выражение может использовать оператор области для создания области изменений индексов массива. Предположим, что список @days содержит дни недели (начиная с воскресенья). В следующем выражении списку @weekdays присваиваются значения, начиная от понедельника до пятницы:

@weekend = @days[1. . 5];

Наконец, следующее выражение использует два оператора области для создания списка шестнадцатеричных цифр:

@hex_digits = (0. . 9, a. . f);

Оператор репликации просто создает копии данного операнда указанное число раз. Например, в следующем выражении список значений 1, 2, 3 повторяется три раза:

Операторы для работы с файлами

Perl содержит обширный список операторов для работы с файлами. Имеется не менее 27 операторов, возвращающих специфическую информацию о файле, даже не открывая его. Многие операторы языка Perl ориентированы на системы UNIX, но следующие операторы работают на любых системах:

-d проверяет наличие каталога

-е определяет наличие файла

-s определяет размер файла

-w определяет, можно ли писать в данный файл

Следующие два файловых оператора возвращают булево значение. Третий оператор возвращает размер файла в байтах. Следующий текстиллюстрирует использование этих операторов:

if (-e, 'perl. exe')

{

print 'File size is:' -s 'perl. exe';

}

else

{

print 'can\' t find perl. exe\n';

}

(-w 'SomeFile') || die "Cannot write to SomeFile\n";

Приоритеты выполнения операторов

Как и всякий язык программирования, Perl определяет приоритеты выполнения операторов, с помощью которых упорядочивается последовательность их выполнения. Таблица 12. 2 перечисляет приоритеты операторов, начиная от высшего и следуя к низшему:

? ++? ! ~ унарный минус

? **

? =~ !~

? * / % х

? +? <<>>

? -d -е -s -w (и другие файловые операторы)

? <> <= >= It gt le ge

? = = != < => eq ne cmp

? &

? |^

? &&

? ||

?. .

?

?: = += -= *=

Табл. 12. 2. Приоритеты операторов языка Perl от высшего к низшему

В своем скрипте вы можете изменять последовательность выполнения операторов с помощью скобок.

Конструкции языка PERL

Perl поддерживает все выражения языка С, используя почти идентичный их формат. Например, управляющие конструкции if, while, do. for и goto используются в обоих языках в одинаковой форме. Как вы увидите в дальнейшем, оператор continue имеет несколько иное значение в языке Perl. Его прежнее значение теперь называют next, а оператор break называют теперь last. Perl не реализует оператор switch. Кроме того, некоторые выражения языкаС можно найти в Perl в иных форматах и добавлены многие новые выражения.

Простые и составные операторы

Простым выражением называется любая допустимая комбинация операторов и операндов. В языке Perl оператором является выражение, заканчивающееся точкой с запятой. Как и в языке программирования С, все операторы оканчиваются точкой с запятой. Когда вы вводите текст программы в отладчик, можно опускать точку с запятой, поскольку отладчик поставит ее за вас. Следующий текст иллюстрирует простой оператор присваивания на языке Perl:

$Title = 'Web Programming';

Так же как и при программировании на С, скрипты Perl могут содержать блоки операторов, или составные операторы, которые помещаются в фигурные скобки ({}), как показано ниже:

{

# Операторы

# Другой блок операторов

}

Ваши скрипты будут широко использовать блоки инструкций наряду с более сложными операторами. Как и в языке С, скрипты на языке Perl могут использовать блоки инструкций для определения области видимости (scope) локальных переменных. Однако определение локальных переменных в блоке не является автоматическим. Для их декларации скрипт должен использовать ключевое слово local. Далее в этой главе мы рассмотрим область видимости переменных в деталях.

Условные операторы

Многие предыдущие примеры использовали оператор if. В языке Perl оператор if почти что идентичен оператору if в языке С. Отличие, однако, состоит в том, что в языке С оператор if может использовать простую инструкцию без фигурных скобок, тогда как в языке Perl инструкции обязательно должны быть заключены в фигурные скобки, образуя блок.

if (expr)

statement; // приемлемо для C но не для Perl

if (expr)

{

statement; # вот так нужно делать в Perl

}

Аналогичным образом инструкции языка Perl else работает немного отлично от соответствующей инструкции в С. В языке Perl инструкции также должны быть заключены в фигурные скобки и образовать блок:

// Пример в С неприемлемо в Perl

if (expr1)

statament1;

else if (expr2)

statement2;

else

ststement3;

Ниже показано, что Perl позволяет использовать конструкцию elsif:

if (expr1)

{

statament1;

}

elsif (expr2)

{

statement2;

}

else

{

ststement3;

}

Оператор UNLESS

В языке программирования С программисты используют логическое отрицание (!) для изменения булевой величины на противоположное, как показано ниже:

if (!(expr)) // Отрицание на С

{

statement;

}

Наряду с использованием логического отрицания, скрипты Perl часто содержат оператор unless, который обеспечивает то же самое, что и записанный выше код на С.

unless (expr)

{

statement;

}

Примечание: В отличие от языка С, Perl не содержит оператора переключения switch.

Оператор DO

Одним из частных случаев блочных операторов служит оператор do, который позволяет блоку инструкций возвращать значения. Значением, которое оператор do возвращает, является значение последнего выражения, оцененного в рамках блока. Например, следующий оператор do сравнивает строковую переменную $Month с месяцами года и присваивает переменной $DayCount значение, равное числу дней в месяце:

$DayCount = do

{

if ($Month eq 'September' || $Month eq 'April' || $Month eq 'June' ||

$Month eq 'November')

{

30;

}

elsif ($Month eq 'Februry')

{

$Year & 3 ? 28: 29; # Проверка на весокосный год

}

else

{

31;

}

};

Обратите внимание, что Perl требует наличия точки с запятой в конце блока do. Не путайте блок do с оператором do while, который будет рассматриваться ниже в этой главе.

Циклы и ветвления

Perl поддерживает операторы циклов for, while и do с небольшими отличиями от их реализации в языке С. Существенным отличием служит то, что Perl требует использования инструкций блоками, заключенными в фигурные скобки. Кроме того, как вы познакомитесь, далее, Perl расширяет конструкцию цикла, что6ы обеспечить ее некоторые новые формы. В следующих примерах циклы for, while и do работают аналогичным образом на языках С и Perl:

for($i = 0; $i< 100;$i++)

{

printf("%d\n", $i) ;

}

while ($i > 0)

{

printf("%d\n", $i-);

}

do {

printf("%d\n", $i++);

} while ($i < 0);

Конструкция циклов на языке С отлична от конструкции на языке Perl еще и в том, что Perl не содержит оператора break, а оператор continue выполняет совершенно иную функцию. К счастью, Perl обеспечивает некоторые новые, более гибкие и более интуитивно понятные конструкции:

? last выход из цикла (как оператор С break)

? next начать новую итерацию (как оператор С continue)

? redo повторить текущую итерацию

Для понимания конструкций циклов на языке Perl, необходимо разобраться с использованием блока continue. Рассмотрим следующий цикл while, который содержит блок continue:

$i = 100;

while ($i > 0)

{

print $i;

} continue {$i-}

Вы можете представлять себе блок continue как третье выражение в цикле for, которое выполняется на каждой итерации. Аналогичным образом Perl выполняет блок continue в конце каждой итерации. Однако, как вы узнаете далее, блок continue обеспечивает скрипту более полный контроль над процессом, чем обеспечивает цикл for. Когда цикл на языке Perl использует оператор next, блок continue все равно выполняется, если только он существует. Однако если цикл использует оператор redo, блок continue не исполняется.

Метки

В скрипте Perl метки просто означают имя, соответствующее некоему положению внутри скрипта. Имена меток оканчиваются двоеточием (например, outerloop:). Используя оператор goto, скрипт может осуществлять переходы на метку. Дополнительно могут использоваться операторы last, next и redo, для перехода к метке. Следующий код иллюстрирует использование оператора last для перехода на метку:

outerloop: while ($i > 0)

{

while ($j > 0)

{

#Здесь какой-нибудь другой процесс

if ($needToAboutLoop)

{

last outerloop;

}

}

}

В этом случае инструкция содержит ветвь last для перехода наметку outerloop и окончания выполнения цикла.

Цикл UNTIL

Еще одной конструкцией цикла в языке Perl является цикл until, который является противоположностью циклу while. Как вы помните, в цикле while инструкции выполняются до тех пор, пока выполняется заданное условие. В цикле until, напротив, инструкции выполняются до тех пор, пока не будет выполнено условие. Например, рассмотрим цикл while, такой, как показан на следующей странице.


Подобные документы

  • Применение языков программирования в web-разработках. Создание документа с поддержкой гипертекста с помощью HTML. Использование JavaScript для программного доступа к объектам приложений. Perl - процедурный язык программирования; псевдообъектный язык PHP.

    курсовая работа [260,9 K], добавлен 07.07.2013

  • Рассмотрение понятия и классификации Web-технологий. Основные требования к созданию главной страницы сайта, раздела "О нас", контента, привязанности. Определение направлений использования языков программирования HTML, PHP, JavaScript, VBScript, Perl.

    курсовая работа [49,3 K], добавлен 13.07.2010

  • Понятие и специфические особенности языка программирования Си, история его создания. Интегрированная система Borland C. Процесс программирования с помощью данного языка. Графические примитивы в языках программирования. Преобразования на плоскости.

    курс лекций [782,2 K], добавлен 04.10.2011

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

    курсовая работа [738,1 K], добавлен 17.05.2010

  • Машинные коды и ассемблер. Первые языки программирования высокого уровня. Язык программирования FORTRAN. Достоинства и недостатки ALGOL. Научные и бухгалтерские программы. Основные принципы, которые соблюдались при создании языка программирования Basic.

    курсовая работа [407,4 K], добавлен 21.06.2014

  • История происхождения языков Веб-программирования. Исторические факты появления самого первого из них. Сущность современного, актуального в настоящее время, языка HTML, история появления языка PHP, применение языка JavaScript и его использование.

    реферат [23,1 K], добавлен 23.02.2013

  • Исследование возможностей и областей использования языка программирования JavaScript. Сравнительный анализ языков программирования JavaScript и PHP. Разработка интерактивного Web-приложения на примере теста по теме "Программирование на языке Delphi".

    практическая работа [26,0 K], добавлен 04.02.2015

  • Язык Java как простой, обьектно-ориентированный, многопоточный язык программирования, разработанный компанией Sun Microsystems для расширения возможностей сети Internet. Типы данных, лексика и управляющие структуры данного языка программирования.

    презентация [46,1 K], добавлен 25.04.2014

  • Язык программирования как формальная знаковая система, предназначенная для записи программ, его отличие от естественных языков. Прописные и строчные буквы латинского алфавита. Ключевые слова языка программирования. Классическая схема создания программы.

    презентация [1,2 M], добавлен 19.02.2014

  • Алфавит языка программирования C#. Лексемы языка программирования. Область действия переменных. Понятие классов и объектов. Структура программного модуля на С#. Управление процессом повторения вычислений. Продолжение цикла и модификация параметра цикла.

    курсовая работа [557,1 K], добавлен 10.03.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.