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

Иллюстрация кодирования

Программное обеспечение с открытым исходным кодом (OSS) — это любое компьютерное программное обеспечение, которое распространяется с исходным кодом, доступным для модификации. Это означает, что он обычно включает лицензию для программистов на изменение программного обеспечения любым способом, который они выбирают: они могут исправлять ошибки, улучшать функции или адаптировать программное обеспечение в соответствии со своими потребностями.

Критерии открытого программного обеспечения

Open Source Initiative (OSI), глобальная некоммерческая организация, основанная в 1998 году, выступает ведущим авторитетом в области OSS. Его определение программного обеспечения с открытым исходным кодом включает в себя десять критериев, касающихся таких вопросов, как:

  • Распространение программного обеспечения
  • Доступность и целостность исходного кода
  • Распространение и свойства лицензий
  • Производные работы
  • Антидискриминация

Лицензии

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

  1. Лицензия MIT
  2. Стандартная общественная лицензия GNU (GPL) 2.0
  3. Apache License 2.0
  4. GNU General Public License (GPL) 3.0
  5. Лицензия BSD 2.0 (3 пункта, новая или пересмотренная)

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

Коммерческое программное обеспечение

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

Свободное программное обеспечение

Хотя эти термины часто используются взаимозаменяемо, OSS немного отличается от свободного программного обеспечения. Оба имеют дело со способностью загружать и изменять программное обеспечение без ограничений или платы. Однако свободное программное обеспечение — концепция, разработанная в 1980-х годах исследователем компьютерных наук из Массачусетского технологического института Ричардом Столлманом, — определяется четырьмя условиями, изложенными некоммерческим фондом свободного программного обеспечения. Эти «четыре свободы» подчеркивают способность пользователей использовать программное обеспечение и наслаждаться им по своему усмотрению.

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

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

преимущества

Хотя отсутствие затрат является ключевым преимуществом, у OSS есть несколько дополнительных преимуществ:

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

Популярные типы

Технологии с открытым исходным кодом помогли создать большую часть Интернета. Кроме того, многие программы, используемые каждый день, основаны на технологиях с открытым исходным кодом. Примеры: ОС Android и Apple OS X основаны на технологиях с открытым исходным кодом ядра и Unix / BSD соответственно.

Другое популярное программное обеспечение с открытым исходным кодом:

  • Браузер Mozilla Firefox
  • Почтовый клиент Thunderbird
  • Язык сценариев PHP
  • Язык программирования Python
  • Apache HTTP веб-сервер

Разработчики

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

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

Нижняя линия

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

Ссылка на основную публикацию