Что такое программное обеспечение с открытым исходным кодом и почему оно имеет значение?

Оглавление:

Что такое программное обеспечение с открытым исходным кодом и почему оно имеет значение?
Что такое программное обеспечение с открытым исходным кодом и почему оно имеет значение?

Видео: Что такое программное обеспечение с открытым исходным кодом и почему оно имеет значение?

Видео: Что такое программное обеспечение с открытым исходным кодом и почему оно имеет значение?
Видео: ЭТО САМЫЙ ЛУЧШИЙ АНТИВИРУС НА ВАШЕМ ТЕЛЕФОНЕ😇#shorts - YouTube 2024, Май
Anonim
Выродки часто описывают программы как «открытый источник» или «бесплатное программное обеспечение». Если вам интересно, что означают эти термины и почему они имеют значение, читайте дальше. (Нет, «бесплатное программное обеспечение» означает не только то, что вы можете скачать его бесплатно).
Выродки часто описывают программы как «открытый источник» или «бесплатное программное обеспечение». Если вам интересно, что означают эти термины и почему они имеют значение, читайте дальше. (Нет, «бесплатное программное обеспечение» означает не только то, что вы можете скачать его бесплатно).

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

Определение открытого исходного кода

Если программа является открытым исходным кодом, ее исходный код свободно доступен для своих пользователей. Его пользователи - и все остальные - имеют возможность использовать этот исходный код, модифицировать его и распространять свои собственные версии программы. Пользователи также имеют возможность распространять как можно больше копий исходной программы. Любой может использовать программу для любых целей; нет никаких лицензионных сборов или других ограничений на программное обеспечение. OSI имеет более подробное определение «с открытым исходным кодом» на своем веб-сайте.

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

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

Firefox, Chrome, OpenOffice, Linux и Android - некоторые популярные примеры программного обеспечения с открытым исходным кодом, в то время как Microsoft Windows, вероятно, является самой популярной частью программного обеспечения с закрытым исходным кодом.

Открытый исходный код и бесплатное программное обеспечение

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

Однако это не то, что означает «свободное программное обеспечение». «Свободный» в бесплатном программном обеспечении означает «свободный, как в свободе», а не «свободный, как в пиве». В лагере свободного программного обеспечения во главе с Ричардом Столлманом и Фондом свободного программного обеспечения основное внимание уделяется этике и морали использования программного обеспечения, которое может быть контролируемый и измененный пользователем. Другими словами, лагерь свободного программного обеспечения фокусируется на свободе пользователей.

Image
Image

Ричард Столлман. Изображение пользователя Fripog on Flickr.

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

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

Типы лицензий

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

GPL или GNU General Public License широко используется многими проектами с открытым исходным кодом, такими как Linux. В дополнение ко всем вышеприведенным определениям с открытым исходным кодом термины GPL указывают, что если кто-либо модифицирует программу с открытым исходным кодом и распределяет производную работу, они также должны распространять исходный код для своей производной работы. Другими словами, никто не может использовать код с открытым исходным кодом и создавать из него программу с закрытым исходным кодом - они должны отменить свои изменения обратно в сообщество. По этой причине Microsoft назвала GPL «вирусной», поскольку она заставляет программы, содержащие код GPL, выпускать собственный исходный код. Конечно, разработчики программы могут отказаться от использования кода GPL, если это проблема.

Некоторые другие лицензии, такие как лицензия BSD, накладывают меньше ограничений на разработчиков. Если программа лицензируется по лицензии BSD, любой может включить исходный код программы в другую программу. Им не нужно возвращать свои изменения в сообщество. Некоторые люди считают, что это еще более «бесплатно», чем лицензия GPL, поскольку она дает разработчикам свободу вводить код в свои программы с закрытыми исходными кодами, в то время как некоторые люди считают его менее «свободным», поскольку он требует прав от конечных пользователей производной программы.
Некоторые другие лицензии, такие как лицензия BSD, накладывают меньше ограничений на разработчиков. Если программа лицензируется по лицензии BSD, любой может включить исходный код программы в другую программу. Им не нужно возвращать свои изменения в сообщество. Некоторые люди считают, что это еще более «бесплатно», чем лицензия GPL, поскольку она дает разработчикам свободу вводить код в свои программы с закрытыми исходными кодами, в то время как некоторые люди считают его менее «свободным», поскольку он требует прав от конечных пользователей производной программы.

