Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
programmation [Le 31/12/2017, 19:20]
spnux peu être => peut être + remplacé les icônes installation manuelle
programmation [Le 20/05/2023, 22:28] (Version actuelle)
90.91.63.138 [liens à corriger] Ajout d'un accent manquant.
Ligne 2: Ligne 2:
 ---- ----
 ====== Programmation ====== ====== Programmation ======
 +<​note>​Cette page n'a pas la vocation de recenser la totalité des langages ni des outils disponibles. Il y en a tellement, et chaque programmeur a sa façon de faire. Une partie [[#​liens_externes|"​liens externes"​]] vous donnera quelques sites de qualité sur la programmation.</​note>​
  
-<​note>​Cette page n'a pas la vocation de recenser la totalité des langages ni des outils disponibles. Il y en a tellement, et chaque programmeur a sa façon de faire. Une partie "liens extérieurs"​ vous donnera quelques sites de qualité sur la programmation. </​note>​ 
 ===== Outils généraux ===== ===== Outils généraux =====
 +==== Documentation hors ligne ====
 +  * [[:​Devhelp]] : Consultation hors ligne de documentation principalement sur le développement GTK+ et GNOME.
 +  * **[[apt>​zeal]]** : Consultation hors ligne de documentation sur plus de 190 langages de programmation. [[https://​zealdocs.org/​|Site de zeal]]\\
 +
 ==== Outils de gestion de version (Versionning) ==== ==== Outils de gestion de version (Versionning) ====
 Les outils de gestion de version permettent la synchronisation facile des équipes de développement,​ ils sont même quasiment indispensables quand il s'agit de travailler en équipes dispersées à travers le monde. Les outils de gestion de version permettent la synchronisation facile des équipes de développement,​ ils sont même quasiment indispensables quand il s'agit de travailler en équipes dispersées à travers le monde.
Ligne 15: Ligne 19:
  
 **Système distribué** : Basé sur le modèle d'​égal à égal, chaque machine est responsable de sa partie. Tant que l'on travaille sur sa partie, il n'est pas nécessaire d'​avoir une connexion. Par contre pour se synchroniser avec une branche extérieure,​ il est nécessaire d'​avoir un accès à cette branche. **Système distribué** : Basé sur le modèle d'​égal à égal, chaque machine est responsable de sa partie. Tant que l'on travaille sur sa partie, il n'est pas nécessaire d'​avoir une connexion. Par contre pour se synchroniser avec une branche extérieure,​ il est nécessaire d'​avoir un accès à cette branche.
-  * [[:git]] - Gestionnaire de versions créé par Linus Torsvald ​et très répandu.+  * [[:git]] - Gestionnaire de versions créé par Linus Torvalds ​et très répandu.
   * [[:​bzr|Bazaar]] - Gestionnaire de versions distribuées,​ développé par [[:​Canonical]]   * [[:​bzr|Bazaar]] - Gestionnaire de versions distribuées,​ développé par [[:​Canonical]]
   * [[:​hg_mercurial]] - Gestionnaire de versions distribuées   * [[:​hg_mercurial]] - Gestionnaire de versions distribuées
   ​   ​
 ==== Outils de comparaison de fichiers ==== ==== Outils de comparaison de fichiers ====
 +
   * [[:diff]] - outil de comparaison de fichiers et de création de patchs.   * [[:diff]] - outil de comparaison de fichiers et de création de patchs.
   * [[:sdiff]] - outil de comparaison de fichiers côte à côte.   * [[:sdiff]] - outil de comparaison de fichiers côte à côte.
   * [[:meld]] - outil graphique qui compare vos fichiers et dossiers.   * [[:meld]] - outil graphique qui compare vos fichiers et dossiers.
-  * [[:​diffuse]] - outil graphique de comparaison de fichiers. +  * [[http://​diffuse.sourceforge.net/​|diffuse]] - outil graphique de comparaison de fichiers. ​**(Paquet non disponible sur [[focal|Ubuntu 20.04]]**((https://​packages.ubuntu.com/​search?​suite=default&​section=all&​arch=any&​searchon=names&​keywords=diffuse)).) 
-  * [[:tkdiff]] - outil graphique (interface X11) de comparaison de fichiers. +  * [[https://​sourceforge.net/​projects/​tkdiff/​|tkdiff]] - outil graphique (interface X11) de comparaison de fichiers. 
-  * [[:xxdiff]] - outil graphique (interface X11) de comparaison de fichiers et de dossiers. +  * [[http://​furius.ca/​xxdiff/​|xxdiff]] - outil graphique (interface X11) de comparaison de fichiers et de dossiers. ​**(Paquet non disponible sur [[focal|Ubuntu 20.04]]**((https://​packages.ubuntu.com/​search?​suite=default&​section=all&​arch=any&​searchon=names&​keywords=xxdiff)).) 
-  * [[:​kompare]] - outil graphique de comparaison de fichiers et dossiers.+  * [[https://​apps.kde.org/​kompare/​|kompare]] - outil graphique de comparaison de fichiers et dossiers.
   * [[:​vimdiff]] - outil de comparaison de fichiers.   * [[:​vimdiff]] - outil de comparaison de fichiers.
   * [[:​gvimdiff]] - outil graphique de comparaison de fichiers.   * [[:​gvimdiff]] - outil graphique de comparaison de fichiers.
-  * [[:kdiff3]] - outil graphique de comparaison et de merge de fichiers et dossiers. +  * [[https://​apps.kde.org/​kdiff3/​|kdiff3]] - outil graphique de comparaison et de merge (fusionnement) ​de fichiers et dossiers. 
-  * [[diffmerge]] - outil graphique de comparaison et de merge.+  * [[https://​sourcegear.com/​diffmerge/#​|diffmerge]] - outil graphique de comparaison et de merge (fusionnement).
  
 ==== UML ==== ==== UML ====
 +//Voir la page [[:uml|page sur UML]]//
  
-Reportez-vous à la [[:uml|page sur UML]] 
 ==== XML ==== ==== XML ====
-  * [[:Xslt]] - Les processeurs XSLT.+//Voir la page [[:Xslt]] - Les processeurs XSLT.//
  
-===== Environnement de Développement Intégré ===== +===== IDE (Environnement de Développement Intégré===== 
-Tout d'abord, **qu'​est ce qu'un EDI ?** Un EDI ([[wpfr>​Environnement_de_développement_intégré]]) est un logiciel 3 en 1 permettant au programmeur d'​écrire,​ de compiler et de déboguer son programme avec un seul logiciel.+//Les IDE sont les principaux outils des développeurs. Ils bénéficient ​d'une [[:IDE|page de documentation dédiée]].//
  
-Web HTML, CSS, Javascript+==== Éditeur de texte==== 
 +Une alternative à l'​utilisation d'un [[:IDE]] est l'​emploi d'un éditeur de texte et d'​outils complémentaires individuels.
  
-{{icons:​icon-ubuntu.png?​nolink20}} : dépôt officiel : installation simple. +//​Voir ​la page [[:editeur_de_texte#editeurs_orientes_developpement|éditeurs orientés ​pour la programmation]].//
- +
-{{wiki:​modeles:​laptop_work.png?​nolink20}} : installation manuelle : peu être compliquée pour un débutant. +
- +
-{{icons:​process-stop.png?​nolink20}} : non disponible. +
- +
-==== EDI généralistes ==== +
-^ EDI ^ Langages ^ Dépôt ^ PPA ^ Téléchargement \\ Compilation ^ Notes ^ +
-| [[:Anjuta]] | C, C++, Java, Python | {{icons:​icon-ubuntu.png?​nolink20}} | {{wiki:​modeles:​laptop_work.png?​nolink20}} | {{icons:​process-stop.png?​nolink20}} | S’intègre bien dans les environnements GTK classiques (Mate, Xfce, etc.) | +
-| [[:​aptana_studio]] | Web, Python, PHP, Ruby | {{icons:​process-stop.png?​nolink20}} | {{icons:​process-stop.png?​nolink20}} | {{wiki:​modeles:​laptop_work.png?​nolink20}} | Existe aussi en tant que plugins pour [[:​Eclipse]] | +
-| [[:​gnome-builder|Builder]] | C, C++, Python, Vala, Web, etc. | {{icons:​icon-ubuntu.png?​nolink20}} | {{icons:​process-stop.png?​nolink20}} | {{wiki:​modeles:​laptop_work.png?​nolink20}} | IDE simple, moderne et moderne du projet [[:Gnome]], avec gestion avancée de la coloration, de l'​autocomplétion,​ et des formats d'​empaquetage modernes comme [[:Flatpak]] | +
-| [[:​Code_Blocks]] | C, C++, Fortran, Python | {{icons:​icon-ubuntu.png?​nolink20}} | {{wiki:​modeles:​laptop_work.png?​nolink20}} | {{wiki:​modeles:​laptop_work.png?​nolink20}} | IDE orienté C, C++ et bibliothèques\\ Extensible par plugins | +
-| [[:​CodeLite]] | C, C++, NodeJS, PHP | {{icons:​process-stop.png?​nolink20}} | {{wiki:​modeles:​laptop_work.png?​nolink20}} | {{wiki:​modeles:​laptop_work.png?​nolink20}} | IDE assez proche et aussi complet que Code Blocks ,comptable avec la plupart des compilateurs et extensible avec plugins| +
-| [[:​Eclipse]] | Java, C, C++, Web, PHP, Python, Ruby | {{icons:​icon-ubuntu.png?​nolink20}} | {{icons:​process-stop.png?​nolink20}} | {{wiki:​modeles:​laptop_work.png?​nolink20}} | Version obsolète dans les dépôts \\ Par défaut en java, demande l'​installation de plugins pour les autres langages | +
-| [[:Geany]] | Web, C, C++, JAVA, PHP, Python, Ruby... | {{icons:​icon-ubuntu.png?​nolink20}} | {{icons:​process-stop.png?​nolink20}} | {{wiki:​modeles:​laptop_work.png?​nolink20}} | IDE très léger et polyvalent. Il est aussi considéré comme un éditeur de texte | +
-| [[:jEdit]] | Web, C, C++, JAVA, PHP, Python... | {{icons:​icon-ubuntu.png?​nolink20}} | {{icons:​process-stop.png?​nolink20}} | {{wiki:​modeles:​laptop_work.png?​nolink20}} | éditeur de texte écrit en Java. Des dizaines de plugins permettent d'​ajouter des fonctionnalités très variées, de la gestion de projet à l'​exécution de commandes.|  +
-| [[:​Kdevelop]] | C, C++, Java, Python, Ruby, Perl, Fortran, ADA, PHP | {{icons:​icon-ubuntu.png?​nolink20}} | {{wiki:​modeles:​laptop_work.png?​nolink20}} | {{wiki:​modeles:​laptop_work.png?​nolink20}} | IDE très complet avec débogueur intégré. | +
-| [[:​NetBeans]] | Web, C, C++, JAVA, PHP, Ruby | {{icons:​icon-ubuntu.png?​nolink20}} | {{icons:​process-stop.png?​nolink20}} | {{wiki:​modeles:​laptop_work.png?​nolink20}} | IDE libre, complet et multiplate-formes codé en Java | +
-| [[:​MonoDevelop]] | C#, .NET, C++, Java {{icons:​icon-ubuntu.png?​nolink20}} | {{wiki:​modeles:​laptop_work.png?​nolink20}} | {{icons:​process-stop.png?​nolink20}} | S'​utilise comme Visual Studio.| +
-| [[wpfr>​Visual Studio Code]] | C#, C/C++, Python, Go, PHP,…| {{icons:​process-stop.png?​nolink20}} | {{icons:​process-stop.png?​nolink20}} | {{wiki:​modeles:​laptop_work.png?​nolink20}} | Un logiciel Microsoft Open Source qui existe ​pour Linux… 8-o, ça existe ! basé sur le [[wpfr>​Electron_(framework)|framework Electron]] | +
-| [[:​eiffelstudio]] | | | | | IDE complet et libre pour ISE Eiffel. | +
- +
- +
-==== Éditeur de texte==== +
-Une alternative à l'​utilisation d'un EDI est le développement à l'aide d'un éditeur de texte suivi d'une compilation manuelle. +
-  * [[:Emacs]] - Éditeur de texte très puissant mais long à maîtriser. +
-  * [[:Vim]] - Éditeur de texte très puissant mais long à maîtriser. +
-  * [[:SciTE]] - Éditeur de texte léger et performant. +
-  * [[:Nano]] - Un éditeur en console facile à maîtriser. +
-  * [[:gEdit]] - Éditeur de texte léger, assez performant et plutôt configurable. +
-  * [[:Kate]] - Éditeur de texte à tout faire, inclus dans KDE, gérant ​la coloration syntaxique pour l'​édition de la plupart des codes sources ; +
-  * [[https://​atom.io/​|Atom]] - Éditeur de texte léger avec de nombreux pluginsAussi disponible via un [[:PPA]] fourni par [[https://launchpad.net/​~webupd8team/​+archive/​ubuntu/​atom|WebUpd8 team]]. +
-  * [[http://​brackets.io/​|Brackets]] - Éditeur de texte léger. Aussi disponible via un [[:PPA]] fourni par [[https://​launchpad.net/​~webupd8team/​+archive/​ubuntu/​brackets|WebUpd8 team]]. +
-  * [[:​sublime-text|Sublime Text]] - éditeur de texte à mi-chemin de l'IDE avec une auto-completion des fonctions de base de différents langages supportés+
  
 ===== Système ===== ===== Système =====
- 
    * [[:​Terminal]]    * [[:​Terminal]]
    * [[:​console]]    * [[:​console]]
    * [[:liste des applications console]]    * [[:liste des applications console]]
    * [[:​tutoriel:​script_shell|Script shell]] - Introduction au script shell    * [[:​tutoriel:​script_shell|Script shell]] - Introduction au script shell
-Livre : [[http://​www.framabook.org/​Pour_aller_plus_loin_avec_la_ligne_de_commande.html|Unix. Pour aller plus loin avec la ligne de commande]] 
  
 ===== Langages généralistes ==== ===== Langages généralistes ====
 ====Python==== ====Python====
- 
-   * [[:Acire]] : un outil graphique d'aide à l'​apprentissage de la programmation en Python. 
    * [[:kiki]] : un outil pour tester et apprendre les expressions rationnelles de Python.    * [[:kiki]] : un outil pour tester et apprendre les expressions rationnelles de Python.
    * [[:idle]] : un éditeur facile à prendre en main.    * [[:idle]] : un éditeur facile à prendre en main.
-   * [[:​RUR-PLE]] : un environnement d'​apprentissage de la programmation Python de manière amusante, en programmant un robot. +   * [[https://​sourceforge.net/​projects/​rur-ple/​|RUR-PLE]] : un environnement d'​apprentissage de la programmation Python de manière amusante, en programmant un robot. 
-   * [[http://​inforef.be/​swi/​python.htm|Livres]] : Livres "​Apprendre à programmer avec Python"​ de Gérard Swinnen sous licence Creative Commons+   * [[https://​inforef.be/​swi/​python.htm|Livres]] : Livres "​Apprendre à programmer avec Python"​ de Gérard Swinnen sous licence Creative Commons
    * [[:​IPython]] - Shell pour Python amélioré.    * [[:​IPython]] - Shell pour Python amélioré.
-   * [[:Eric]] - [[http://​eric-ide.python-projects.org/​|Eric ​Python ​IDE]] - Comment installer l'​éditeur Python Eric.+   * [[:Eric]] - Environnement de développement intégré adapté à la programmation ​Python ​et Ruby.
    * [[:SPE]] - Comment installer l'​[[http://​pythonide.stani.be/​|éditeur Python SPE]].    * [[:SPE]] - Comment installer l'​[[http://​pythonide.stani.be/​|éditeur Python SPE]].
    * [[:​wingware|WingIDE]] - Environnement de développement professionnel dédié au développement de projets en Python.    * [[:​wingware|WingIDE]] - Environnement de développement professionnel dédié au développement de projets en Python.
-   ​*[[:​gEcrit]] [[http://​gecrit.sourceforge.net/​]] - Nouvel IDE pour Python.+   ​*[[:​gEcrit]] [[http://​gecrit.sourceforge.net/​]] - Nouvel IDE pour Python. ​(n'est plus en développement)
    ​*[[:​spyder|Spyder]] - **__S__cientific __PY__thon __D__evelopment __E__nvi__R__onment**    ​*[[:​spyder|Spyder]] - **__S__cientific __PY__thon __D__evelopment __E__nvi__R__onment**
-   *[[https://​doc.ubuntu-fr.org/​utilisateurs/​blackeco/​brouillon-pycharm|PyCharm]] est un [[wpfr>​Environnement de développement intégré]] (IDE) [[:​python|Python]] développé et édité par JetBrains basé sur la plateforme [[:​intellij|IntelliJ]].+   ​*[[:​PyCharm]] est un [[wpfr>​Environnement de développement intégré]] (IDE) [[:​python|Python]] développé et édité par JetBrains basé sur la plateforme [[:​intellij|IntelliJ]]. 
 + 
 +//​[[:​python|Voir la page dédiée à python]]//​ 
 ====Java==== ====Java====
    * [[:Java]] - Comment installer le support Sun Java //(JRE)// (installation,​ exécution des « .jar » et plugin de Mozilla Firefox) ?    * [[:Java]] - Comment installer le support Sun Java //(JRE)// (installation,​ exécution des « .jar » et plugin de Mozilla Firefox) ?
    * [[:​jbuilder2005|JBuilder 2005]] - Comment installer l'​environnement de développement intégré Borland JBuilder 2005 ?    * [[:​jbuilder2005|JBuilder 2005]] - Comment installer l'​environnement de développement intégré Borland JBuilder 2005 ?
-   * [[:​iReport]]  +   * Tutoriel sur les bases de Java : [[http://​openclassrooms.com/​courses/​apprenez-a-programmer-en-java| Apprenez à programmer en Java]] sur OpenClassrooms. 
-   * Tutoriel sur les bases de Java : [[http://​openclassrooms.com/​courses/​apprenez-a-programmer-en-java| Apprenez à programmer en Java]] sur l'ex site du zéroOpenClassrooms.+   * [[:​eclipse]] - Comment installer ​l'IDE Eclipse pour java 
 +   * [[:​intellij_idea|IntelliJ IDEA]] - énormément completgestion [[:​git|Git]] intégré, et terminal inclus 
 + 
 +//​[[:​java|Voir la page dédiée à java]]//
  
 ==== Ruby ==== ==== Ruby ====
-  * [[:http://arcadia.rubyforge.org/​|Arcadia IDE]]  - IDE en TCL/TK et dedié à ruby, possède un debogueur. Accessible depuis gem ou sur rubyforge+  * [[https://arcadia-ide.org/​|Arcadia IDE]]  - IDE en TCL/TK et dedié à ruby, possède un debogueur. Accessible depuis gem ou sur rubyforge
   * [[:​rubyonrails|Ruby on Rails]] : Rails est un framework open-source d'une grande qualité destiné aux développements d'​applications et services web en Ruby.    * [[:​rubyonrails|Ruby on Rails]] : Rails est un framework open-source d'une grande qualité destiné aux développements d'​applications et services web en Ruby. 
  
-==== C++ ==== +//[[:ruby|Voir la page dédiée au Ruby]]//
-Cours+
  
-[[https://​www.youtube.com/​channel/​UCS2e0hEJMhwd6bNscS60xTg/​videos|Formation en vidéo sur le langage C]] (par [[:​utilisateurs/​naoki|Naoki]])+==== C et C++ ==== 
 +Voir la page [[gcc|GCC, le jeu de compilateurs GNU]]
  
-[[http://​fr.openclassrooms.com/​informatique/​cours/​apprenez-a-programmer-en-c|Apprenez à programmer en C]] [[http://​fr.openclassrooms.com/​informatique/​cours/​programmez-avec-le-langage-c|Le C++ facile]] (OpenClassrooms, ex Site du Zéro)+Cours **(fr)**: 
 +  * [[https://​www.youtube.com/​channel/​UCS2e0hEJMhwd6bNscS60xTg/​videos|Formation en vidéo sur le langage C]] (par [[:​utilisateurs/​naoki|Naoki]]) 
 +  * [[http://​fr.openclassrooms.com/​informatique/​cours/​apprenez-a-programmer-en-c|Apprenez à programmer en C]] 
 +  * [[http://​fr.openclassrooms.com/​informatique/​cours/​programmez-avec-le-langage-c|Le C++ facile]] (sur OpenClassrooms)
  
 Nous vous invitons à consulter le [[:support programmation C]] mis à votre disposition : Nous vous invitons à consulter le [[:support programmation C]] mis à votre disposition :
   * [[:​Qt-Creator]] - l'IDE par excellence pour développer en Qt : débogueur, auto-complétion,​ facilité de prise en main...   * [[:​Qt-Creator]] - l'IDE par excellence pour développer en Qt : débogueur, auto-complétion,​ facilité de prise en main...
-  * [[:​edyuk|Edyuk]] - IDE C++/Qt4 très complet avec débogueur intégré. 
-  * [[:​Qdevelop]] - IDE C++/Qt4 plutôt complet avec débogueur intégré ([[http://​biord-software.org/​fr/​qdevelop/​|site]]) 
  
-==== Pascal ====+//​[[:​support_programmation_c|Voir la page dédié à la programmation C/C++]]//
  
 +==== Pascal ====
   * [[:​Lazarus]] - IDE basé sur Free Pascal et semblable à Delphi   * [[:​Lazarus]] - IDE basé sur Free Pascal et semblable à Delphi
   * [[:fpc]] - Compilateur Free Pascal   * [[:fpc]] - Compilateur Free Pascal
  
 ==== Microsoft .NET / C# / VB .NET ==== ==== Microsoft .NET / C# / VB .NET ====
-  * [[:Mono]] - Comment installer Mono? (implémentation libre de la plate-forme de développement Microsoft ​.NET)+Pour programmer en [[:csharp|C#]] ou VB.NET sur GNU/​Linux, ​la solution actuellement conseillée est [[https://​learn.microsoft.com/​fr-FR/​dotnet/​core/​introduction|.NET]], plateforme gratuite, open source et multiplateforme.
  
 +Le framework [[:​mono|Mono]],​ une implémentation libre de la plateforme de développement Microsoft .NET, est toujours disponible mais il est aujourd'​hui dépassé, puisqu'​il correspond à la version 4.x de .NET.
 +
 +//​[[:​csharp|voir la page dédiée à C#]]//\\
 +//​[[:​mono|voir la page dédiée à Mono]]//
  
 ===== Web ===== ===== Web =====
Ligne 136: Ligne 117:
  
 Voir aussi la [[:​entreprise#​creation_de_sites_web|sélection du portail "​entreprise"​]]. Voir aussi la [[:​entreprise#​creation_de_sites_web|sélection du portail "​entreprise"​]].
 +
 +==== Maquettage de site avec un logiciel de mockup ====
 +Un logiciel de mockup est un outil bien pratique qu’il faut compter dans sa toolbox au moment de se lancer dans un projet de création de site web. C’est ce type de logiciel qui va vous permettre de concevoir les maquettes fonctionnelles ou wireframes des pages de votre site.
 +  * Balsamiq : outil payant mais vraiment facile à prendre en main ([[https://​support.balsamiq.com/​installation/​linux/​|Page en anglais]] expliquant comment l'​installer avec Wine)
 +  * [[:​pencilevolus|Pencil Evolution]] : outil gratuit
  
 ==== Création d'​animations pour le web==== ==== Création d'​animations pour le web====
-  * [[:SVG]] : création d'​animations SVG (alternative libre au Flash)+  * [[:SVG]] : création d'​animations SVG
   * HTML5 - JavaScript (AJAX-JQuery)   * HTML5 - JavaScript (AJAX-JQuery)
-  * [[:Flash]] : création d'​animations Flash - OBSOLÈTE 
  
 ==== Mise en ligne du site ==== ==== Mise en ligne du site ====
 //Voir le portail [[:FTP]].// //Voir le portail [[:FTP]].//
- 
  
 ==== Vérification du rendu des sites créés==== ==== Vérification du rendu des sites créés====
 //Voir le portail [[:​navigateur]].//​ //Voir le portail [[:​navigateur]].//​
- 
  
 ==== Systèmes de gestion de contenu (CMS) ==== ==== Systèmes de gestion de contenu (CMS) ====
-//Voir le portail [[:CMS]].//+//Voir le portail [[:CMS]]//
  
 ==== Serveurs de développement web==== ==== Serveurs de développement web====
Ligne 160: Ligne 143:
 ====Transformation C/C++ (ou autres ) vers javascript / html ==== ====Transformation C/C++ (ou autres ) vers javascript / html ====
  
-Description du processus : +Description du processus :
    - compiler code (c++ par exemple ) vers LLVM. Des compilateurs : llvm-gcc, clang, ...    - compiler code (c++ par exemple ) vers LLVM. Des compilateurs : llvm-gcc, clang, ...
    - Compiler le code LLVM vers javascript ​    - Compiler le code LLVM vers javascript ​
-     ​- ​Emscripten ([[http://code.google.com/​p/​emscripten/|site]]) +     ​- ​ [[https://emscripten.org/|Emscripten]] 
-     ​- ​llvm js backend ([[http://​github.com/​dmlap/​llvm-js-backend|site]]) a vérifier+     ​- ​ [[https://​github.com/​dmlap/​llvm-js-backend|llvm js backend]] (à vérifier)
  
-[[wpfr>Html5]] implémente les websockets, et une plage mémoire pour des applications web.+[[wpfr>HTML5]] implémente les websockets, et une plage mémoire pour des applications web.
  
-   * NativeClient ([[http://​code.google.com/​p/​nativeclient/​|site]])( de google ) Lancer du code natif dans une application web : nécessite ​un navigateur ​compatible ​+[[wpfr>​Google_Native_Client]] est un logiciel de sandbox qui permet l'​exécution ​de code natif x86 dans un environnement confiné et contrôlé par un navigateur ​web. (source ​Wikipédia)
  
- +Le compilateur [[https://​ocsigen.org/​js_of_ocaml/​|Js_of_ocaml]] propose une compilation presque complète depuis l'​OCaml vers le JavaScript. Tous les navigateurs récents sont compatibles.
-Le compilateur ​**js_of_ocaml** ([[http://​ocsigen.org/​js_of_ocaml/​]]propose une compilation presque complète depuis l'​OCaml vers le JavaScript. Tous les navigateurs récents sont compatibles.+
  
 ==== HTML / XHTML / CSS ==== ==== HTML / XHTML / CSS ====
Ligne 177: Ligne 159:
 Le [[wpfr>​WYSIWYG]] est le fait de voir directement ce que l'on édite au format final, c'​est-à-dire que ce que vous éditez ressemble fortement au résultat final publié. Le [[wpfr>​WYSIWYG]] est le fait de voir directement ce que l'on édite au format final, c'​est-à-dire que ce que vous éditez ressemble fortement au résultat final publié.
  
-  * [[:​Kompozer]],​ éditeur HTML (conseillé pour les débutants en création de site web) ; 
   * [[:​Seamonkey]],​ éditeur HTML (Composer) et navigateur web ensemble;   * [[:​Seamonkey]],​ éditeur HTML (Composer) et navigateur web ensemble;
   * [[:​BlueGriffon]],​ éditeur HTML supportant les plus récentes technologies Web (HTML5, CSS3), avec des add-ons pour des fonctions de base payants ;   * [[:​BlueGriffon]],​ éditeur HTML supportant les plus récentes technologies Web (HTML5, CSS3), avec des add-ons pour des fonctions de base payants ;
-  * [[:Amaya]], édition XHTML conçu par le [[wpfr>​World_Wide_Web_Consortium|W3C]] et l'​[[wpfr>​INRIA]] avec visualisation des animations svg ; 
   * **[[wpfr>​Dreamweaver]]**,​ éditeur HTML payant, s'​installe parfaitement avec [[:Wine]].   * **[[wpfr>​Dreamweaver]]**,​ éditeur HTML payant, s'​installe parfaitement avec [[:Wine]].
-  * [[:​Firebug]] | Très bonne extension de Firefox qui permet d'​éditer,​ debugger, ​ monitorer du CSS, HTML, et du JavaScript live. 
   * [[:​LibreOffice]] Writer, permet de créer des pages html simples et rapidement ;   * [[:​LibreOffice]] Writer, permet de créer des pages html simples et rapidement ;
-  * [[:Cssed]], éditeur et validateur de feuilles de style CSS ; 
   * [[:​w3c-markup-validator]],​ validateur HTML ;   * [[:​w3c-markup-validator]],​ validateur HTML ;
   * [[:Komodo Edit]], éditeur (HTML, CSS, RUBY, PYTHON…) simple et performant ;   * [[:Komodo Edit]], éditeur (HTML, CSS, RUBY, PYTHON…) simple et performant ;
   * [[:​Sublime-Text]] éditeur léger reconnaissant ​ 44 langages de programmation et permet l'​ajout de fonctionnalités avec des plugins   * [[:​Sublime-Text]] éditeur léger reconnaissant ​ 44 langages de programmation et permet l'​ajout de fonctionnalités avec des plugins
- 
  
 ==== PHP ==== ==== PHP ====
Ligne 195: Ligne 172:
   * [[:lamp]] : installer un serveur LAMP (Linux, Apache, Mysql, Php)   * [[:lamp]] : installer un serveur LAMP (Linux, Apache, Mysql, Php)
  
-===Éditeur=== ​+===Éditeur===
   * [[:​Bluefish]] : éditeur syntaxique orienté PHP. (interface GTK+)    * [[:​Bluefish]] : éditeur syntaxique orienté PHP. (interface GTK+) 
-  * [[:​gPHPEdit]] : éditeur syntaxique orienté PHP. 
  
-===Framework=== ​+===Framework===
   * [[:​symfony]] : framework PHP très en vogue   * [[:​symfony]] : framework PHP très en vogue
 +  * [[https://​www.laravel.com/​|Laravel]] : framework PHP riche et très populaire
   * Jelix : framework PHP français assez léger et assez simple d'​utilisation   * Jelix : framework PHP français assez léger et assez simple d'​utilisation
   * [[:​zend-framework|Zend Framework]] : Zend Framework est un framework open-source d'une grande qualité destiné aux développements d'​applications web et de services web avec PHP.   * [[:​zend-framework|Zend Framework]] : Zend Framework est un framework open-source d'une grande qualité destiné aux développements d'​applications web et de services web avec PHP.
-  * [[:​CodeIgniter]] : un framework très léger et plus facile à prendre en main que Symphony et ZenFramework. ​(voir la [[http://​social.hecube.net/​2009/​05/​framework-php-quel-framework-choisir-entre-codeigniter-cakephp-symphony-zend/​|revue de Hecube]])+  * [[https://​www.codeigniter.com/​|CodeIgniter]] : un framework très léger et plus facile à prendre en main que Symphony et ZenFramework.
   * [[:​FuelPHP]] : un successeur pour CodeIgniter ? (voir [[http://​www.novius-labs.com/​quel-framework-choisir-nous-votons-fuelphp,​29.html|l'​article de Novius labs]])   * [[:​FuelPHP]] : un successeur pour CodeIgniter ? (voir [[http://​www.novius-labs.com/​quel-framework-choisir-nous-votons-fuelphp,​29.html|l'​article de Novius labs]])
-  * [[:Atomik]] : le petit dernier, super léger ... peut-être trop. Vous pouvez vous faire une idée avec l'[[http://​openclassrooms.com/​courses/​atomik-framework-un-framework-php-simple-et-leger|article du site openclassrooms]]. +  * [[wpfr>​Atomik_Framework]]: le petit dernier, super léger ... peut-être trop. le projet n'est plus en développement depuis 2014.
- +
-===Cache PHP=== +
-  * [[:​php-APC|APC]] +
-  * [[:​eAccelerator]] +
-  * [[:XCache]]+
  
 === Packages === === Packages ===
Ligne 217: Ligne 189:
  
 ==== NodeJs ==== ==== NodeJs ====
 +Basé sur JavaScript [[:nodejs]] est un environnement d'​exécution exécuté coté serveur.
  
-Basé sur JavaScript [[:nodejs]] est un langage de script exécuté coté serveur. 
 ===== Le développement d'​applications ===== ===== Le développement d'​applications =====
 Cette partie concerne aussi bien la simple compilation,​ la programmation de petits programmes que la création de programmes ambitieux ! Cette partie concerne aussi bien la simple compilation,​ la programmation de petits programmes que la création de programmes ambitieux !
Ligne 227: Ligne 199:
  
 ==== Création de paquets .deb ==== ==== Création de paquets .deb ====
-Les paquets .deb sont les "​installeurs"​ de programmes d'​Ubuntu,​ ces pages vous expliquent comment les créer.+Les [[:deb|paquets .deb]] sont les "​installeurs"​ de programmes d'​Ubuntu,​ ces pages vous expliquent comment les créer.
  
-  * [[:​projets:​ecole:​paquets|Comment créer un paquet .deb]] +  * [[:​projets:​ecole:​paquets|Comment créer un paquet .deb ?]] 
-  * [[:​tutoriel:​creer_un_paquet]] - Comment créer un paquet à partir de sources compilables ? +  * [[:​tutoriel:​creer_un_paquet|Comment créer un paquet à partir de sources compilables ?]] 
-  * [[:​tutoriel:​creer_un_meta_paquet]] - Comment créer un méta-paquet DEB ?+  * [[:​tutoriel:​creer_un_meta_paquet|Comment créer un méta-paquet DEB ?]]
  
 ====Internationaliser un programme==== ====Internationaliser un programme====
  
-Voir le tutoriel [[:​tutoriel:​internationaliser_un_logiciel_libre|Comment internationaliser un logiciel libre]].+Voir le tutoriel [[:​tutoriel:​internationaliser_un_logiciel_libre|Comment internationaliser un logiciel libre ?]].
  
 ====Développement Android==== ====Développement Android====
Ligne 241: Ligne 213:
  
 **Android Studio** **Android Studio**
-  * [[http://​developer.android.com/​sdk/​index.html#​Other ​| Android Studio ​(Téléchargement)]]: Atelier logiciel d'​applications natives ​android ​proposé par Google+  * [[https://​developer.android.com/​studio|Android Studio]]: Atelier logiciel d'​applications natives ​Android ​proposé par Google
  ​**Voir aussi **  ​**Voir aussi **
-  * [[android_sdk| ​ Développer des applications pour Android]] +  * [[android_sdk|Développer des applications pour Android]] 
-  * [[android | documentation ubuntu android]]  +  * [[android |Page « Android » de cette Documentation]] 
-  * [[http://​developer.android.com/​ |documentation officielle Android]] ​+  * [[https://​developer.android.com/​ |documentation officielle Android]]
  
 ===== Développement de jeux vidéo ===== ===== Développement de jeux vidéo =====
-  * Voir la page [[:​developpement de jeux video]]+//Voir la page [[:​developpement de jeux video|Développement de jeux vidéo]]//
  
 ===== Logiciels et utilitaires (par langages) ===== ===== Logiciels et utilitaires (par langages) =====
Ligne 255: Ligne 227:
  
 ==== Cross compilation Linux - Windows ==== ==== Cross compilation Linux - Windows ====
- +//[[:/​tutoriel/​comment_utiliser_mingw32_pour_faire_des_executables_windows | MingW32]] - Cross Compilateur permettant le développement sous Linux d'​applications **C** à exécuter sous Windows//
-  * [[:/​tutoriel/​comment_utiliser_mingw32_pour_faire_des_executables_windows | MingW32]] - Cross Compilateur permettant le développement sous Linux d'​applications **C** à exécuter sous Windows +
- +
-==== Gambas ==== +
-  * [[:Gambas]] - Présentation de l'IDE Gambas (IDE proche de Visual Basic). +
- +
  
 ==== Calcul formel ==== ==== Calcul formel ====
-   ​*[[:​Maxima]] ​(dans les dépôts officiels)+   ​*[[:​Maxima]]
    ​*[[:​GIAC-Xcas]]    ​*[[:​GIAC-Xcas]]
    ​*[[:​Yacas]]    ​*[[:​Yacas]]
    ​*[[:​Pari]]    ​*[[:​Pari]]
    ​*[[:​Euler]]    ​*[[:​Euler]]
 +   ​*[[:​SageMath]]
  
 ==== Virtualisation ==== ==== Virtualisation ====
Ligne 275: Ligne 242:
  
   * [[:docker]] - utilise le noyau de l’hôte pour virtualiser des services ou des applications dans des conteneurs.   * [[:docker]] - utilise le noyau de l’hôte pour virtualiser des services ou des applications dans des conteneurs.
-  * [[:​vagrant]] - utilise [[Virtualbox]] ou VMware pour émuler une "​box"​ (l'​image d'une machine pré-paramétré) ​+  * [[:​vagrant]] - utilise [[:virtualbox]] ou [[vmware|VMware]] pour émuler une "​box"​ (l'​image d'une machine pré-paramétré) ​[[wpfr>​Vagrant]]
  
 ==== Autres ==== ==== Autres ====
-  * [[:sdl]] - Comment utiliser la SDL en C ?+  * [[:sdl]] - une bibliothèque permettant de réaliser des fenêtres, elle possède d'​autres modules tel que l'​image,​ le son, les polices d'​écriture via freetype2.
   * [[:fmod]] - Comment utiliser la fmod en C/C++ ?   * [[:fmod]] - Comment utiliser la fmod en C/C++ ?
   * [[:​programmation_sur_livecd|programmation_sur_livecd]] - Comment programmer sur un live CD ?   * [[:​programmation_sur_livecd|programmation_sur_livecd]] - Comment programmer sur un live CD ?
  
 ===== Les outils d'​analyse et d'​optimisation du code ===== ===== Les outils d'​analyse et d'​optimisation du code =====
-Aller sur [[:​analyseur_de_code_static|la pages des analyseurs de code static]]+//Voir la page [[:​analyseur_de_code_static|analyseurs de code static]]//
  
 ===== Reverse engineering ===== ===== Reverse engineering =====
-=== Si vous pratiquez le reverse engineering === +==== Si vous pratiquez le reverse engineering ====
- +
-  *[[http://​bokken.re|Bokken]],​un framework en python basé sur Radare sous licence libre\\ +
-permet de faire de l'​analyse de binaire. Il supporte les fichiers au format PE, Elf et mach0, et les architectures ARM, i386 et x86-64\\+
  
   *[[android_sdk#​java_decompileur_project]],​ Observer du code JAVA par décompilation.   *[[android_sdk#​java_decompileur_project]],​ Observer du code JAVA par décompilation.
  
 =====Ressources===== =====Ressources=====
- 
-====Liens internes==== 
- 
 ====Liens externes==== ====Liens externes====
  
-  * [[wpfr>​Liste des algorithmes]] / [[http://​en.wikipedia.org/​wiki/​List_of_algorithms|List of algorithm]] +  * [[wpfr>​Liste des algorithmes]] / [[https://​en.wikipedia.org/​wiki/​List_of_algorithms|List of algorithm]] 
-  * [[http://​www.developpez.com/​|www.developpez.com]] : le site propose de nombreux tutoriels de programmation à la fois sur les langages Web et les langages applicatifs.+  * [[https://​www.developpez.com/​|www.developpez.com]] : le site propose de nombreux tutoriels de programmation à la fois sur les langages Web et les langages applicatifs.
   * [[http://​devdocs.io|devdocs.io]] : propose les documentations en anglais de nombreux languages tel que HTML, PHP, C, C++...   * [[http://​devdocs.io|devdocs.io]] : propose les documentations en anglais de nombreux languages tel que HTML, PHP, C, C++...
  
Ligne 311: Ligne 272:
 ---- ----
 ===== liens à corriger ===== ===== liens à corriger =====
-FIXME les [[:​developpement?​do=backlink|pages pointant vers l'​ancienne page "developpement"]] doivent être corrigées pour pointer vers la page "​programmation"​.+FIXME les [[:​developpement?​do=backlink|pages pointant vers l'​ancienne page "développement"]] doivent être corrigées pour pointer vers la page "​programmation"​.
  
 ---- ----
  
-//​Contributeurs : [[utilisateurs:​Fabien26]].//​ [[utilisateurs:​Phossele]],​ [[utilisateurs:​darkjam]]+//​Contributeurs : [[utilisateurs:​Fabien26]].//​ [[utilisateurs:​Phossele]],​ [[utilisateurs:​darkjam]], [[utilisateurs:​Tinato]],​
  • programmation.1514744453.txt.gz
  • Dernière modification: Le 31/12/2017, 19:20
  • par spnux