java-trap.html - en to fr translation catalogue (34 entries)

note: type: Content of: <title>
en: Free but Shackled - The Java Trap - GNU Project - Free Software Foundation
fr: Libre mais entravé - le piège Java - Projet GNU - Free Software Foundation

note: type: Content of: <div><h2>
en: Free but Shackled - The Java Trap
fr: Libre mais entravé - le piège Java

note: type: Content of: <div><address>
en: by <a href="https://www.stallman.org/">Richard Stallman</a>
fr: par <a href="https://www.stallman.org/">Richard Stallman</a>

note: type: Content of: <div><div><h3>
en: Headnote
fr: Note préliminaire

note: type: Content of: <div><div><p>
en: Since this article was first published, Sun (now part of Oracle)  has <a href="https://www.fsf.org/news/fsf-welcomes-gpl-java.html">relicensed</a> most of its Java platform reference implementation under the GNU General Public License, and there is now a free development environment for Java.  Thus, the Java language as such is no longer a trap.
fr: Depuis la parution de cet article, Sun (qui fait maintenant partie d'Oracle) a <a href="https://www.fsf.org/news/fsf-welcomes-gpl-java.html">fait passer l'essentiel de l'implémentation de référence de sa plateforme Java sous la licence publique générale GNU</a> ; il y a donc maintenant un environnement de développement libre pour Java. Ainsi le langage Java n'est plus un piège.

note: type: Content of: <div><div><p>
en: You must be careful, however, because not every Java platform is free.  Sun continues distributing an executable Java platform which is nonfree, and other companies do so too.
fr: Vous devez faire attention, cependant, parce que toutes les plateformes Java ne sont pas libres. Sun continue à distribuer une plateforme Java exécutable qui n'est pas libre et d'autres sociétés font de même.

note: type: Content of: <div><div><p>
en: The free environment for Java is called IcedTea; the source code Sun freed is included in that.  So that is the one you should use.  Many GNU/Linux distributions come with IcedTea, but some include nonfree Java platforms. (Note, added 10/2015: The free implementation of Java is known as OpenJDK in many GNU/Linux distributions.)
fr: L'environnement libre pour Java s'appelle IcedTea ; le code source libéré par Sun y est inclus. C'est donc cet environnement que vous devez utiliser. Beaucoup de distributions GNU/Linux sont fournies avec IcedTea, mais certaines contiennent des plateformes Java non libres. (Note ajoutée en octobre 2015 : l'implémentation libre de Java s'appelle OpenJDK dans beaucoup de distributions GNU/Linux.)

note: type: Content of: <div><div><p>
en: To reliably ensure your Java programs run fine in a free environment, you need to develop them using IcedTea.  Theoretically the Java platforms should be compatible, but they are not compatible 100 percent.
fr: Pour vous assurer de manière fiable que votre programme Java s'exécutera correctement dans un environnement libre, vous devez le développer avec IcedTea. Théoriquement les plateformes Java devraient être compatibles, mais elles ne le sont pas à 100%.

note: type: Content of: <div><div><p>
en: In addition, there are nonfree programs with &ldquo;Java&rdquo; in their name, such as JavaFX, and there are nonfree Java packages you might find tempting but need to reject.  So check the licenses of whatever packages you plan to use.  If you use Swing, make sure to use the free version, which comes with IcedTea. (Note, added 10/2015: A free replacement for JavaFX called OpenJFX has been released.)
fr: De plus, il y a des programmes non libres dont le nom contient « Java », comme JavaFX, et il y a des paquets Java non libres qui pourraient vous tenter mais que vous devez rejeter. Donc vérifiez les licences de tout paquet que vous envisagez d'utiliser. Si vous utilisez Swing, faites en sorte d'utiliser la version libre, qui est fournie avec IcedTea. (Note ajoutée en octobre 2015 : un programme libre remplaçant JavaFX a été publié sous le nom d'OpenJFX.)

note: type: Content of: <div><div><p>
en: Aside from those Java specifics, the general issue described here remains important, because any nonfree library or programming platform can cause a similar problem.  We must learn a lesson from the history of Java, so we can avoid other traps in the future.
fr: Mis à part ces problèmes spécifiques à Java, le problème général décrit ici demeure important, car toute bibliothèque ou plateforme de programmation non libre peut causer un problème similaire. Nous devons retenir la leçon de l'histoire de Java de manière à éviter d'autres pièges à l'avenir.

note: type: Content of: <div><div><p>
en: Please also see: <a href="/philosophy/javascript-trap.html"> The JavaScript Trap</a>.
fr: Veuillez aussi consulter : <a href="/philosophy/javascript-trap.html">Le piège JavaScript</a>.

note: type: Content of: <div><p>
en: <em>April 12, 2004</em>
fr: <em>Le 12 avril 2004</em>

note: type: Content of: <div><p>
en: If your program is free software, it is basically ethical&mdash;but there is a trap you must be on guard for. Your program, though in itself free, may be restricted by nonfree software that it depends on. Since the problem is most prominent today for Java programs, we call it the Java Trap.
fr: Si votre programme est un logiciel libre, il est éthique par nature, mais il y a un piège dont il faut se méfier. Bien qu'intrinsèque, la liberté de votre programme peut être restreinte à cause de logiciels non libres dont il dépend. Comme c'est avec les programmes Java que ce problème est aujourd'hui le plus évident, nous l'avons nommé le « piège Java ».

note: type: Content of: <div><p>
en: A program is free software if its users have certain crucial freedoms. Roughly speaking, they are: the freedom to run the program, the freedom to study and change the source, the freedom to redistribute the source and binaries, and the freedom to publish improved versions. (See the <a href="/philosophy/free-sw.html">Free Software Definition</a>.)  Whether any given program in source form is free software depends solely on the meaning of its license.
fr: Un programme est un logiciel libre si ses utilisateurs possèdent certaines libertés fondamentales. En gros, il s'agit de : la liberté d'exécuter le programme, la liberté d'en étudier et modifier le code source, la liberté d'en redistribuer les fichiers source et binaires, et la liberté d'en publier des versions améliorées (voir la <a href="/philosophy/free-sw.html">définition du logiciel libre</a>). Qu'un programme donné soit un logiciel libre ne dépend que de la signification de sa licence.

note: type: Content of: <div><p>
en: Whether the program can be used in the Free World, used by people who mean to live in freedom, is a more complex question. This is not determined by the program's own license alone, because no program works in isolation. Every program depends on other programs. For instance, a program needs to be compiled or interpreted, so it depends on a compiler or interpreter. If compiled into byte code, it depends on a byte-code interpreter. Moreover, it needs libraries in order to run, and it may also invoke other separate programs that run in other processes. All of these programs are dependencies.  Dependencies may be necessary for the program to run at all, or they may be necessary only for certain features. Either way, all or part of the program cannot operate without the dependencies.
fr: Que le programme puisse être utilisé dans le monde du Libre, utilisé par des personnes qui entendent vivre en toute liberté, est une question plus compliquée. La seule licence du programme ne détermine pas cela, car aucun programme ne fonctionne en isolement total. Chaque programme dépend d'autres programmes. Par exemple, il nécessite d'être compilé ou interprété, il dépend donc d'un compilateur ou d'un interpréteur. S'il est compilé en pseudo-code binaire, il dépend d'un interpréteur de pseudo-code. Qui plus est, pour s'exécuter il a besoin de bibliothèques et peut faire appel à d'autres programmes qui s'exécutent sous d'autres processus. Tous ces programmes sont des dépendances. Ces dernières peuvent être totalement indispensables à l'exécution du programme, ou juste nécessaires à certaines de ses fonctionnalités. D'une façon ou d'une autre, tout ou partie du programme ne peut pas fonctionner sans elles.

note: type: Content of: <div><p>
en: If some of a program's dependencies are nonfree, this means that all or part of the program is unable to run in an entirely free system&mdash;it is unusable in the Free World. Sure, we could redistribute the program and have copies on our machines, but that's not much good if it won't run. That program is free software, but it is effectively shackled by its nonfree dependencies.
fr: Que certaines des dépendances d'un programme ne soient pas libres signifie que tout ou partie du programme ne peut s'exécuter sur un système totalement libre – il est inutilisable dans le monde du Libre. Bien sûr, nous pouvons distribuer le programme et en avoir des copies sur nos machines, mais cela ne sert pas à grand-chose s'il ne s'exécute pas. Ce programme est un logiciel libre, mais il est en fait entravé par des dépendances non libres.

note: type: Content of: <div><p>
en: This problem can occur in any kind of software, in any language. For instance, a free program that only runs on Microsoft Windows is clearly useless in the Free World. But software that runs on GNU/Linux can also be useless if it depends on other nonfree software. In the past, Motif (before we had LessTif) and Qt (before its developers made it free software) were major causes of this problem. Most 3D video cards work fully only with nonfree drivers, which also cause this problem. But the major source of this problem today is Java, because people who write free software often feel Java is sexy. Blinded by their attraction to the language, they overlook the issue of dependencies and fall into the Java Trap.
fr: Ce problème peut se produire avec n'importe quel type de logiciel, n'importe quel langage. Par exemple, un programme libre qui ne fonctionne que sous Microsoft Windows est parfaitement inutilisable dans le monde du Libre. Mais des logiciels qui tournent sous GNU/Linux peuvent aussi être inutilisable lorsqu'ils dépendent d'autres logiciels non libres. Par le passé, Motif (avant que nous ayons LessTif) et Qt (avant que ses développeurs n'en fassent un logiciel libre) étaient les causes principales de ce problème. La plupart des cartes vidéo 3D ne fonctionnent pleinement qu'avec des pilotes non libres, ceci pose également un problème. Mais en ce moment, la cause principale de ce problème est Java, parce que certaines personnes qui écrivent des logiciels libres pense que le langage Java est sexy. Aveuglés par l'attrait du langage, ils sous-estiment le problème des dépendances et tombent dans le piège Java.

note: type: Content of: <div><p>
en: Sun's implementation of Java is nonfree. The standard Java libraries are nonfree also. We do have free implementations of Java, such as the <a href="https://objectcomputing.com/resources/publications/sett/january-2003-gcj-the-gnu-compiler-for-java"> GNU Compiler for Java</a> (GCJ) and <a href="/software/classpath">GNU Classpath</a>, but they don't support all the features yet. We are still catching up.
fr: L'implémentation Java de Sun est non libre. Les bibliothèques Java standard sont aussi non libres ; c'est une adaptation du code privateur (propriétaire) de Sun. Les bibliothèques de base de Java sont non libres aussi. Bien sûr, nous disposons d'implémentations libres de Java, comme le <a href="https://objectcomputing.com/resources/publications/sett/january-2003-gcj-the-gnu-compiler-for-java">compilateur GNU pour Java</a> (GCJ) et <a href="/software/classpath">GNU Classpath</a>, mais ils ne gèrent pas encore toutes les fonctionnalités. Nous sommes encore en train de rattraper le retard.

note: type: Content of: <div><p>
en: If you develop a Java program on Sun's Java platform, you are liable to use Sun-only features without even noticing. By the time you find this out, you may have been using them for months, and redoing the work could take more months. You might say, &ldquo;It's too much work to start over.&rdquo; Then your program will have fallen into the Java Trap; it will be unusable in the Free World.
fr: Si vous développez un programme Java sur la plateforme Java de Sun, vous êtes voué à utiliser des fonctionnalités Sun exclusives sans même vous en rendre compte. Vous pourriez les avoir utilisées pendant des mois avant de le découvrir et reprendre la tâche pourrait prendre plus de mois encore. Vous pourriez vous dire : « Recommencer demande trop de travail. » Alors votre programme sera tombé dans le piège Java ; il sera inutilisable dans le monde du Libre.

note: type: Content of: <div><p>
en: The reliable way to avoid the Java Trap is to have only a free implementation of Java on your system. Then if you use a Java feature or library that free software does not yet support, you will find out straightaway, and you can rewrite that code immediately.
fr: Le truc fiable pour éviter le piège Java est de n'avoir qu'une implémentation libre de Java sur votre système. Ainsi, si vous utilisez une fonctionnalité ou une bibliothèque que le logiciel libre ne supporte pas encore, vous vous en rendrez compte immédiatement et vous pourrez réécrire ce code tout de suite.

note: type: Content of: <div><p>
en: Sun continues to develop additional &ldquo;standard&rdquo; Java libraries, and nearly all of them are nonfree; in many cases, even a library's specification is a trade secret, and Sun's latest license for these specifications prohibits release of anything less than a full implementation of the specification. (See the <a href="https://jcp.org/aboutJava/communityprocess/JSPA2.pdf"> Java Specification Participation Agreement</a> and the <a href="https://jcp.org/aboutJava/communityprocess/final/jsr129/j2me_pb-1_0-fr-spec-license.html"> J2ME&trade; Personal Basis Profile Specification</a> for examples.)
fr: Sun continue de créer des bibliothèques « de base » supplémentaires, presque toutes non libres ; dans bien des cas, même les spécifications de la bibliothèque sont des secrets de fabrication. De plus, la dernière licence de Sun concernant ces spécifications interdit la publication d'une mise en œuvre partielle de ces dernières (voir par exemple <a href="https://jcp.org/aboutJava/communityprocess/JSPA2.pdf"><i>Java Specification Participation Agreement</i></a> et <a href="https://jcp.org/aboutJava/communityprocess/final/jsr129/j2me_pb-1_0-fr-spec-license.html"><i>J2ME&trade; Personal Basis Profile Specification</i></a>).

note: type: Content of: <div><p>
en: Fortunately, that specification license does permit releasing an implementation as free software; others who receive the library can be allowed to change it and are not required to adhere to the specification.  But the requirement has the effect of prohibiting the use of a collaborative development model to produce the free implementation. Use of that model would entail publishing incomplete versions, something those who have read the spec are not allowed to do.
fr: Heureusement, la licence de ces spécifications permet d'en publier une mise en œuvre libre ; ceux qui recevraient une telle bibliothèque peuvent être autorisés à la modifier et ne sont pas tenus d'en suivre les spécifications. Mais cette clause a pour effet d'interdire l'utilisation d'un modèle de développement collaboratif pour produire cette mise en œuvre libre. L'utilisation d'un tel modèle impliquerait la parution de versions incomplètes, ce qui est interdit aux personnes ayant lu les spécifications.

note: type: Content of: <div><p>
en: In the early days of the free software movement, it was impossible to avoid depending on nonfree programs. Before we had the GNU C compiler, every C program (free or not) depended on a nonfree C compiler. Before we had the GNU C library, every program depended on a nonfree C library. Before we had Linux, the first free kernel, every program depended on a nonfree kernel.  Before we had BASH, every shell script had to be interpreted by a nonfree shell. It was inevitable that our first programs would initially be hampered by these dependencies, but we accepted this because our plan included rescuing them subsequently. Our overall goal, a self-hosting GNU operating system, included free replacements for all those dependencies; if we reached the goal, all our programs would be rescued. Thus it happened: with the GNU/Linux system, we can now run these programs on free platforms.
fr: Aux premiers jours du mouvement du logiciel libre, il était impossible de ne pas dépendre de programmes non libres. Avant que nous ne disposions du compilateur C de GNU, tous les programmes C (qu'ils fussent libres ou non) dépendaient d'un compilateur C non libre. Avant que nous ne disposions de la bibliothèque C de GNU, tous les programmes dépendaient d'une bibliothèque C non libre. Avant que nous ne disposions de Linux, le premier noyau libre, tous les programmes dépendaient d'un noyau non libre. Avant que nous ne disposions de BASH, chaque script shell devait être exécuté par un interpréteur non libre. Il était inévitable que nos premiers programmes soient initialement sous le joug de ces dépendances, mais ceci était acceptable car leur sauvetage ultérieur faisait partie de notre plan. Notre objectif global, un système d'exploitation autonome, comprenait des remplacements libres à toutes ces dépendances ; si nous atteignions ce but, tous nos programmes seraient sauvés. Et c'est ce qui se produisit : avec le système GNU/Linux, nous pouvons à présent exécuter ces programmes sur des plateformes libres.

note: type: Content of: <div><p>
en: The situation is different today. We now have powerful free operating systems and many free programming tools. Whatever job you want to do, you can do it on a free platform; there is no need to accept a nonfree dependency even temporarily. The main reason people fall into the trap today is because they are not thinking about it. The easiest solution to the problem is to teach people to recognize it and not fall into it.
fr: La situation est différente aujourd'hui. Nous disposons à présent de systèmes d'exploitation puissants et de nombreux outils de programmation libres. Quelle que soit la tâche que vous ayez à exécuter, vous pouvez le faire sur une plateforme libre ; il n'est plus nécessaire, même temporairement, d'accepter des dépendances non libres. À ce jour, la raison principale pour laquelle les gens tombent dans le piège est que cela ne leur vient pas à l'esprit. La plus simple des solutions concernant le piège Java est d'apprendre aux gens à ne pas tomber dedans.

note: type: Content of: <div><p>
en: To keep your Java code safe from the Java Trap, install a free Java development environment and use it. More generally, whatever language you use, keep your eyes open, and check the free status of programs your code depends on. The easiest way to verify that a program is free is by looking for it in the <a href="https://www.fsf.org/directory">Free Software Directory</a>.  If a program is not in the directory, you can check its license(s)  against the <a href="/licenses/license-list.html">list of free software licenses</a>.
fr: Afin de protéger votre code Java du piège Java, installez un environnement de développement Java libre et utilisez-le. De façon générale, quel que soit le langage que vous utilisiez, ouvrez l'œil et assurez-vous du statut libre des programmes dont dépend le code de vos programmes. La façon la plus simple de vérifier si ce programme est libre est de s'assurer qu'il possède une entrée dans le <a href="https://www.fsf.org/directory">répertoire du logiciel libre</a>. Si un programme n'est pas dans ce répertoire, vous pouvez vérifier si la licence qui l'accompagne est dans la <a href="/licenses/license-list.html">liste des licences de logiciel libre</a>.

note: type: Content of: <div><p>
en: We are trying to rescue the trapped Java programs, so if you like the Java language, we invite you to help in developing GNU Classpath. Trying your programs with the GCJ Compiler and GNU Classpath, and reporting any problems you encounter in classes already implemented, is also useful.  However, finishing GNU Classpath will take time; if more nonfree libraries continue to be added, we may never have all the latest ones. So please don't put your free software in shackles. When you write an application program today, write it to run on free facilities from the start.
fr: Nous sommes en train d'essayer de sauver les programmes Java piégés, alors si vous aimez le langage Java, nous vous invitons à nous aider à développer GNU Classpath. Vous pouvez aussi aider en essayant vos programmes avec le compilateur GCJ et GNU Classpath. Toutefois, cela prendra du temps pour terminer GNU Classpath ; si d'autres bibliothèques non libres continuent à y être ajoutées, il se peut que nous n'ayons jamais les plus récentes. Alors s'il vous plaît, ne placez pas d'entraves sur vos logiciels libres. Faites en sorte que l'application que vous écrivez en ce moment soit conçue pour fonctionner dans un environnement libre dès le départ.

note: type: Content of: <div><h3>
en: See also:
fr: Voir également :

note: type: Content of: <div><p>
en: <a href="/philosophy/sun-in-night-time.html">The Curious Incident of Sun in the Night-Time</a>
fr: <a href="/philosophy/sun-in-night-time.html">Le curieux non-événement de Sun dans la pénombre</a>

note: type: Content of: <div><div><p>
en: Please send general FSF &amp; GNU inquiries to <a href="mailto:gnu@gnu.org">&lt;gnu@gnu.org&gt;</a>.  There are also <a href="/contact/">other ways to contact</a> the FSF.  Broken links and other corrections or suggestions can be sent to <a href="mailto:webmasters@gnu.org">&lt;webmasters@gnu.org&gt;</a>.
fr: Veuillez envoyer les requêtes concernant la FSF et GNU à &lt;<a href="mailto:gnu@gnu.org">gnu@gnu.org</a>&gt;. Il existe aussi <a href="/contact/">d'autres moyens de contacter</a> la FSF. Les liens orphelins et autres corrections ou suggestions peuvent être signalés à &lt;<a href="mailto:webmasters@gnu.org">webmasters@gnu.org</a>&gt;.

note: TRANSLATORS: Ignore the original text in this paragraph, replace it with the translation of these two: We work hard and do our best to provide accurate, good quality translations.  However, we are not exempt from imperfection. Please send your comments and general suggestions in this regard to <a hr
en: Please see the <a href="/server/standards/README.translations.html">Translations README</a> for information on coordinating and contributing translations of this article.
fr: Merci d'adresser vos commentaires sur les pages en français à &lt;<a href="mailto:trad-gnu@april.org">trad-gnu@april.org</a>&gt;, et sur les traductions en général à &lt;<a href="mailto:web-translators@gnu.org">web-translators@gnu.org</a>&gt;. Si vous souhaitez y contribuer, vous trouverez dans le <a href="/server/standards/README.translations.html">guide de traduction</a> les infos nécessaires.

note: type: Content of: <div><p>
en: Copyright &copy; 2004, 2010, 2015, 2021 Richard Stallman
fr: Copyright &copy; 2004, 2010, 2015 Richard Stallman

note: type: Content of: <div><p>
en: This page is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-nd/4.0/">Creative Commons Attribution-NoDerivatives 4.0 International License</a>.
fr: Cette page peut être utilisée suivant les conditions de la licence <a rel="license" href="http://creativecommons.org/licenses/by-nd/4.0/deed.fr">Creative Commons attribution, pas de modification, 4.0 internationale (CC BY-ND 4.0)</a>.

note: TRANSLATORS: Use space (SPC) as msgstr if you don't want credits. type: Content of: <div><div>
en: *GNUN-SLOT: TRANSLATOR'S CREDITS*
fr: Traduction : Francis Pied<br /> Révision : <a href="mailto:trad-gnu@april.org">trad-gnu@april.org</a>

note: timestamp start type: Content of: <div><p>
en: Updated:
fr: Dernière mise à jour :
