Panorama rapide de l`informatique

Transcription

Panorama rapide de l`informatique
UE D - Programmation fonctionnelle
Chapitre 1
Généralités sur l'informatique
Université Blaise Pascal
Plan
●
Quelques définitions
●
Historique de l'informatique
●
Programmation
Université Blaise Pascal
1. Quelques définitions
●
●
Informatique
–
français : information automatique
–
anglais : science de l'ordinateur (computer science)
Ordinateur = machine exécutant des opérations
–
calcul automatique
–
programmable
Université Blaise Pascal
1. Quelques définitions
●
●
●
Ordinateur
–
partie matérielle
–
partie logicielle
Partie matérielle (hardware)
–
carte mère : processeur, carte graphique, mémoire
–
lecteurs : disques, CD, DVD
–
périphériques : écran, clavier, souris, imprimante
Partie logicielle (software)
–
programmes
Université Blaise Pascal
1. Quelques définitions
●
Système d'exploitation
–
●
Programmation
–
●
programme qui permet de gérer un ordinateur et
d'exécuter d'autres programmes
création de programmes
Langage de programmation
–
langage (ensemble de règles de syntaxe et de
sémantique) dans lequel les programmes sont
créés
Université Blaise Pascal
2. Historique de l'informatique
●
Prédictions surprenantes
●
Quelques inventions
●
Systèmes d'exploitation
●
Langages de programmation
Université Blaise Pascal
2.1 Prédictions surprenantes
●
●
●
1949, Popular Mechanics : "Computers in the
future may weigh no more than 1.5 tons"
1977, Ken Olson : "There is no reason anyone
would want a computer in their home"
1981, attribué à Bill Gates : "640k ought to be
enough for anybody"
Université Blaise Pascal
2.2 Quelques inventions
●
1645 : machine de Pascal (+ et -)
●
1694 : machine de Liebniez (* et /)
●
1850 : clavier
●
1943 : ENIAC (200 kHz, 4386 switchs manuels)
●
1963 : souris
●
1969 : Arpanet (ancêtre d'Internet)
●
1987 : carte son pour PC
●
1995 : USB
Université Blaise Pascal
2.3 Systèmes d'exploitation
●
1955 : GM Research OS for IBM 701
●
1965 : Multics
●
1969 : Unix
●
1981 : MS-DOS
●
1984 : Macintosh OS
●
1985 : Windows 1.0
●
2004 : Ubuntu
●
2009 : Windows 7
Université Blaise Pascal
2.4 Langages de programmation
●
Langages impératifs
–
●
Langages fonctionnels
–
●
Fortran (1957), C (1972)
Lisp (1959), ML (1973), Caml (1985), OCaml
(1996), F# (2002)
Langages objets
–
C++ (1983), Java (1995), PHP (1997), C# (2001)
Université Blaise Pascal
3. Programmation
●
Qu'est-ce que c'est ?
●
Pourquoi faire ?
●
Comment faire ?
Université Blaise Pascal
3.1 Qu'est-ce que c'est ?
●
Programmation
–
●
Programme
–
●
création de nouveaux programmes
ensemble de commandes pour l'ordinateur
Commande
–
ordre simple (exécution d'un calcul, affichage d'un
résultat, etc.)
Université Blaise Pascal
3.1 Qu'est-ce que c'est ?
●
Exemple de programmes
–
systèmes d'exploitation
–
utilitaires : Microsoft Word, Internet Explorer,
Winamp, etc.
–
jeux
Université Blaise Pascal
3.2 Pourquoi faire ?
●
Quelques objectifs
–
efficacité : réalisation automatique et rapide de
tâches complexes
–
automatisation : commutation téléphonique sans
opérateur humain
–
utilisabilité : utilitaires, jeux
–
sûreté : contrôle aérien, surveillance automatique
Université Blaise Pascal
3.2 Pourquoi faire ?
●
●
Avantages
–
certaines tâches s'automatisent bien
–
une fois le programme fait, il peut être utilisé à
grande échelle avec un faible surcoût
Inconvénients
–
l'écriture d'un programme est une tâche assez
complexe
Université Blaise Pascal
3.3 Comment faire ?
●
Démarche scientifique
–
comprendre le problème posé
–
réfléchir à une solution informatique
–
décrire à l'ordinateur la solution
–
vérifier la solution
Université Blaise Pascal
3.3 Comment faire ?
●
Compréhension du problème
–
●
comprendre l'ensemble du problème et des
contraintes
Réfléchir à une solution informatique
–
algorithmique
–
se fait sans ordinateur
Université Blaise Pascal
3.3 Comment faire ?
●
●
Décrire à l'ordinateur la solution
–
programmation
–
description textuelle (le plus souvent)
–
choix de la manière d'expliquer la solution = choix
du langage de programmation
Vérifier la solution
–
permet de réduire les bugs
Université Blaise Pascal
3.3 Comment faire ?
●
Choix du langage de programmation
–
en fonction des langages connus par le
programmeur + du type de solution trouvé + du
problème
–
nécessite une bonne connaissance du langage de
programmation
Université Blaise Pascal
3.3 Comment faire ?
●
Générations de langages
–
0 : langages binaires
–
1 : langages d'assemblage
–
2 : langages impératifs
–
3 : langages objets
–
4 : langages fonctionnels (dont Caml)
–
5 : langages déclaratifs
Université Blaise Pascal

Documents pareils