Table des matières

,

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

Outils généraux

Outils de gestion de version (Versionning)

Les outils de gestion de version (versionning) 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…

Système centralisé : Basé sur le modèle client serveur, le gestionnaire doit posséder une connexion au serveur pour effectuer des modifications sur la branche principale (comit). Il est possible d'avoir une copie locale qui permet de travailler en mode déconnecté, mais qui devra être synchronisée avec le serveur.

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.

Outils de comparaison de fichiers

UML

XML

Environnement de Développement Intégré

Tout d'abord, qu'est ce qu'un EDI ? Un EDI (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.

Web : HTML, CSS, Javascript

: dépôt officiel : installation simple.

: installation manuelle : peu être compliquée pour un débutant.

: non disponible.

EDI généralistes

EDI Langages Dépôt PPA Téléchargement
Compilation
Notes
Anjuta C, C++, Java, Python Version obsolète dans les dépôts
S’intègre bien dans Gnome (GTK)
aptana_studio Web, Python, PHP, Ruby Existe aussi en tant que plugins pour Eclipse
Code_Blocks C, C++, Fortan, Python IDE orienté C, C++ et bibliothèques
Extensible par plugins
Eclipse Java, C, C++, Web, PHP, Python, Ruby 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… IDE très léger et polyvalent. Il est aussi considéré comme un éditeur de texte
jEdit Web, C, C++, JAVA, PHP, Python… é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 IDE très complet avec débogueur intégré.
NetBeans Web, C, C++, JAVA, PHP, Ruby IDE libre, complet et multiplate-formes codé en Java
MonoDevelop C#, .NET, C++, Java S'utilise comme Visual Studio.

É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.

Système

Livre : Unix. Pour aller plus loin avec la ligne de commande

Langages généralistes

Python

Java

Ruby

C++

Cours:

Formation en vidéo sur le langage C (par Naoki)

Apprenez à programmer en C Le C++ facile (OpenClassrooms, ex Site du Zéro)

Nous vous invitons à consulter le support programmation C mis à votre disposition :

Pascal

Microsoft .NET / C# / VB .NET

Web

Le développement web, création de pages internet et de script PHP, etc.

Cours : Formation au développement web en vidéo (HTML 5, CSS 3 , PHP, SQL, JavaScript et XML) par Naoki

Voir aussi la sélection du portail "entreprise".

Création d'animations pour le web

Mise en ligne du site

Voir le portail FTP.

Vérification du rendu des sites créés

Voir le portail navigateur.

Systèmes de gestion de contenu (CMS)

Voir le portail CMS.

Serveurs de développement web

Transformation C/C++ (ou autres ) vers javascript / html

Description du processus :

  1. compiler code (c++ par exemple ) vers LLVM. Des compilateurs : llvm-gcc, clang, …
  2. Compiler le code LLVM vers javascript
    1. Emscripten (site)
    2. llvm js backend (site) a vérifier

Html5 implémente les websockets, et une plage mémoire pour des applications web.

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

Le 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é.

PHP

Serveur

Éditeur

Framework

Cache PHP

Packages

NodeJs

Basé sur JavaScript nodejs est un langage de script exécuté coté serveur.

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 !

Compiler un programme

Création de paquets .deb

Les paquets .deb sont les “installeurs” de programmes d'Ubuntu, ces pages vous expliquent comment les créer.

Internationaliser un programme

Voir le tutoriel Comment internationaliser un logiciel libre.

Développement Android

Développement de jeux vidéo

Logiciels et utilitaires (par langages)

Les outils de base de données

Cross compilation Linux - Windows

Gambas

Calcul formel

Virtualisation

Les outils présentés ici sont utilisés pour virtualiser un environnement tel qui peut l'être dans les applications client/serveur.

Autres

Les outils d'analyse et d'optimisation du code

Aller sur la pages des analyseurs de code static

Reverse engineering

Si vous pratiquez le reverse engineering

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

Ressources

Liens internes

Liens externes

Pages concernant la programmation


