[FAQ] Les différents langages informatiques :)

Voici un petit topic destiné à expliquer un peu comment fonctionnent les différents langages utilisés en informatique :slight_smile:

Tout d’abord, un gros critère permet de classer les langages : interprétation ou compilation :slight_smile:
Pour être compréhensible par un ordinateur, un langage a besoin d’être traduit dans sa “langue”. Pour cela nous avons 2 solutions :
[]L’interpréteur : c’est un logiciel qui va interpréter directement le code source pour l’ordinateur.
[
]Le compilateur : c’est un logiciel qui va transformer le code source en un fichier executable écrit ds la “langue” du processeur.

Nous fairons également une seconde différenciation : langage orienté web ou plutot application locale.
Les langages dits orientés web permettent de créer des pages web tandis que les autres permettent de créer des programmes destinés à être utilisés en tant qu’application (ex : un traitement de texte ou un tableur)

Sans plus attendre, voici une petite liste des principaux langages informatiques accompagnés d’une petite description :slight_smile:
(Pour plus d’infos sur ces langages, vous pouvez consulter les sites que je met en lien et surtout CE TOPIC

1. Langages Web :
[*]HTML (HyperText Markeup Language) :
C’est le langage de base de toute page web ! Le HTML un langage de balises indispensable à la création d’un site web. Créé au CERN en 1989.
-> http://www.w3.org

[*]JavaScript :
Langage de scripts interprétés par le navigateur, très pratique pour rendre des pages dynamiques.
-> http://www.editeurjavascript.com

[*]CSS (Cascade Style Sheets) :
Langage permettant de définir un style sur une page web.
-> http://www.w3.org

[*]PHP (Personal Home Page) :
Langage interprété coté serveur par le célèbre serveur Apache, il permet de générer des pages dynamiquement et d’utiliser le système des bases de données.
Créé en 1994 par Rasmus Lerdof.
-> http://www.php.net

[*]ASP (Active Server Pages) :
Langage interprété coté serveur également, principal concurrent de PHP. Développé par Microsoft, il présente les mêmes caractéristiques que PHP : dynamisme et possibilité d’accès aux bases de données.
-> http://www.microsoft.com/france/msdn/technologies/technos/asp/default.asp

[*]JSP (Java Server Pages) :
N’est autre que des des servlets Java, c’est-à-dire des applications Java exécutées par le serveur.
J’ai peu d’informations sur ce langage malheureusement…
-> http://java.sun.com/products/jsp/

[*]Les CGI (Common Gateway Interface) :
Les CGI ne sont pas un langage à part entière ! Ce sont des programmes écrits en Perl, Java, C ou autre, qui sont exécutés par le serveur. Ils permettent ainsi un dynamisme et l’accès aux BDD.

2. Langage de bases de données :
[*]SQL (Structured Query Language) :
Surement le langage de requêtes sur bases de données le plus connu et le plus répandu.
http://www.asp-php.net/tutorial/asp-php/sql_c_quoi.php
http://www.laltruiste.com/document.php?url=http://www.laltruiste.com/courssql/intro.html

3. Autres langages :

3.1. Le C et ses dérivés :
Un des langages de programmation les plus connus est le langage C. Développé par Dennis Ritchie en 1972 pour coder son fameux système d’exploitation : UNIX, le C est un langage compilé dit de haut niveau.
On connait 2 dérivés du langage C :
[]le C++ de Bjarne Stroustrup qui est une version dite “orientée objet” du C
[
]et le C# (lire “C sharp”) qui est une évolution du C++ développée par Microsoft destinée à concurencer Java et qui est aussi bien utilisable dans le domaine du web (asp.net) que pour des applications Windows ou autres (le langage est portable sous différents OS)
-> http://www.microsoft.com

3.2. L’assembleur ou langage machine :
L’assembleur est le langage de programmation qui se rapproche le plus de celui du processeur (composé de 1 et de 0), c’est pour cela qu’on l’appelle langage de bas niveau.

3.3. Les langages permettant des interfaces graphiques rapides :
[*]Delphi :
Dérivé du langage Pascal, le Delphi nécessite un logiciel : Borland Delphi (actuellement dans sa version 7), et permet la création de programmes avec une interface graphique assez complète de façon simple. Delphi doit son nom à la ville grecque de Delphes.
-> http://www.borland.com

[*]VB (Visual Basic) :
Langage mis au point par Microsoft, dérivé du célèbrissime BASIC.
-> http://www.microsoft.com/france/vbasic/utilisez/infotech/default.asp

3.4. Encore des langages :
[*]Java :
Langage mis au point par Sun, il permet de créer des applications locales mais aussi des applications web.
-> http://java.sun.com

[*]PERL (Practical Extraction and Report Language) :
Langage très utilisé pour les CGI. Interprété mais il existe aussi des compilateurs.
-> http://www.perl.com

[*]BASIC (Beginner’s All Purpose Symbolic Instrucion Code) :
Le BASIC est un des plus vieux langages de programmation, il a été créé en 1965 de manière à être le plus simple possible pour les débutants en informatique. Interprété mais peut être également compilé, le BASIC a donné lieu à des dizaines de versions différentes telles que QBASIC ou BASICA. Il est aujourd’hui “détroné” par des langages plus modernes tels que C ou Java.

[*]COBOL (Common Business Oriented Language) :
Créé en 1960, le COBOL était surtout destiné à la construction d’applications de gestion. Peu utilisé aujourd’hui.

[*]FORTRAN (Formula Translator) :
Créé en 1966, le FORTRAN est un langage de haut niveau compilé qui s’apparente au “père” du BASIC. Une de ses célèbres normalisations date de 1977 : FORTRAN 77. La dernière en date étant le Fortran 90.

[*]Pascal :
Créé en 1968 par Nicklaus Wirth, le Pascal doit son nom au célèbre mathématicien et philosophe français du XVIIe siècle : Blaise Pascal. Le Pascal est un langage compilé dont la plus célèbre version est le Turbo Pascal de Borland et qui a donné le Delphi, dont on parle plus haut.

[*]Ada :
Langage compilé de haut niveau créé en 1975 par l’équipe de l’informaticien français Jean Ichbiah suite à un appel d’offre du Département de la Défense américain. Il est spécialisé dans le contrôle de processus en temps réel. Il tient son nom de Ada Augusta Lovelace Byron, première femme programmeur au monde, compagne de Charles Babbage, le créateur de la machine analytique, et fille du poète Lord Byron.

Voila, c’est tout :slight_smile:
Si vous avez des améliorations ou corrections à apporter, je me ferais un plaisir de mettre à jour ce topic :slight_smile:

Aucun prob, je ne détiens pas encore la science infuse, mes topics FAQ ne demandent qu’à être corrigés :slight_smile:

Je sais c’était fait exprès :smiley:

et le lisp [:toxicavenger] :pt1cable:

et XML ?
XHTML ?
SGML ?
XSLT ?
(quoi d’autres, hum!)

DTD ?
XML Schema ? :>

Edit ; j’oubliais LaTeX

Ce topic n’est pas sensé être exhaustif donc Lisp par exemple n’était pas forcémment indispensable, sinon j’aurais pu citer PL/1, RPG, REBOL, Python, CAML, Eiffel,…
Si vous voulez rajouter un langage, donnez moi les infos et je met à jour sans prob :slight_smile:

http://www.asp-php.net/tutorial/asp-php/sql_c_quoi.php
http://www.laltruiste.com/document.php?url=http://www.laltruiste.com/courssql/intro.html

meme si la recherche sur le sujet a été initié par un chercheur d’IBM je crois qu’on est loin de pouvoir lui accordé la parternité, autant se reféré a l’ISO :stuck_out_tongue:

je sais bien qu’on ne va pas citer tous les langages, mais dans la section bases de données il faudrait peut-etre parler du PL/SQL, une “extension” d’sql gérée entre autres par oracle, et qui permet beaucoup plus de possibilité que SQL (variables, boucles, trigger etc…)

c’est juste l’integration du sql dans de l’ada et ca reste spécifique a Oracle, d’autres BD ont leur propre langage de programmation (transac SQL pour SQL Server)

Ouais…

Mais le C++, le Java et l’Ada ont des liens forts et ils utilisent la programmation orienté objet alors si la possiblité de faire facilement des interfaces graphiques est important, je crois que celui de pouvoir faire de la POO facilement l’est encore plus.

Quant au LISP, nan, t’as raison…, c’est juste qu’il décrit des concepts complètement différents des langages que t’as cité au-dessus, il a presque sa propre famille en quelque sorte…

Par ailleurs, tu cites le Delphi ou le VB, mais tu pourrais aussi citer le Python, il est simple, permet de faire des « GUI » assez facilement, est libre, et tourne sur beaucoup de plates-formes .
En plus, il est très accessible aux débutants !

La vraie grosse raison pour laquelle j’ai pas cité ces langages, c’est que je les connais pas et j’ai pas le tps de me documenter dessus…
Donc c’est simple et je le répète : je mettrais TOUS les langages que vous voulez ds ce topic si vous m’en donnez une courte description à mettre avec et une catégorie pour le classer :slight_smile:

Just pour informer à propos du Fortran. La dernière revision est le Fortran 90 (qui ne date pas de 1990 d’ailleur il me semble mais plutôt de vers 94-96 non ?).

J’ai même entendu parlé du Fortran 2000 mais je ne sais pas si tt ca est bien officiel…

Merci : mise à jour effectuée :slight_smile:

sté quoi le langage qu’on avait dans les TI-83 a l’époque ? :stuck_out_tongue:

DG-Switcher > du pseudo basic ou de l’assembleur ?

Dunk > Il a oublie la famille des ml … :cry:

Le dernier representant est OCaml (objective caml).
C’est un langage qui herite de plus de 20 ans d’experiences. C’est a mon avis (d’apres mon experience) le langage le plus beau qui existe. Ecrire un algorithme avec caml, c’est comme l’ecrire en algorithmique. C’est naturel. Ca c’est pour ses qualites de presentation.

Ses qualites techniques sont tres nombreuses. Il est rapide. Le dernier comparatif que j’ai lu le classe entre le c et le c++.
Il dispose de plusieurs types de compilation en natif ou en interprete (en fait un interprete ou un tokeniseur ca depend des plate-formes).
On peut programmer dans le style imperatif ou fonctionnel. Utile pour les structures paresseuses. :slight_smile:
Il dispose des extensions objets.
Il possede aussi une bibliotheque tres riche. Ca va du reseau au systeme en passant par l’arithmetique, le traitement des flots … etc.Et en plus il dispose d’une bibliotheque d’interoperabilite avec le C : toutes les bibliotheques C sont utilisables en caml.

J’ai du oublier des choses … mais ocaml c’est genial … :love:

Switch -> qu’est ce que tu fous là toi ? :stuck_out_tongue:

Val -> Merci, je met à jour qd j’ai le tps :slight_smile:

Arggg !!!

je me doit de réagir en tant que Dinausore programmant en COBOL …

Cobol n’est pas a la mode, il n’est pas objet … mais dire qu’il est peut utilisé de nos jour est absolument faux … tous les grands comptes tel que les Banques, assurances, constructeurs automobile, transporteur aerien, SNCF, Administration etc … utilisent pour leur informatique de gestion des Mainframes IBM sur lesquels le langage roi est depuis les années 60 le cobol (même si le C et l’assembleur existent pour ces machines …).
Les application écritent en cobol totalisent des millions de lignes de code … et ce sont elles qui assurent la gestion de vos comptes en banque, de vos billets d’avions ou de train, de vos contrats d’assurances, de vos payes si vous travaillez pour une de ces grandes entreprises … Il y a donc d’énorme besoin en programmeur cobol tant pour la maintenance et l’évolution des programmes existant que pour la création de nouvelles application s’intégrant dans l’existant …
Qu’on se le dise : le cobol n’est pas “mode” mais il est bien installé et il est encore la pour un bonbout de temps : en fait il n’est pas envisageable de réécrire un aussi grand nombre d’application en un autre langage, le coût serait prohibitif …

Voila … justice est faite :smiley:

A plus !!

Kobold > Il y a effectivement de nombreuses entreprises recherchant des développeurs COBOL. Pourrais-tu nous donner quelques liens pour appuyer tes affirmations.

Je signalerais alors les remarques à Dunk, qui éditera son sujet.

:jap: