Новые книги

Что объединяет многочисленные интернет-магазины, тематические группы в социальных сетях, веб-сайты коммерческих предприятий и информационные порталы? Наличие контента, который создают копирайтеры, – специалисты по разработке текстов.

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

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

В книге Бертрана Мейера рассматриваются основы объектно-ориентированного программирования. Изложение начинается с рассмотрения критериев качества программных систем и обоснования того, как объектная технология разработки может обеспечить требуемое качество. Основные понятия объектной технологии и соответствующая нотация появляются как результат тщательного анализа и обсуждений. Подробно рассматривается понятие класса - центральное понятие объектной технологии. Рассматривается абстрактный тип данных, лежащий в основе класса, совмещение классом роли типа данных и модуля и другие аспекты построения класса. Столь же подробно рассматриваются объекты и проблемы управления памятью. Большая часть книги уделена отношениям между классами – наследованию, универсализации и их роли в построении программных систем. Важную часть книги составляет введение понятия контракта, описание технологии проектирования по контракту, как механизма, обеспечивающего корректность создаваемых программ. Не обойдены вниманием и другие важные темы объектного программирования – скрытие информации, статическая типизация, динамическое связывание и обработка исключений. Глубина охвата рассматриваемых тем делает книгу Бертрана Мейера незаменимой для понимания основ объектного программирования.

Running an NIS Server

Запуск NIS-сервера

Обратите внимание, что если Вы собираетесь только экспериментировать с сервером NIS, удостоверьтесь, что Вы не устанавливаете имя домена в уже используемое. Это может разрушить все сетевое обслуживание.

Имеются две возможных конфигурации NIS-сервера: главный (master) и подчиненный (slave). Вторая конфигурация обеспечивает резервную машину, которая должна подхватить нагрузку при сбое основной. Поскольку в документации сервера есть детальное описание различий в настройке первичного и подчиненного режимов, здесь я опишу только настройку первичного сервера.

В настоящее время есть два NIS-сервера, свободно доступные для Linux: один в пакете yps (автор Tobias Reber) и второй в пакете ypserv (разработан Peter Eriksson). Особой разницы между ними нет.

После установки программы-сервера (ypserv) в каталог /usr/sbin, Вы должны создать каталог, хранящий файлы карт, которые Ваш сервер должен распределять. При установке домена NIS как brewery, карты окажутся в каталоге /var/yp/brewery. Сервер определяет, обслуживает ли он некий домен NIS по наличию каталога с картами, так что при отключении некоего домена удалите и соответствующий каталог.

Карты обычно хранятся в DBM-файлах, чтобы ускорить поиск. Они создаются из файлов-заготовок программой makedbm (для сервера Tobias) или dbmload (для версии Peter).

Преобразование главного файла-заготовки в форму для анализа программой dbmload требует довольно сложной работы с процессором awk или sed. Поэтому пакет ypserv Питера Ерикссона (Peter Eriksson) содержит Makefile (с именем ypMakefile), который управляет преобразованием наиболее часто встречающихся файлов. Вы должны установить его как Makefile в каталоге карт и отредактировать так, чтобы отразить карты, которые Вы хотите распространять. Строки для задания карт выглядят так:

all: ethers hosts networks protocols rpc services passwd group netid

Если Вы не хотите распространять, например, карты ethers.byname и ethers.byaddr, просто удалите записи ethers из этого правила. Чтобы проверить настройку, Вы можете запустить сервис с одной или двумя картами, например, services.*.

После редактирования Makefile выполните в каталоге с картами команду make. Она автоматически генерирует и устанавливает карты. Вы должны удостовериться, что они будут модифицироваться всякий раз, когда Вы изменяете файлы, на основе которых построены карты, иначе изменения останутся невидимыми для сети.

В разделе "Установка клиента NIS с GNU libc" будет рассказано, как конфигурировать клиент NIS. Если настройки не работают, Вы должны попробовать выяснить, достигают ли запросы сервера вообще. Если Вы определяете параметр командной строки --debug для ypserv, на консоли будут выведены данные о NIS-запросах и их выполнении. Данная опция не работает в сервере, разработанном Tobias Reber.