NE PAS SUPPRIMER – YoBoY
2010/08/24 13:27 Gilles Coulais
2011/04/08 21:39 tiphedor
2010/09/27 14:20 psychederic
2008/10/07 12:43 setthe
2007/06/08 16:41 Ner0lph
2012/04/14 22:34 Karting06
2006/12/21 19:04 Blackpegaz
2008/02/26 21:10 _Enchained
2012/04/16 16:11  
2011/01/18 10:23 Lemaitre
2009/03/06 11:34 fidji
2007/05/23 23:10 Surfoo
2011/05/11 12:32 Matthieu
2009/10/18 00:48 psychederic
2007/06/19 22:48 opax
2007/05/17 22:05 DvP
2010/06/02 09:36  
2006/11/21 13:13 Olivier Staquet
2006/12/23 14:27 thedamocles
2007/03/20 21:20 mr_pouit
2007/03/20 21:21 mr_pouit
2011/09/04 14:31 YannUbuntu
2007/02/04 11:09 tbonacco
2009/11/20 21:00 v0n
2010/04/27 19:10  
2007/08/21 19:51 Lestat the vampire
2008/10/31 04:48  
2015/02/08 18:38 huluti
2007/10/20 09:33 gloubiboulga
2010/01/22 11:21 psychederic
2012/12/18 23:06 couverture-jonathan-b
2006/12/14 17:01
2008/03/07 17:54 YoBoY
2009/10/10 02:41 Zarmakuizz
2012/04/15 14:55 Jérôme Deuchnord
2007/06/16 21:30 setthe
2009/04/24 18:08  
2006/11/25 17:31 Olivier Staquet
2008/11/13 22:49  
2007/07/08 16:17 thedamocles
2009/08/10 03:51 René
2007/07/18 11:09 thedamocles
2008/07/26 18:38 chtiland
2013/08/07 00:58 Béni Clément
2007/10/01 16:31  
2010/08/26 19:59 kevlar
2007/05/13 12:41 Twinoatl
2014/11/09 14:05 Davy39
2010/09/27 14:46 psychederic
2008/12/06 19:12 orkerone
2010/10/17 17:37 Cuthalion
2011/12/24 07:09 luron
2007/09/11 09:33  
2011/02/27 14:59 BRAUD Christophe
2008/12/23 20:09 johndescs
2008/06/03 15:47 Autiwa
2010/05/04 13:21  
2009/04/08 19:52  
2009/07/08 22:24  
2011/12/31 15:21 Lhoumaud David
2008/10/11 08:24 Foxi31
2007/10/08 19:38 polarman
2009/09/11 23:52 phpvik
2013/03/16 15:49 grigouille
2008/08/09 22:59 geenux
2007/03/10 13:25 verveine
2009/10/20 16:41 psychederic
2011/05/25 14:37 hornblende
2009/10/25 15:00 Sherwood51
2006/12/21 18:58 Blackpegaz
2015/10/28 18:08 mvvvv
2010/04/02 00:25 quent57
2006/12/21 19:09 Blackpegaz
2007/04/26 09:12 shaolin17
2010/04/27 19:10  
2006/12/15 16:46 Gauvain Pocentek
2014/01/23 10:11 Computing Froggy
2009/05/31 12:30 _Val_
2008/01/28 18:26 YoBoY
2010/04/27 19:10  
2008/02/06 15:59 mknux
2010/04/27 19:10  
2007/03/08 16:43 thedamocles
2014/07/12 21:39 BlackEco
2008/03/07 22:39 YoBoY
2008/06/07 00:10 popi
2009/06/29 17:33  
2010/04/27 19:10  
2010/05/31 23:56  
2007/01/30 08:12 Blackpegaz
2007/08/09 21:07 xcxl
2010/09/02 14:42 TheCaméléon
2010/07/21 04:54 YannUbuntu
2007/06/11 20:55 flozz
2012/04/09 20:50  
2011/06/19 23:40 grandgoupil
2007/10/18 13:57 bertrandperrier
2010/04/27 19:10  
2008/04/14 13:26 flozz
2007/01/31 10:48 Blackpegaz
2009/11/16 20:44 psychederic
2007/11/01 14:32 fanfantasy7
2008/02/29 00:27 Spomky
2007/06/27 14:33 fabien26
2007/06/27 15:50 fabien26
2015/02/02 10:05 hector
2007/08/04 03:04 Ner0lph
2010/07/21 19:20 kwiky
2010/09/02 12:21 psychederic
2009/10/15 02:31 YannUbuntu
2007/10/01 18:45 fabien26
2010/04/27 19:10  
2010/04/27 19:10  
2006/12/28 14:00 ostaquet
2010/04/27 19:10  
2012/01/13 13:02 psychederic
2012/02/29 12:16 nekdev
2011/01/15 21:35 kamui57
2011/11/27 01:32 kshegzyaj
2007/08/31 20:45 tshirtman
2007/05/01 09:04 ymulleneers
2008/04/17 20:35 v4np13
2009/03/11 10:49  
2009/06/06 18:49 Ner0lph
2006/11/21 22:17 Olivier Staquet
2008/09/29 13:19 smon
2011/04/03 02:38 themadmax
2009/07/24 23:06 Tanguy Arnaud
2008/11/13 23:30 rafmav
2007/07/09 22:55 bishiboosh
2009/03/22 13:03 Skippy le Grand Gourou
2009/03/22 12:39 Skippy le Grand Gourou
2008/05/16 22:38 SaiyanRiku
2013/02/24 19:05 Djiboun
2015/06/12 15:46 BlackEco
2011/06/04 09:04 volfoni54
2010/11/14 18:15 magestik
2008/06/30 13:12 jlbrd
2009/07/23 19:57 Tanguy Arnaud
2009/06/27 23:52 xcxl
2009/10/31 16:40 Mathieu Comandon
2007/02/03 14:07 wouf
2008/11/08 15:04  
2012/05/12 15:40  
2013/05/23 09:08 Mimilus
2010/04/27 19:10  
2010/04/27 19:10  
2008/11/02 14:12  
2010/09/27 13:38 psychederic
2007/07/19 23:25 Ner0lph
2009/08/06 11:55 YannUbuntu
2008/02/12 16:11 elema
2009/04/20 22:47  
2011/06/04 08:56 volfoni54
2011/10/30 14:51 ordiman85
2007/11/20 23:46  
2013/09/15 12:15 Pika3D
2009/10/18 21:54 psychederic
2010/04/27 19:10  
2010/05/16 20:06  
2009/02/16 11:17  
2008/06/12 19:13  
2010/09/27 15:33 psychederic
2008/04/14 16:07 flozz
2013/04/30 15:25  
2007/01/31 10:57 Blackpegaz
2008/10/22 01:08 Dradge
2007/11/22 22:54  
2006/12/30 12:02  
2009/05/24 20:03  
2011/05/13 12:23 said
2008/11/30 22:30 SeTtHe
2007/03/28 13:07 Uims
2010/05/10 23:17  
2009/01/29 19:17  
2012/10/21 19:53 Gemnoc
2010/04/27 19:10  
2011/01/09 04:46 Hizoka
2009/12/20 07:20 Hizoka
2009/01/15 19:00 Hizoka
2010/03/11 10:37 YannUbuntu

liens à corriger

FIXME les pages pointant vers l'ancienne page "developpement" doivent être corrigées pour pointer vers la page “programmation”.


Contributeurs : Fabien26. Phossele, darkjam