16.3. От повторного использования к открытому исходному коду

16.3. От повторного использования к открытому исходному коду

Компоненты ранней Unix, ее библиотеки и связанные утилиты распространялись в виде исходного кода. Эта открытость была жизненно важной частью культуры Unix. В главе 2 уже говорилось о том, как после разрушения этой традиции в 1984 году Unix утратила свою первоначальную движущую силу, и как десять лет спустя возникновение GNU-инструментария и Linux побудило сообщество "вернуться к ценностям" открытого исходного кода.

В настоящее время открытый исходный код снова является одним из наиболее мощных инструментов в коллекции любого Unix-программиста.

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

Ранее в настоящей книге историческое описание было подано в контексте причинных и культурных связей между Unix и открытым исходным кодом. Организация и тактика разработки открытого исходного кода рассматривается в главе 19. При обсуждении теоретических и практических вопросов повторного использования полезно рассматривать открытый исходный код отдельно, как непосредственную реакцию на проблемы, драматизированные в истории о Дж. Рэндома Ньюби.

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

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

Открытый исходный код — основной идеологический удар по всем данным проблемам. Если корень большинства проблем Дж. Рэндома Ньюби с повторным использованием заключается в непрозрачности зарытого исходного кода, то первоначальные предположения, которые порождают закрытый исходный код, должны быть разрушены. Если корпоративная территориальность является проблемой, то ее необходимо атаковать или игнорировать до тех пор, пока корпорации не поймут, насколько губительными для них являются их территориальные рефлексы. Открытый исходный код — вот, что случится, когда повторное использование кода "получит флаг и армию".

Таким образом, с конца 90-х годов прошлого века более нет никакого смысла рекомендовать стратегию и тактику повторного использования кода без обсуждения открытого исходного кода, соответствующих практических приемов, вариантов лицензирования и норм сообщества открытого исходного кода. Даже если данные проблемы в других сообществах могли бы быть обособленными, в мире Unix они связаны неразрывно.

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

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

4.1. Вариант использования

Из книги Самоучитель UML автора Леоненков Александр

4.1. Вариант использования Конструкция или стандартный элемент языка UML вариант использования применяется для спецификации общих особенностей поведения системы или любой другой сущности предметной области без рассмотрения внутренней структуры этой сущности. Каждый


Приемы использования

Из книги Office 2007. Мультимедийный курс автора Мединов Олег

Приемы использования В данном разделе мы рассмотрим наиболее популярные действия, которые приходится выполнять пользователям текстового редактора Word


16.3. От повторного использования к открытому исходному коду

Из книги Искусство программирования для Unix автора Реймонд Эрик Стивен

16.3. От повторного использования к открытому исходному коду Компоненты ранней Unix, ее библиотеки и связанные утилиты распространялись в виде исходного кода. Эта открытость была жизненно важной частью культуры Unix. В главе 2 уже говорилось о том, как после разрушения этой


§ 3.1 Требования к исходному тексту

Из книги Создание электронных книг в формате FictionBook 2.1: практическое руководство [Release 1.01 от 28.II.2010 г.] автора Кондратович Михаил Иосифович

§ 3.1 Требования к исходному тексту Наиболее предпочтительными являются txt и RTF(DOC). Их, как будет сказано ниже, можно перенести в редактор книг, без каких-либо дополнительных программных средств.HTML в этом отношении гораздо хуже. Они, как правило, содержат кучу лишней


Цели повторного использования

Из книги Основы объектно-ориентированного программирования автора Мейер Бертран

Цели повторного использования "Последуйте примеру проектирования компьютерных технических средств! Это неверно, что каждая новая программная разработка должна начинаться с чистого листа. Должны существовать каталоги программных модулей, такие же, как каталоги


Возможность повторного использования

Из книги Стандарты программирования на С++. 101 правило и рекомендация автора Александреску Андрей

Возможность повторного использования После этого краткого вторжения в зону объектной территории вернемся к анализу метода сверху вниз и рассмотрим его на сей раз по отношению к одной из наших основных целей - возможности повторного использования ПО. При разработке


Возможность повторного использования

Из книги Разработка приложений в среде Linux. Второе издание автора Джонсон Майкл К.

Возможность повторного использования Обсуждение возможности повторного использования показало, что процедура (элемент функциональной декомпозиции) обычно недостаточна как единица для повторного использования. Мы рассмотрели ранее (лекция 4) типичный пример: поиск в


Запрет повторного объявления

Из книги Удвоение продаж в интернет-магазине автора Парабеллум Андрей Алексеевич

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


Правило повторного объявления типов

Из книги Fiction Book Designer 3.2. Руководство по созданию книг автора

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


37. Открытое наследование означает заменимость. Наследовать надо не для повторного использования, а чтобы быть повторно использованным

Из книги Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ автора Борри Хелен

37. Открытое наследование означает заменимость. Наследовать надо не для повторного использования, а чтобы быть повторно использованным РезюмеОткрытое наследование позволяет указателю или ссылке на базовый класс в действительности обращаться к объекту некоторого


11.5.1. Изменение режима доступа к открытому файлу

Из книги Linux глазами хакера автора Флёнов Михаил Евгеньевич

11.5.1. Изменение режима доступа к открытому файлу Режим добавления (указываемый флагом O_APPEND при открытии файла) и неблокирующий режим (флаг O_NONBLOCK), могут быть включены и отключены уже после того, как файл был открыт, с помощью команды F_SETFL в fcntl(). Параметр arg при этом должен


Избегайте повторного ввода данных

Из книги Цифровой журнал «Компьютерра» № 219 автора Журнал «Компьютерра»

Избегайте повторного ввода данных Если пользователь уже сообщил вам что-то о себе (например, имя), лучше запомнить эту информацию и не спрашивать ее повторно, например при последующей регистрации.Лучше самим заботливо вписать имя в соответствующее поле. Людей раздражает,


Примеры использования

Из книги автора

Примеры использования Объенение всех файлов, расположенных в заданной директории Задача: объединить три файла: 1.txt, 2.txt, 3.txt.1. Сделайте новую директорию (скажем, files) и скопируйте в нее 1.txt, 2.txt, 3.txt;2. Выберите «txt» в «file type»;3. Нажмите «path» и выберите директорию files;4. Нажмите


Примеры использования

Из книги автора

Примеры использования Следующий оператор возвращает время сервера в момент, когда сервер обслуживает запрос клиента Firebird:SELECT CURRENT_TIME AS TIME_FINISHED FROM RDB$DATABASE;В следующем операторе добавления идентификатор текущей транзакции, текущие серверные дата и время, а также имя


6.4. Использования Samba

Из книги автора

6.4. Использования Samba Сервис Samba в основном создавался для пользователей Windows, но и поклонники Linux тоже оценили все преимущества этой технологии, тем более что Linux выполнила задачу разделения файлов по сети не хуже Windows, а где-то даже лучше. Для работы с Samba из ОС Linux


Ода красивому коду Евгений Золотов

Из книги автора

Ода красивому коду Евгений Золотов Опубликовано 04 апреля 2014 0 Какой красивый код!10 Пусть тот, кто устал от этой фразы, первым бросит в меня камень. Это редкая и наверное самая ценная похвала, какой только может удостоиться программист. Деньги?