Recommander

Cliquez ici pour recommander ce blog

Dimanche 19 novembre 2006
Programmation
 définition de la programmation (copier coller ^^ pas courageux le cabu)

image:Langage_progr.png
Cet article fait partie de la série
Langages de programmation
Langages à objets
Ada 95 - C++ - C#
Common Lisp
Delphi - Eiffel - Java
Nice - Oz - Python
Ruby - Simula - Lisaac
Smalltalk - Visual Basic
Langages impératifs
APL - ASP - Assembleur
BASIC - C - Cobol
Forth - Fortran - Logo
OPL - Pascal - Perl - PHP
Langages fonctionnels
Erlang - Haskell
ML/OCaml - Oz
Lisp/Common Lisp
Scheme
Langages déclaratifs
Clips - Oz - Prolog
Langages concurrents
Ada 95 - Erlang
Java - Oz
Langages balisés
HTML - SGML - XML
Dialectes XML
S-expressions
Voir aussi
Conception - Codage
Tests - Optimisations

La programmation dans le domaine informatique est l'ensemble des activités qui permettent l'écriture des programmes informatiques. C'est une étape importante de la conception de logiciel (voire de matériel, cf. VHDL).

Pratiques

Techniques de programmation

  • Programmation concurrente

Langages de programmation

Les langages de programmation permettent de définir les ensembles d'instructions effectuées par l'ordinateur lors de l'exécution d'un programme. Il existe des milliers de langages de programmation, la plupart d'entre eux étant réservés à des domaines spécialisés. Ils font l'objet de recherches constantes dans les universités et dans l'industrie.

Les langages de programmation peuvent être classifiés de nombreuses manières : généraliste/spécialisé, haut niveau/bas niveau, interprété/compilé, avec ou sans gestion de mémoire automatisée, système de gestion d'exceptions, typage fort/typage faible, typage statique/typage dynamique, syntaxe fixe/extensible ; non objet/orienté objet/purement objet, impératif/fonctionnel/déclaratif, fonctionnel pur/impur, etc.

Nous incluons ci-dessous une classification sommaire des langages de programmation les plus connus. Il faut garder à l'esprit que de nombreux langages appartiennent simultanément à plusieurs catégories - ils sont dits « multi-paradigmes ». Par exemple, C++ permet la programmation impérative, orientée objet et la programmation générique (à base de classes et de fonctions paramétrées nommées templates). Common Lisp est à la fois impératif, fonctionnel, orienté objet -- et de par son caractère « programmable » (un langage de programmation programmable...), il peut intégrer d'autres « paradigmes » de programmation en son sein (par exemple la programmation logique, ou par contraintes).

Ci-dessous, nous listons les langages les plus connus (nous mettons entre parenthèses certains langages dérivés ou les extensions requises).

Classification des langages généralistes
Nom Impératif Fonctionnel Objets Déclaratif Concurrent
Ada X   X   X
Algol X        
APL X   APL2    
Assembleur X        
ArmScript X        
BASIC X   (Visual Basic)    
Caml X X X    
C X        
C++ X   X    
C# X   X    
COBOL X        
ColdFusion X        
Common Lisp X X X (screamer) (erlisp)
Eiffel X   X    
Erlang   X     x
Fortran X        
Forth X        
Haskell   X (O'Haskell)   (Concurrent Haskell)
Java X   X   x
Logo X        
Lisaac X X X    
Miva Script X   X    
ML X X (Objective CAML)   (Concurrent ML)
Objective C X   X    
Oz X X X x x
Pascal X   (Delphi)    
Perl X   X    
PHP X   (PHP 4+)    
Python X   X    
Prolog       X (Concurrent Prolog)
Ruby X X X    
Scheme X X (TinyClos)   (gambit, termite)
Scriptol X   X    
Simula X   X   X
Smalltalk X   X    
Tcl X   (Incr Tcl, Snit, XOTcl)    

Langages déclaratifs

  • Oz
  • Mercury
  • Prolog pour PROgrammation LOGique
  • Clips

Ci-dessous, nous listons les langages spécialisés, c'est-à-dire dont l'utilisation est réservée à des domaines bien spécifiques ; les plus connus sont :

Langages de définition de données

  • ASN.1
  • DTD SGML
  • DTD XML
  • XML Schéma
  • Relax NG

Langages spécialisés pour la communication avec une base de données

  • 4GL
  • SAS
  • SQL

Langages de manipulation de chaînes de caractères

  • SNOBOL StriNg Oriented symBOlic Language (Langage Symbolique Orienté Chaînes de Caractères)
  • awk
  • Perl
  • sed

Langages spécialisés Web

  • Exécution par le serveur HTTP (côté serveur) :
    • ASP
    • JSP (issu de Java, basé sur des Servlets)
    • PHP
    • XSP (issu de XML, soutenu par Apache)
    • D'une manière générale, les langages non spécialisés (notamment Perl et C) peuvent également être utilisés via Common Gateway Interface
  • Exécution par le navigateur Web (côté client) :
    • JavaScript ou ECMAScript
    • VBScript
    • applets écrites en Java
    • ActionScript de Macromedia Flash

Langages de description de page

voir Langage de balisage

Langages de programmation théorique

  • Lambda-calcul
  • Pi-calcul
  • Join-Calcul
  • Récursion Primitive
  • Système T de Kurt Gödel
  • BNF

Langages de programmation de Commande Numérique (C.N.)

Une machine-outil automatisée, ou Commande Numérique (C.N.), a besoin d'un langage de programmation pour réaliser les opérations de tournage, ou de fraisage…

  • Programmation de Commande Numérique

Pour rendre la programmation plus difficile

  • Brainfuck (ou encore F*ckF*ck, Ook ou spoon)
  • Intercal
  • Malbolge
  • Unlambda

Non classés

Langages spécialisés

  • ABEL : langage pour la programmation électronique des PLD
  • R : langage pour l'outil de statistiques du même nom
  • VHDL : langage de description matérielle, permettant de synthétiser de l'électronique numérique (descriptions de portes logiques) et d'en simuler le fonctionnement
  • Verilog, autre langage de description matérielle et de simulation, plus populaire aux États-Unis
  • VRML : description de scènes en trois dimensions

Bibliothèques graphiques

  • Allegro - multi-plateforme, Multimédia, Jeux
  • DirectX - 3D, Multimédia
  • GTK+ - multi-plateforme, Environnement graphique
  • JFC - Environnement graphique, 2D
  • OpenGL - 3D
  • Qt - multi-plateforme, Interface utilisateur
  • Quartz - Environnement graphique
  • SDL - Video
  • SWT - multi-plateforme, Interface utilisateur
  • Tk - multi-plateforme - Interface graphique associée à Tcl
  • wxWidgets - multi-plateforme - Environnement graphique
  • Xlib - 2D
par wikipedia publié dans : programmation
ajouter un commentaire commentaires (0)    créer un trackback recommander

Calendrier

Décembre 2008
L M M J V S D
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
<< < > >>

Recherche

Archives

Créer un blog sur over-blog.com - Contact - C.G.U. - Rémunération en droits d'auteur avec TF1 Network - Signaler un abus