Новые книги

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

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

Книга предназначена для начинающих программистов.
Находясь на переднем крае программирования, книга «Программист-прагматик. Путь от подмастерья к мастеру» абстрагируется от всевозрастающей специализации и технических тонкостей разработки программ на современном уровне, чтобы исследовать суть процесса – требования к работоспособной и поддерживаемой программе, приводящей пользователей в восторг. Книга охватывает различные темы – от личной ответственности и карьерного роста до архитектурных методик, придающих программам гибкость и простоту в адаптации и повторном использовании.

Прочитав эту книгу, вы научитесь:

Бороться с недостатками программного обеспечения;

Избегать ловушек, связанных с дублированием знания;

Создавать гибкие, динамичные и адаптируемые программы;

Избегать программирования в расчете на совпадение;

Защищать вашу программу при помощи контрактов, утверждений и исключений;

Собирать реальные требования;

Осуществлять безжалостное и эффективное тестирование;

Приводить в восторг ваших пользователей;

Формировать команды из программистов-прагматиков и с помощью автоматизации делать ваши разработки более точными.

trn Configuration

Настройка trn

Программа trn является преемником более старого newsreader, а именно, rn. Он написан Wayne Davidson.

В отличие от tin trn не имеет никакого средства для производства базы данных поиска во время выполнения. Взамен он использует базу, подготовленную программой mthreads, которая должна регулярно вызываться из cron, чтобы модифицировать индексные файлы.

Невыполнение mthreads,, однако, не означает, что Вы не можете обращаться к новым статьям, это только означает, что Вы будете иметь все статьи "A GENUINE INVESTMENT OPPORTUNITY", рассеянными в меню выбора статей, вместо одного экземпляра (который Вы можете легко пропустить).

Чтобы включить отсеивание для определенных newsgroups, mthreads вызывается со списком newsgroup в командной строке. Список сделан как в файле sys:

$ mthreads "comp,rec,!rec.games.go"

Отсеивает все comp и rec, кроме rec.games.go. После этого Вы просто вызываете mthreads без опций вообще, чтобы заставить обработать любые недавно прибывшие статьи. Отсеивание всех групп, найденных в файле active, может быть включено вызовом mthreads со списком групп all.

Если Вы получаете новости ночью, то будете обычно выполнять mthreads один раз утром, но Вы можете также делать это более часто, если необходимо. Абоненты, которые имеют очень большой трафик, могут выполнять mthreads в daemon-режиме. Когда mthreads запускается при начальной загрузке, используя опцию -d, он помещает себя в фон и пробуждается каждые 10 минут, чтобы проверить, имеются ли недавно прибывшие статьи, и просеивает их. Чтобы выполнять mthreads в daemon-режиме, поместите следующую строку в скрипт rc.news:

/usr/local/bin/rn/mthreads -deav

Опция -a заставит mthreads автоматически включить отсеивание для новых групп, как только они будут созданы. Опция -v дает возможность записи подробных регистрационных сообщений в файл регистрации mthreads, mt.log в каталоге, где Вы установили trn.

Старые статьи, которые больше не доступны, должны быть удалены из индексных файлов. По умолчанию только статьи, чье число меньше метки ожидания (low-water mark), будут удалены. Статьи с числом выше этого, которые устарели (потому что самая старая статья была назначена на дальнюю дату старения полем Expires: заголовка) могут быть удалены командой mthreads с опцией -e, чтобы вынудить расширенную чистку. Когда mthreads выполняется в daemon-режиме, опция -e заставит выполнять такое расширенное старение один раз в день, в полночь.