33 коровы – Source Code Licenses and Flash/Flex by Grant Skinner - RIA разработка, Flex, Action Script, AIR, Eclipse, Monkey script

Source Code Licenses and Flash/Flex by Grant Skinner

October 4, 2009 – 6:08 pm

Год с хвостиком, назад Grant Skinner написал статью Source Code Licenses and Flash/Flex, а один человек(который Илья ALFer) начал ее переводить и потом просто забил на неё :). Я вместе с женой решили ее перевести до конца, итак ниже вольный перевод и немного фраз от меня :

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

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

Quick Links

Implicit GPL LGPL MPL BSD Apache MIT Public Domain CC Summary

Implicit Copyright/Неявный копирайт (лицензия не указана)

Коммерческое использование Производные работы Установление авторства
Нет Нет Да

Описание

Распространённым заблуждением является, то, что люди считают продукты выпущенные без явной лицензии являются общедоступными и свободными в использовании. В реальности же, всё наоборот – любой продукт не имеющий явной лицензии попадает под её дефолтные значения оговоренные законодательством страны и международными соглашениями.

Смысл

Без специальных разрешений от автора вы не имеете права использовать код без явной лицензии в своих продуктах. Получение прав на использование такого кода через суд вообще мутное дело (особенно если у вы поизменяли этот код).

Дополнительная информация

GPL GNU General Public License

Коммерческое использование Производные работы Установление авторства
Да, но ВСЕ сорцы должны быть лицензированы под GPL Сорцы и дистрибуция

Описание

GNU General Public License является “вирусной” лицензией, а это означает, что она должна применяться к всему исходному коду, взаимодействующему с вашим GPL кодом. Согласно Free Software Foundation (FSF), это включает в себя и динамически связанные библиотеки.

Смысл

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

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

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

Дополнительная информация

LGPL GNU Lesser General Public License

Коммерческое применение Производные работы Установление авторства
Да Да, но прямые производные должны публиковаться под  LGPL. Технически сложно удовлетворить требования в AS3.  Исходники и дистрибуция

Описание

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

Другое требование заключается в том, чт о любая  LGPL библиотека в твоем проекте должна разрешать обратное проектирование [ reverse engineering ] для обратного проектирования. И у пользователя долж на быть возможность заменять ее новыми версиями.

Смысл

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

Также неясно, как удовлетворить требование, чтобы пол ьзователь был в состоянии заменя ть библиотеки LGPL в веб-приложении.

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

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

Дополнительная информация

MPL Mozilla Public License

Коммерческое применение Производные работы Установление авторства
Да Да, но изменения относительно оригинального кода должны публиковаться под  MPL. Исходники и дистрибуция

Описание

MPL – очень либеральная лицензия. Она позволяет коммерческое использование и производные работы, и к тому же она очень снисходительна в своем определении защищенного кода. Только файлы, которые были изменены в оригинальных библиотеках MPL, или которые содержат  код, скопированный из таковой библиотеки, должны быть повторно опубликованы под MPL. В отличие от LGPL, нет никаких требований к динамическому присоединению – биб лиотеки могут быть собраны в твоем проект е .

Смысл

Помимо того, что должны быть о публиков аны любые изменения, которые были произведены в библиотеках MPL, единственным важным требованием является требование включать информацию о том, где получить любые библиотеки MPL в своем проекте (на стран ице «About», например). Пока твой клиент выполняет данное условие, проблем при использовании кода MPL в проекте не должно возникнуть.

Дополнительная информация

BSD 3 & 4 clause versions

Коммерческое использование Производные работы Установление авторства
Да Да Исходники и документация. Deprecated 4 clause version требует упоминания во ВСЕХ   маркетинговых материалах

Описание

Лицензия BSD – очень простая, либера льная лицензия. Она разрешает и спользовать исходный код как вздумается, требуя только размещения уведомления об авторском праве и  текста лицензии в защищенных файлах исходного кода и в документации для программы.

Более поздняя 4 clause version лицензии требует, чтобы все маркетинговые материалы для программы упоминали автора лицензированных библиотек BSD. Это было аннулировано ,  поэтому маловероятно, что найдутся современные библиотеки , использующие 4 clause version.

Смысл