Преимущества для пользователей

Это не все сухие, неважные вещи, которые важны только для разработчиков. Наиболее очевидным преимуществом программного обеспечения с открытым исходным кодом является то, что его можно бесплатно использовать. Пример Ubuntu Linux выше делает это понятным - в отличие от Windows вы можете устанавливать или распространять столько копий Ubuntu, сколько хотите, без ограничений. Это может быть особенно полезным сервером - если вы настраиваете сервер, вы можете просто установить на него Linux. если вы настраиваете виртуальный кластер серверов, вы можете легко дублировать один сервер Ubuntu. Вам не нужно беспокоиться о лицензировании и количестве экземпляров Linux, которые вам разрешено запускать.

Программа с открытым исходным кодом также более гибкая.Например, новый интерфейс Windows 8 разочаровал многих давних пользователей Windows. Поскольку Windows является закрытым исходным кодом, ни один пользователь Windows не может использовать интерфейс Windows 7, изменять его и корректно работать в Windows 8. (Некоторые пользователи Windows пытаются, но это кропотливый процесс обратного проектирования и изменения двоичных файлов. )

Когда рабочий стол Linux, такой как Ubuntu, представляет новый рабочий стол, который некоторые пользователи не являются поклонниками, у пользователей больше возможностей. Например, когда GNOME 3 был выпущен, многие пользователи настольных компьютеров Linux были в равной степени отключены. Некоторые перенесли код в старую версию GNOME 2 и модифицировали его, чтобы запустить его в последних дистрибутивах Linux - это MATE. Некоторые взяли код GNOME 3 и модифицировали его, чтобы заставить его работать таким образом, который они предпочитают - это Cinnamon. Некоторые пользователи просто переключились на существующие альтернативные рабочие столы. Если бы Windows была с открытым исходным кодом, пользователи Windows 8 имели бы больше выбора и гибкости. Просто взгляните на CyanogenMod, популярный дистрибутив Android, основанный на сообществе, который добавляет функции и поддерживает новые устройства.
Когда рабочий стол Linux, такой как Ubuntu, представляет новый рабочий стол, который некоторые пользователи не являются поклонниками, у пользователей больше возможностей. Например, когда GNOME 3 был выпущен, многие пользователи настольных компьютеров Linux были в равной степени отключены. Некоторые перенесли код в старую версию GNOME 2 и модифицировали его, чтобы запустить его в последних дистрибутивах Linux - это MATE. Некоторые взяли код GNOME 3 и модифицировали его, чтобы заставить его работать таким образом, который они предпочитают - это Cinnamon. Некоторые пользователи просто переключились на существующие альтернативные рабочие столы. Если бы Windows была с открытым исходным кодом, пользователи Windows 8 имели бы больше выбора и гибкости. Просто взгляните на CyanogenMod, популярный дистрибутив Android, основанный на сообществе, который добавляет функции и поддерживает новые устройства.

Программное обеспечение с открытым исходным кодом также позволяет разработчикам «встать на плечи гигантов» и создать собственное программное обеспечение. Witness Android и Chrome OS, которые являются операционными системами, основанными на Linux и другом программном обеспечении с открытым исходным кодом. Ядро Apple OS X - и поэтому iOS - также было построено на открытом исходном коде. Valve неистово работает над переносом своей игровой платформы Steam на Linux, поскольку это позволит им создавать собственное оборудование и контролировать свою судьбу таким образом, который невозможно в Windows Microsoft.

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

Рекомендуемые: