{"id":459,"date":"2018-02-05T12:06:13","date_gmt":"2018-02-05T11:06:13","guid":{"rendered":"http:\/\/wollef.org\/?p=459"},"modified":"2018-02-05T12:06:13","modified_gmt":"2018-02-05T11:06:13","slug":"histoire-de-la-programmation-34-performance-et-polyvalence","status":"publish","type":"post","link":"https:\/\/wollef.org\/blog\/histoire-de-la-programmation-34-performance-et-polyvalence\/","title":{"rendered":"Histoire de la programmation 3\/4 : Performance et polyvalence"},"content":{"rendered":"<p>Dans les ann\u00e9es 70<b>\u00a0<\/b>avec la troisi\u00e8me g\u00e9n\u00e9ration de grands ordinateurs, il fallait inventer un langage de programmation adapt\u00e9 aux\u00a0nouveaux volumes de donn\u00e9s, et aux\u00a0nouvelles performances des machines.<\/p>\n<p>Diff\u00e9rents langages de programmation ont \u00e9t\u00e9 con\u00e7us, d&#8217;ont un qui a connu un grand succ\u00e8s jusqu\u2019\u00e0 aujourd&#8217;hui, sous sa forme originale\u00a0le langage C, ou sous ses formes am\u00e9lior\u00e9es, dont\u00a0C++, et dans une certaine mani\u00e8re Java.\u00a0<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<h1>Le langage C<span data-ccp-props=\"{&quot;335559738&quot;:120}\">\u00a0<\/span><\/h1>\n<p>Le langage C est apparu au\u00a0cours de l&#8217;ann\u00e9e 1972 dans les laboratoires de l&#8217;entreprise\u00a0<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p>Bell .\u00a0Il \u00e9tait d\u00e9velopp\u00e9 par\u00a0<a href=\"https:\/\/fr.vikidia.org\/w\/index.php?title=Dennis_Ritchie&amp;action=edit&amp;redlink=1\">Dennis Ritchie<\/a>\u00a0et\u00a0<a href=\"https:\/\/fr.vikidia.org\/w\/index.php?title=Ken_Thompson&amp;action=edit&amp;redlink=1\">Ken Thompson<\/a>\u00a0pour permettre de cr\u00e9er et de maintenir le\u00a0<a href=\"https:\/\/fr.vikidia.org\/wiki\/Syst%C3%A8me_d%27exploitation\">syst\u00e8me d&#8217;exploitation<\/a>\u00a0<a href=\"https:\/\/fr.vikidia.org\/w\/index.php?title=UNIX&amp;action=edit&amp;redlink=1\">UNIX<\/a>\u00a0car, \u00e0 l&#8217;\u00e9poque, aucun autre langage que l&#8217;<a href=\"https:\/\/fr.vikidia.org\/wiki\/Assembleur\">assembleur<\/a>\u00a0(qui n&#8217;est pas pratique du tout) n&#8217;\u00e9tait capable de cela.<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p>C&#8217;est aujourd&#8217;hui l&#8217;un des langages les plus utilis\u00e9s par les programmeurs : on le retrouve en quantit\u00e9 dans\u00a0<a href=\"https:\/\/fr.vikidia.org\/wiki\/Linux\">Linux<\/a>,\u00a0<a href=\"https:\/\/fr.vikidia.org\/wiki\/Windows\">Windows<\/a>\u00a0et de tr\u00e8s nombreux autres logiciels.<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p>Deux caract\u00e9ristiques int\u00e9ressantes du C\u202f: la variable i (celle qui contient le nombre) doit \u00eatre d\u00e9clar\u00e9e \u00e0 l&#8217;avance\u202f; enfin, un bloc d&#8217;instructions (ici une boucle for) est d\u00e9limit\u00e9 par des crochets. Le point-virgule, lui, sert \u00e0 terminer une instruction.<br \/>\nDans la boucle, printf sert \u00e0 ins\u00e9rer du texte, ici le traditionnel \u00ab Hello, world ! \u00bb\u202f; y\u00a0a \u00e9t\u00e9 ajout\u00e9 un \\n pour faire un retour \u00e0 la ligne.<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p>Voici un exemple de C:<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<pre>#include\u00a0&lt;stdio.h&gt;\u00a0<span data-ccp-props=\"{}\">\u00a0\n<\/span>\n<b>main<\/b>()<span data-ccp-props=\"{}\">\u00a0<\/span>\n{\u00a0<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0<b>int<\/b><b>\u00a0<\/b>n,\u00a0c;\u00a0<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0<b>printf<\/b>(\"Enter a\u00a0number<b>\\n<\/b>\");<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0<b>scanf<\/b>(\"%d\", &amp;n);\u00a0<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0<b>if<\/b><b>\u00a0<\/b>(\u00a0n\u00a0==\u00a02\u00a0)<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0<b>printf<\/b>(\"Prime\u00a0number.<b>\\n<\/b>\");<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0<b>else<\/b><b>\u00a0\u00a0\u00a0<\/b><span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0 {\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0<b>for<\/b><b>\u00a0<\/b>(\u00a0c\u00a0=\u00a02\u00a0;\u00a0c\u00a0&lt;=\u00a0n\u00a0-\u00a01\u00a0;\u00a0c++\u00a0)<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0 {\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<b>if<\/b><b>\u00a0<\/b>(\u00a0n\u00a0%\u00a0c\u00a0==\u00a00\u00a0)<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<b>break<\/b>;<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0 }<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0<b>if<\/b><b>\u00a0<\/b>(\u00a0c\u00a0!=\u00a0n\u00a0)\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<b>printf<\/b>(\"Not prime.<b>\\n<\/b>\");\u00a0\u00a0<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0<b>else<\/b><span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<b>printf<\/b>(\"Prime\u00a0number.<b>\\n<\/b>\");<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0 }<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0<b>return<\/b><b>\u00a0<\/b>0;<span data-ccp-props=\"{}\">\u00a0<\/span>\n}<span data-ccp-props=\"{}\">\u00a0<\/span><\/pre>\n<p><span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p>Ici les variables\u00a0n,\u00a0c\u00a0sont avec un type\u202f:\u00a0ce sont des nombres\u00a0entiers\u00a0(<b>int<\/b>).<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p><em>Retour \u00e0 l&#8217;histoire familiale : ma m\u00e8re a commenc\u00e9 \u00e0 travailler \u00e0 la banque en programmant des logiciels en C.\u00a0\u00a0<\/em><\/p>\n<h1>C++:<span data-ccp-props=\"{&quot;335559738&quot;:120}\">\u00a0<\/span><\/h1>\n<p>Le langage\u00a0<a href=\"https:\/\/fr.vikidia.org\/wiki\/C%2B%2B\">C++<\/a>\u00a0est une version modifi\u00e9e du langage\u00a0<a href=\"https:\/\/fr.vikidia.org\/wiki\/C\">C<\/a>. Il a \u00e9t\u00e9 invent\u00e9 par Bjarne\u00a0Stroustrup\u00a0entre 1979 et 1983. Comme les inventeurs du C, Bjarne\u00a0Stroustrup\u00a0travaillait chez\u00a0<a href=\"https:\/\/fr.vikidia.org\/w\/index.php?title=Bell_(entreprise)&amp;action=edit&amp;redlink=1\">Bell<\/a>.<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p>Un code en langage\u00a0<a href=\"https:\/\/fr.vikidia.org\/wiki\/C\">C<\/a>\u00a0est tr\u00e8s souvent valide en\u00a0<a href=\"https:\/\/fr.vikidia.org\/wiki\/C%2B%2B\">C++<\/a>. On peut par contre utiliser des constructions en\u00a0<a href=\"https:\/\/fr.vikidia.org\/wiki\/C%2B%2B\">C++<\/a>\u00a0qui n&#8217;existent pas en\u00a0<a href=\"https:\/\/fr.vikidia.org\/wiki\/C\">C<\/a>.<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p>Le\u00a0<a href=\"https:\/\/fr.vikidia.org\/wiki\/C%2B%2B\">C++<\/a>\u00a0est utilis\u00e9 par beaucoup de programmeurs. Cependant, il est tr\u00e8s compliqu\u00e9 d&#8217;apprendre tout ce qu&#8217;il permet de faire de plus que le\u00a0<a href=\"https:\/\/fr.vikidia.org\/wiki\/C\">C<\/a>, m\u00eame avec plusieurs ann\u00e9es d&#8217;<a href=\"https:\/\/fr.vikidia.org\/wiki\/Exp%C3%A9rience\">exp\u00e9rience<\/a>.<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<pre>#include\u00a0&lt;iostream&gt;<span data-ccp-props=\"{}\">\u00a0<\/span>\nusing\u00a0namespace\u00a0std;<span data-ccp-props=\"{}\">\u00a0<\/span>\n<b>class<\/b><b>\u00a0<\/b><b>Rectangle<\/b><b>\u00a0<\/b>{<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0<b>int<\/b><b>\u00a0<\/b>width;\u00a0<span data-ccp-props=\"{}\">\u00a0<\/span>\n<b>\u00a0\u00a0\u00a0\u00a0\u00a0<\/b><b>int<\/b><b>\u00a0<\/b>height;<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0<b>public<\/b>:<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0<b>void<\/b><b>\u00a0<\/b><b>set_values<\/b>\u00a0(<b>int<\/b><b>\u00a0<\/b>x,\u00a0<b>int<\/b><b>\u00a0<\/b>y) {<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0width\u00a0=\u00a0x;<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0height\u00a0=\u00a0y;\u00a0\u00a0\u00a0\u00a0\n     }<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0<b>int<\/b><b>\u00a0<\/b><b>area<\/b>() {<span data-ccp-props=\"{}\">\u00a0<\/span>\n<b>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/b><b>return<\/b><b>\u00a0<\/b>width*height;<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0 }<span data-ccp-props=\"{}\">\u00a0<\/span>\n};<span data-ccp-props=\"{}\">\u00a0<\/span>\n<b>int<\/b><b>\u00a0<\/b><b>main\u00a0<\/b>() {<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0<b>Rectangle\u00a0<\/b>rectOne;<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0<b>Rectangle\u00a0<\/b>rectTwo;\n\u00a0\u00a0\u00a0rectOne.<b>set_values<\/b>\u00a0(3,4);<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0cout\u00a0&lt;&lt;\u00a0\"area rectangle one: \"\u00a0&lt;&lt;\u00a0rectOne.<b>area<\/b>();<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0rectTwo.<b>set_values<\/b>\u00a0(5,7);<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0cout\u00a0&lt;&lt;\u00a0\"area rectangle\u00a0two: \"\u00a0&lt;&lt;\u00a0rectTwo.<b>area<\/b>();<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0<b>return<\/b><b>\u00a0<\/b>0;<span data-ccp-props=\"{}\">\u00a0<\/span>\n}<span data-ccp-props=\"{}\">\u00a0<\/span><\/pre>\n<p>Ce programme calcule l&#8217;aire d&#8217;un rectangle en multipliant les deux c\u00f4t\u00e9s.<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p>On peut voir un nouveau type d&#8217;information d\u00e9fini par ce programme : la forme rectangle.\u00a0 Puis le programme principal cr\u00e9e deux rectangles et indique leurs\u00a0dimensions\u00a0(le premier rectangle mesure 3-4 cm et le second 5-7cm). Puis il leur demande \u00e0 chacun leur surface.\u00a0<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p>\u00c7a permet de concevoir facilement des programmes complexes : dans des jeux compliqu\u00e9s (comme GTA, Minecraft), il y aurait beaucoup de types d&#8217;informations (cubes, rectangle, personnage, etc.), et des millions de cubes, de personnages et de rectangles diff\u00e9rents\u00a0 manipul\u00e9s dans le jeu.<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p><em>Retour \u00e0 l&#8217;histoire familiale : mon p\u00e8re a commenc\u00e9 sa carri\u00e8re en programmant en C++.\u00a0<\/em><\/p>\n<h1>Java:<span data-ccp-props=\"{&quot;335559738&quot;:120}\">\u00a0<\/span><\/h1>\n<p>Le langage Java est apparu en 1995. Il a \u00e9t\u00e9 invent\u00e9 par James Gosling et Patrick\u00a0Naughton, qui travaillaient alors pour l&#8217;entreprise\u00a0<a href=\"https:\/\/fr.vikidia.org\/w\/index.php?title=Sun_Microsystems&amp;action=edit&amp;redlink=1\">Sun Microsystems<\/a>.<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p>\u00c0 premi\u00e8re vue, il ressemble beaucoup au langage C++ (et donc au langage C), ce qui est normal car il s&#8217;en inspire. En fait, il y a \u00e9norm\u00e9ment de diff\u00e9rences entre les deux.<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p>Un des objectifs de Java \u00e9tait de permettre de cr\u00e9er des programmes qui fonctionnent sur tous les ordinateurs. C&#8217;est quelque chose qui n&#8217;est pas facile \u00e0 faire avec du C++, par exemple. Pour cela, les programmes \u00e9crits en Java ne sont pas traduits directement en langage machine. Un logiciel, la\u00a0<a href=\"https:\/\/fr.vikidia.org\/w\/index.php?title=Machine_virtuelle&amp;action=edit&amp;redlink=1\">machine virtuelle<\/a>, se charge d&#8217;ex\u00e9cuter le programme \u00e0 la place de l&#8217;ordinateur. Comme cela ralentit l&#8217;ex\u00e9cution, Java ne peut pas \u00eatre utilis\u00e9 lorsque la vitesse est tr\u00e8s importante.<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p>Le Java est utilis\u00e9 par de tr\u00e8s nombreux programmeurs et dans beaucoup d&#8217;entreprises.<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p>Un jeu tr\u00e8s connu cod\u00e9 en Java est\u00a0<a href=\"https:\/\/fr.vikidia.org\/wiki\/Minecraft\">Minecraft<\/a>\u00a0!<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p><i>Attention, Java et JavaScript<\/i><i>, dont je parlerai dans la partie suivante,<\/i><i>\u00a0sont deux langages diff\u00e9rents, qui ne se ressemblent que par leur nom !<\/i><span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p>Voici un exemple de code Java\u202f:<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<pre><b>public<\/b><b>\u00a0class\u00a0<\/b>PrimeEx\u00a0{<span data-ccp-props=\"{}\">\u00a0<\/span>\n<b>\u00a0\u00a0\u00a0\u00a0<\/b><b>public<\/b><b>\u00a0<\/b><b>static<\/b>\u00a0void\u00a0<b>main<\/b>(String[]\u00a0args) {<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0System.out.<b>println<\/b>(\"54161329 : \"\u00a0+\u00a0<b>isPrime<\/b>(54161329) +\u00a0\" (expect\u00a0false)\");<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0System.out.<b>println<\/b>(\"1882341361 : \"\u00a0+\u00a0<b>isPrime<\/b>(1882341361) +\u00a0\" (expect\u00a0true)\");<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0System.out.<b>println<\/b>(\"2 : \"\u00a0+\u00a0<b>isPrime<\/b>(2) +\u00a0\" (expect\u00a0true)\");<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0 }<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0 \/\/\u00a0pre:\u00a0num\u00a0&gt;= 2<span data-ccp-props=\"{}\">\u00a0<\/span>\n<b>\u00a0\u00a0\u00a0\u00a0<\/b><b>public<\/b><b>\u00a0<\/b><b>static<\/b>\u00a0<b>boolean<\/b><b>\u00a0<\/b><b>isPrime<\/b>(<b>int<\/b><b>\u00a0<\/b>num) {<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<b>assert<\/b><b>\u00a0<\/b>num\u00a0&gt;=\u00a02\u00a0:\u00a0\"failed\u00a0precondition.\u00a0num\u00a0must\u00a0be\u00a0&gt;= 2.\u00a0num: \"\u00a0+\u00a0num;<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<b>final<\/b><b>\u00a0<\/b><b>double\u00a0<\/b>LIMIT\u00a0=\u00a0Math.<b>sqrt<\/b>(num);<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<b>boolean<\/b><b>\u00a0<\/b>isNumPrime\u00a0= (num\u00a0==\u00a02) ?\u00a0true\u00a0:\u00a0num\u00a0%\u00a02\u00a0!=\u00a00;<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<b>int<\/b><b>\u00a0<\/b>div\u00a0=\u00a03;<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<b>while<\/b>(div\u00a0&lt;=\u00a0LIMIT\u00a0&amp;&amp;\u00a0isNumPrime\u00a0) {<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0isNumPrime\u00a0=\u00a0num\u00a0%\u00a0div\u00a0!=\u00a00;<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0div\u00a0+=\u00a02;<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 }<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<b>return<\/b><b>\u00a0<\/b>isNumPrime\u00a0;<span data-ccp-props=\"{}\">\u00a0<\/span>\n\u00a0\u00a0\u00a0 }<span data-ccp-props=\"{}\">\u00a0<\/span>\n}<span data-ccp-props=\"{}\">\u00a0<\/span><\/pre>\n<p>On voit bien avec cet exemple que \u00e7a ressemble beaucoup \u00e0 C++.<span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p><em>Mes deux parents ont particip\u00e9 \u00e0 des projets Java et je suis d\u00e9j\u00e0\u00a0all\u00e9 deux fois \u00e0 la f\u00eate du Java User Group de Luxembourg avec mon p\u00e8re. On y a\u00a0pr\u00e9sent\u00e9\u00a0en 2015 la programmation\u00a0de, et dans, Minecraft en Java comme j&#8217;en ai parl\u00e9 dans mon Blog\u00a0(<a href=\"http:\/\/wollef.org\/fr\/minecraft_luxembourg_yajug\/\">http:\/\/wollef.org\/fr\/minecraft_luxembourg_yajug\/<\/a>).\u00a0<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dans les ann\u00e9es 70\u00a0avec la troisi\u00e8me g\u00e9n\u00e9ration de grands ordinateurs, il fallait inventer un langage de programmation adapt\u00e9 aux\u00a0nouveaux volumes de donn\u00e9s, et aux\u00a0nouvelles performances des machines. Diff\u00e9rents langages de programmation ont \u00e9t\u00e9 con\u00e7us, d&#8217;ont un qui a connu un grand succ\u00e8s jusqu\u2019\u00e0 aujourd&#8217;hui, sous sa forme originale\u00a0le langage C, ou sous ses formes am\u00e9lior\u00e9es, <a class=\"read-more\" href=\"https:\/\/wollef.org\/blog\/histoire-de-la-programmation-34-performance-et-polyvalence\/\">Continue Reading<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[28,37,39,4,45,14],"tags":[],"class_list":["post-459","post","type-post","status-publish","format-standard","hentry","category-histoire-programmation-java","category-c","category-cpp","category-histoire","category-java","category-programmation"],"_links":{"self":[{"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/posts\/459","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/comments?post=459"}],"version-history":[{"count":0,"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/posts\/459\/revisions"}],"wp:attachment":[{"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/media?parent=459"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/categories?post=459"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wollef.org\/blog\/wp-json\/wp\/v2\/tags?post=459"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}