Требования к установлению авторства – это единственная реальная сложность при использования исходного кода, защищенного лицензией BSD. Есл и это 3 clause version версия лицензии, и в твоем клиенте есть уведомление об авторском праве и текст лицензии, находящийся в защищенном исходном коде, и в докум ентации (это может быть документ , присоединен ный к блоку « About »), тебе не следует беспокоиться. 

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

Дополнительная информация

Apache License version 2.0

Коммерческое использование Производные работы Установление авторства
Да Да Исходники и дистрибуция, если требует лицензиар.

Описание

The Apache License version 2.0 имеет практически такие же условия, как и лицензия BSD, но является более подробной и конкретизированной, охватывая более широкий ряд аспектов интеллектуальной собственности. Исходный код под AL2 может использоваться фактически в любых целях, но должен сохранить все соответствующие IP[? как это расшифровать переводится] , лицензии, и уведомления об авторстве в исходном коде. Возможно , ты также необходимо показать данные уведомления или в файле “NOTICE”,  ил и в соответствующем месте приложения.

ASL2 – популярная лицензия с Cold Fusion Community.

Смысл

Как и с лицензией BSD, особенности использования библиотек AL2  в основном  ограничены требовани ями к установлению авторства. Ты должен сохранить уведомления в исходном коде, и возможно также будешь обязан продемонстрировать данные уведомления или в файле “NOTICE”, или на странице «About» своего приложения. Последнее требуется только в том случае,  если текстовый файл NOTICE был включе н в оригинальную дистрибуцию .

Дополнительная информация

MIT (X11)

Коммерческое использование Производные работы Установление авторства
Да Да Только исходники

Описание

Лицензия MIT очень проста и очень либеральна. Она разрешает делать все, что вздумается с лицензированным кодом, кроме удаления лицензии и информации об авторском праве.

Сложности

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

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

Дополнительная информация

Public Domain

Коммерческое использование Производные работы Установление авторства
Да Да Нет

Описание

Для того чтобы работать используя public domain , владелец должен явно посвятить свою работу public domain. Как только это сделано, ты получаешь все права для работы.

Смысл

Теоретически работа в public domain полностью свободна от препятствий. Это определено конкретной формулировкой предназначения public domain , которую использует владелец.

Дополнительная информация

Creative Commons

Коммерческое использование Производные работы Установление авторства
Варьируется Варьируется Варьируется

Описание

Creative Commons предлагает модульные лицензии, которые позволяют разработчику выбирать те условия, которые удовлетворяют его потребности. Например, я мог соз дать лицензию, которая позволяла бы коммерческое использование, производные раб оты, и не требовала ссылок на авторство. Или я мог создать такую лицензию, которая не разрешала бы коммерческого использования или моди фикаций, но требовал а установления авторства . Они та кже предлагают версии GPL, LGPL и BSD лицензий , так же как и Public Domain Dedication .

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

Важно отметить, что “модульные” лицензии Creative Commons не предназначены для использования с программным обеспечением.

Смысл:

Зависит от используемой лицензии.

Дополнительная информация

Заключение

Если ты выкладываешь код без лицензии, то он защищен з аконом об авторском праве, а значит очень рискованно использовать его в коммерческих проектах.

Лицензии GPL и LGPL весьма рестриктивны,  поэтому использование кода, защищенного данными лицензиями, в коммерческих проектах может быть очень трудным, а порой и невозможным.  Первое становится трудным из-за вирусных условий,  а последнее  –   из-за технических трудностей отвечать их требованиям.

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

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

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

Я бы  поощрял разработчиков публиковать shared code под лицензией MIT . Когда я публикую исходный код , то делаю это, как правило, для того, чтобы помочь други м разработчикам с их рутинной работой , но не для того чтобы ввести тягостные ограничения или требования. Моя цель состоит в том, чтобы поощрить свободное sharing полезного кода, но не форсировать его (как делает GPL). Я всегда ценю ссылки на авторство, но понимаю, что это просто не возможно на некоторых проектах.

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

Я что-то неправильно осветил? У тебя есть дополнительная информация ? Пожалуйста, дай мне знать в комментариях. Я с радостью обновлю данную статью более точной информацией. 

Искать линки на русские варианты лицензий, я если честно поленился :) и так довольно долго пытался дописать этот пост.

Всем удачного кодирования, следите за своими лицензиями!

Sorry, comments for this entry are closed at this time.



]]> rss о RIA от 33 Коровы
Забадать RSS!
]]>
~~~~~~