Какво е “отворен код”

Организацията OSI, чийто председател за момента е Майкъл Тийман, е определила правила, по които може да се определи дали един продукт е с отворен код, или не. Отворен код не значи само програмата ти да бъде с отворен код, а и да отговаря на следните правила:

1. Свободно разпространение.Лицензът, под който се разпространява програмата ви, не трябва по никакъв начин да забранява продажбата или свободното й даване като компонент от друг софтуер, съдържащ много компоненти. Този лиценз не трябва да изисква заплащане.

2. Сорс код.Програмата трябва да съдържа сорс кода и трябва да позволява разпространението му, както и в компилирана форма (ако има такава възможност). Ако под някаква форма продуктът не се разпространява заедно с кода му, то трябва да има инструкции откъде може да се свали от Интернет без заплащане. Сорс кодът трябва да бъде в такава форма, че всеки да може да го променя за своите нужди. Доставянето на маскиран (обфускиран) код или на кодиран код не се допуска.

3. Допълнителни работи.Лицензът трябва да позволява промени на кода и дописването му, а също трябва да разрешава те да бъдат разпространявани под същия лиценз, както и на оригиналния софтуер.

4. Цялостност на авторския код.– Лицензът може да забранява разпространението на сорс кода в модифициран вид само ако лицензът позволява добавянето на пач файлове заедно със сорс кода с цел модифициране на програмата по време на изпълнението й (компилирането). – Лицензът също трябва да позволява разпространението на софтуера, създаден по този начин. – Лицензът може да изисква версия с допълнително писания код да носи различно име или номер от тази на оригиналния продукт.

5. Без дискриминация на лица или групи. Лицензът не трябва да дискриминира хора или групи от хора.

6. Без дискриминация на области на прилагане.Лицензът не трябва да ограничава използването на програмата в различни области. Например не трябва да ограничавате използването на софтуера само в областта на бизнеса или на генното инженерство.

7. Разпространение на лиценза. Правата, зададени за всяка програма, трябва да са задължителни за всеки, който я ползва, без нужда от допълнителни лицензи.

8. Лицензът не трябва да бъде за определен продукт.Правата, които носи лицензът, не трябва да зависят от това, че програмата принадлежи към дистрибуция. Ако тя се извади от дистрибуцията или се разпространява отделно, всички нейни части зависят от условията на лиценза на оригиналната дистрибуция.

9. Лицензът не трябва да ограничава друг софтуер.Лицензът не трябва да налага ограничения на друг софтуер, който се разпространява заедно с лицензирания софтуер. Например лицензът не може да настоява, че всички други програми в една дистрибуция или пакет трябва да бъдат с отворен код.

10.Лицензът трябва да бъде технологично независим. Нито една клауза на лиценза не трябва да се отнася към индивидуална технология или определен интерфейс.

Оставете ми коментар

Този сайт използва Akismet за намаляване на спама. Научете как се обработват данните ви за коментари.