Анимация
JavaScript


Главная  Библионтека 

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 [ 79 ] 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122

Почему люди вносят свой вклад в работу сообщества РеН?

За последние полвека, когда родилась и начала бурно развиваться компьютерная индустрия, программисты снова и снова решали одни и те же задачи. Поиск, сортировка, передача информации, чтение, запись - эти задачи мало чем изменились с 50-х годов XX столетия. Некоторые книги по теории компьютерного программирования и управления даже спустя 20 или 30 лет по-прежнему актуальны.

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

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

давно существует гораздо более простое и решение. Пережив подобное раз-

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

CPAN - это попытка сообщества Perl избежать ненужней работы. Модули, находящиеся здесь, должны уберечь вас от разочарования, неизбежно возникающего при

повторном изобретении чьего-то "велосипеда".

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

Внешне может показаться, что от идеи CPAN веет духом общины. Но истинные причины, по которым авторы вносят свой вклад в CPAN, очень разные. Иногда они поступают так, чтобы сделать доброе дело. Иногда хотят заслужить уважение и восхищение других людей - и надо сказать, что это мощная движущая сила. Но какой бы ни была причина, конечным результатом является огромный объем проделанной работы, т.е. множество модулей, которые вы можете использовать в собственных программах.

Куда двигаться дальше

После прочтения двух третей этой книги вы уже должны разбираться в основах Peri. Разумеется, вы не выучили весь язык целиком. Па моей книжной полке по меньшей мере шесть книг по языку Perl, т.е. примерно 2300 страниц, на которых описывается Perl (не принимая в расчет повторяющиеся темы), и все равно некоторые темы сюда не включены.

. Вы не найдете единственный ресурс или источник информации, содержащий все сведения о Perl. По в следующих разделах содержатся рекомендации о том, какие шаги следует сделать.

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



Ваш первый шаг

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

Прогуляйтесь, выпейте пива, успокойтесь и расслабьтесь. Вы непременно решите

эту проблему.

Ваш самый полезный инструмент

Самый полезный инструмент в вашем наборе инструментов - это сам

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

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

Perl правильно определяет, в какой строке что-то не так. А теперь исследуйте эту строки, находя ответы на следующие вопросы.

• В выданном Perl сообщении об ошибке указывается конкретно, где именно ее следует искать? Если да, то ищите ее там! Интерпретатор Perl - ващ самый надежный помощник в деле нахождения ошибок.

• Проверьте, у всех ли скобок (круглых, квадратных и фигурных) есть пары?

• Тщательно ли вы проверили синтаксис операторов? Проверьте его еще раз. Вы будете удивлены, выяснив, как много ошибок на поверку оказываются синтаксическими.

• Может, вы что-то пропустили? Например, точку или запятую?

• Все ли в порядке со строками, находящимися непосредственно перед указанной строкой? ..... . ..

• Если вы вернетесь к разделу данной книги, где говорится об определенном правиле синтаксиса, то сможете ли найти примеры, аналогичные вашему?

• Если вы откуда-то скопировали код, то можете ли поискать этот же фрагмент в другом месте? Возможно, в скопированном коде содержалась ошибка. От них, в конце концов, никто не застрахован.

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

пух и прах, выполните следующие действия.

1. Убедитесь в том, что в строке! вашей программы содержится ключ -w.

2 Убедитесь, что где-то в начале программы есть оператор use strict.

Часто оказывается, что многие проблемы, которые внешне кажутся связанными с логикой, - это простые ошибки, легко обнаруживаемые с помощью ключа -w и директивы use strict. Воспользуйтесь этими средствами, и, если проблемы останутся,-

продолжайте читать дальше.



Отладка программы

ЕСЛИ ВЫ уверены, что синтаксис программы правильный, но просто она дает неверные результаты, то самое время выполнить элементарную отладку.

Первый и, вероятно, самый распространенный метод отладки программы - это

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

sub foo { my($al, $а2)=§ ;

t Добавлен оператор тестовой печати дл пей диагностики print STDEKH ОБВДКА: Выюв foo с параметрами $al я $а2";

Но помните, что после завершения работы над программой вы должны убрать из нее все отладочные операторы print. Чтобы впоследствии вам легче было их все разыскать, я рекомендую ввести в них какое-то отличительное ключевое слово, например DJBUG или ОТК Кроме того, направляя вывод в стандартный поток ошибок вы сможете отделить обычные выходные данные от диагностики. Если вы включили в диагностические сообщения литералы UKE и FILE , то Perl напечатает имя текущей строки и файла.

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

дение за пошаговым выполнением программы может быть очень информативным.

Инструкции по использованию отладчика Perl даны на 12-м занятии, "Работа с

командной строкой Peri".

Во-первых, помогите себе сами

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

Как указывалось на 1-м занятии , "Начало работы с в каждую поставку Perl

входит полный набор документации. В поставку выпуска 5.6 включено свыше 1700 страниц документации. В ней описывается каждый модуль и каждая функция языка Perl, т.е. освещаются практически все аспекты; здесь же вы найдете большой список часто задаваемых вопросов (Frequently Asked Questions - FAQ).

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

В разделе FAQ содержится список вопросов о языке Peri, наиболее часто задаваемых начинающими программистами и профессионалами. Стоит просмотреть данный список хотя бы один раз, чтобы получить представление о том, какого рода вопросы здесь содержатся, даже если вы пока не совсем понимаете смысл ответов.

Если по какой-то причине на вашем компьютере не установлена документация по Perl или в ответ на команду perldoc она не появляется, то прежде всего вам следует поговорить с системным администратором и попытаться найти документацию. Очень важно, чтобы документация была установлена правильно, потому что электронная документация соответствует версии Perl, которую вы используете. Любая другая документация, скорее всего, будет иметь какие-то отличия.

Если вы пе можете получить доступ к электронной документации, то сможете найти ее также на Web-сервере по адресу http; ww.perl.com.



0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 [ 79 ] 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122