Informatique
CONTEXTE SCIENTIFIQUE
Définition 1 : l’informatique est
la science du traitement automatique de l’information. L’informatique traite de
deux aspects complémentaires : les programmes immatériels (logiciel, software)
qui décrivent un traitement à réaliser et les machines (matériel, hardware) qui
exécutent ce traitement. Le matériel est donc l’ensemble des éléments physiques
(microprocesseur, mémoire, écran, clavier, disques durs. . .) utilisées pour
traiter les données. Dans ce contexte, l’ordinateur est un terme générique qui
désigne un équipement informatique permettant de traiter des informations selon
des séquences d’instructions (les programmes) qui constituent le logiciel. Le
terme ordinateur a été proposée par le philologue Jacques Perret en avril 1955
en réponse à une demande d’IBM France qui estimait le mot « calculateur »
(computer) bien trop restrictif en regard des possibilités de ces machines.
Définition 2 : le matériel informatique est un ensemble de dispositifs
physiques utilisées pour traiter automatiquement des informations.
Définition 3 : le logiciel est un ensemble structurée d’instructions
décrivant un traitement d’informations à faire réaliser par un matériel
informatique. Un ordinateur n’est rien d’autre qu’une machine effectuant des
opérations simples sur des séquences de signaux électriques, lesquels sont
conditionnées de manière à ne pouvoir prendre que deux états seulement (par
exemple un potentiel électrique maximum ou minimum). Ces séquences de signaux
obéissent à une logique binaire du type « tout ou rien » et peuvent donc être
considérés conventionnellement comme des suites de nombres ne prenant jamais
que les deux valeurs 0 et 1 : un
ordinateur est donc incapable de traiter autre chose que des nombres binaires.
Toute information d’un autre type doit être convertie, ou codée, en format
binaire.
L’architecture
matérielle d’un ordinateur repose sur le modèle de Von Neumann
1. L’unité arithmétique et logique, ou
unité de traitement,
effectue les opérations de base.
2. L’unité de contrôle séquence les opérations.
3. La mémoire contient à la fois les données et le
programme qui dira à l’unité de contrôle quels calculs faire sur ces données.
La mémoire se divise entre mémoire vive volatile (programmes et données en
cours de fonctionnement) et mémoire de masse permanente (programmes et données
de base de la machine).
4. Les entrées-sorties sont des dispositifs permettant de
communiquer avec le monde extérieur (écran, clavier, souris. . .). Les 2 premiéres
parties sont souvent rassemblées au sein d’une même structure : le microprocesseur
(la « puce »), unité centrale de l’ordinateur.
Algorithme
Définition 1 : un algorithme est une suite ordonnée d’instructions
qui indique la démarche à suivre pour résoudre une série de problèmes équivalents.
Exemple : Trouver son chemin.
Définition 2 : l’algorithmique est la science des algorithmes.
L’algorithmique s’intéresse à l’art de construire des algorithmes ainsi qu’à
caractériser leur validité, leur robustesse, leur réutilisabilité, leur
complexité ou leur efficacité.
Définition 3 : la validité d’un algorithme est son
aptitude à réaliser exactement la tâche pour laquelle il a été conçu.
Définition 4 : la robustesse d’un algorithme est son
aptitude à se protéger de conditions anormales d’utilisation.
Définition 5 : la réutilisabilité d’un algorithme est
son aptitude à être réutilisé pour résoudre des tâches équivalentes à celle
pour laquelle il a été conçu.
Définition 6 : la complexité d’un algorithme est le
nombre d’instructions élémentaires à exécuter pour réaliser la tâche pour
laquelle il a été conçu.
Définition 7 : l’efficacite d’un algorithme est son
aptitude à utiliser de manière optimale les ressources du matériel qui l’exécute.
Programmation
Un
algorithme exprime la structure logique d’un programme informatique et de ce
fait est indépendant du langage de programmation utilisé. Par contre, la
traduction de l’algorithme dans un langage particulier dépend du langage choisi
et sa mise en œuvre dépend également de la plateforme d’exécution
Le
seul « langage » que l’ordinateur puisse véritablement « comprendre » est donc
trés éloigné de ce que nous utilisons nous-mêmes. C’est une longue suite de 0
et de 1 (les « bits », binary digit) traitées par groupes de 8 (les « octets »,
byte), 16, 32, ou même 64
Définition 1 : un bit est un chiffre binaire (0 ou 1).
C’est l’unité élémentaire d’information.
Définition 2 : un octet est une unité d’information
composée de 8 bits.
Exemple : description
de cle USB
Sur
le descriptif commercial d’une clé USB, on peut lire : – Type de produit : Lecteur flash USB – Taille du module : 512 Mo – Type
d’interface : Hi-Speed USB La « taille du module » est la capacité de
stockage de la clé qui vaut ici 512 Mo (mégaoctets).
Le
préfixe « méga » est un multiplicateur décimal qui vaut 10 exposant 6 mais s’il
est bien adapté au calcul décimal, il l’est moins au calcul binaire car il ne correspond
pas à une puissance entière de 2.
En
effet, la puissance x de 2 telle que 2 exposant x = 10 exposant 6 vaut x = 6 •
log(10) / log(2) ≈ 19.93.
On
choisit alors lapuissance entière de 2 immédiatement supérieure (2²° = 1 048
576) pour définir le Mo : 1 Mo = 1 048 576 octets
Pour
« parler » à un ordinateur, il nous faudra donc utiliser des systèmes de
traduction automatiques, capables de convertir en nombres binaires des suites
de caractères formant des mots-clés (anglais en général) qui seront plus significatifs
pour nous.
Le
système de traduction proprement dit s’appellera interpréteur ou bien
compilateur, suivant la méthode utilisée pour effectuer la traduction
Définition 1 : un compilateur est un programme
informatique qui traduit un langage, le langage source, en un autre, appelé le
langage cible.
Définition 2 : un interpréteur est un outil
informatique (logiciel ou matériel) ayant pour tâche d’analyser et d’exécuter
un programme écrit dans un langage source.
Un
langage de programmation se distingue du langage mathématique par sa visée
opérationnelle (ie. il doit être exécutable par une machine), de sorte qu’un
langage de programmation est toujours un compromis entre sa puissance
d’expression et sa possibilité d’exécution.
Définition 3 : un langage de programmation est un
langage informatique, permettant à un humain d’écrire un code source qui sera
analysé par un ordinateur.
Le
code source subit ensuite une transformation ou une évaluation dans une forme
exploitable par la machine, ce qui permet d’obtenir un programme.
Les
langages permettent souvent de faire abstraction des mécanismes bas niveaux de
la machine, de sorte que le code source représentant une solution puisse être
rédigé et compris par un humain.
Définition 4 : la programmation est l’activité de rédaction
du code source d’un programme.
Compilation : la compilation consiste à traduire la
totalité du code source en une fois.
Le
compilateur lit toutes les lignes du programme source et produit une nouvelle
suite de codes appelé programme objet (ou code objet). Celui-ci peut désormais
être exécuté indépendamment du compilateur et être conservé tel quel dans
un fichier (« fichier exécutable »).
Les
langages Ada, C, C++ et Fortran sont des exemples de langages compilés.
Interprétation : l’interprétation consiste à traduire
chaque ligne du programme source en quelques instructions du langage machine, qui
sont ensuite directement exécutées au fur et à mesure (« au fil de l’eau »).
Aucun programme objet n’est généré.
L’interpréteur
doit être utilisé chaque fois que l’on veut faire fonctionner le programme. Les
langages Lisp et Prolog sont des exemples de langages interprétés.
L’interprétation est idéale lorsque l’on est en phase d’apprentissage du
langage, ou en cours d’expérimentation sur un projet.
Avec
cette technique, on peut en effet tester immédiatement toute modification
apportée au programme source, sans passer par une phase de compilation qui
demande toujours du temps. Mais lorsqu’un projet comporte des fonctionnalités complexes
qui doivent s’exécuter rapidement, la compilation est préférable : un programme
compilé fonctionnera toujours plus vite que son homologue interprété, puisque
dans cette technique l’ordinateur n’a plus à (re)traduire chaque instruction en
code binaire avant qu’elle puisse être exécutée.
Semi-compilation : certains langages tentent de combiner
les deux techniques afin de retirer le meilleur de chacune. c’est le cas des
langages Python et Java par exemple.
De
tels langages commencent par compiler le code source pour produire un code
intermédiaire, similaire à un langage machine (mais pour une machine
virtuelle), que l’on appelle bytecode, lequel sera ensuite transmis à un
interpréteur pour l’exécution finale. Du point de vue de l’ordinateur, le
bytecode est très facile à interpréter en langage machine. Cette interprétation
sera donc beaucoup plus rapide que celle d’un code source. Le fait de disposer
en permanence d’un interpréteur permet de tester immédiatement n’importe quel
petit morceau de programme. On pourra donc vérifier le bon fonctionnement de
chaque composant d’une application au fur et à mesure de sa construction.
L’interprétation du bytecode compilé n’est pas aussi rapide que celle d’un véritable
code machine, mais elle est satisfaisante pour de très nombreux programmes.
La taxonomie
de Bloom qui constitue une référence pédagogique
pour la classification des niveaux d’apprentissage
1. Connaissance : mémorisation et restitution
d’informations dans les mêmes termes.
2. Compréhension : restitution du sens des informations
dans d’autres termes.
3. Application : utilisation de règles, principes ou
algorithmes pour résoudre un problème, les règles n’étant pas fournies dans
l’énoncé.
4. Analyse : identification des parties constituantes
d’un tout pour en distinguer les idées.
5. Synthèse : réunion ou combinaison des parties pour former un tout.
5. Synthèse : réunion ou combinaison des parties pour former un tout.
6. Evaluation : formulation de jugements qualitatifs ou
quantitatifs.
ORGANISATION
Trois qualités comportementales chez l’informaticien débutant : la rigueur, la persévérance et
l’autonomie.
La rigueur : même
si un humain peut transiger sur le « ; », la machine ne le peut pas :
l’ordinateur ne se contente pas de l’« à peu près ». La respect des consignes,
la précision et l’exactitude sont donc de rigueur en informatique !
Persévérance : Face
à l’intransigeance de la machine, le débutant est confronté à ses nombreuses
erreurs (les siennes, pas celles de la machine !) et sa tendance naturelle est
de passer à autre chose. Mais le papillonnage (ou zapping) est une très
mauvaise stratégie en informatique : pour s’exécuter correctement, un programme
doit être finalisé. L’informatique nécessite d’« aller au bout des choses ».
Autonomie :
Programmer soi-même les algorithmes qu’on a définis est sans doute le meilleur
moyen pour mieux assimiler les principales structures algorithmiques et pour
mieux comprendre ses erreurs en se confrontant à l’intransigeante impartialité
de l’ordinateur, véritable « juge de paix » des informaticiens. Par ailleurs,
l’évolution continuelle et soutenue des langages de programmation et des
ordinateurs nécessitent de se tenir à jour régulièrement et seule
l’autoformation systématique permet de « ne pas perdre pied ». Pratique personnelle
et autoformation constituent ainsi deux piliers de l’autonomisation nécessaire
de l’apprenti informaticien.
vous avez un enfant de 3 à 11 ans ou bien vous encadrez des enfants à l'école primaire ? La distribution PrimTux peut transformer un ordinateur (même très ancien) en environnement adapté aux enfants avec des outils et des ressources pédagogiques adaptés à leur âge.
Dérivée de Debian, PrimTux est une distribution Linux libre et gratuite pour les enfants de l'école primaire : PS, MS, GS, CP, CE1, CE2, CM1 et CM2. Elle propose des environnements de travail adaptés selon les différents niveaux de la scolarité avec des applications, des jeux et des ressources pédagogiques diverses.
Dérivée de Debian, PrimTux est une distribution Linux libre et gratuite pour les enfants de l'école primaire : PS, MS, GS, CP, CE1, CE2, CM1 et CM2. Elle propose des environnements de travail adaptés selon les différents niveaux de la scolarité avec des applications, des jeux et des ressources pédagogiques diverses.
Le Registre est une base de données utilisée pour stocker la configuration de Windows. Il contient des informations et les différents réglages concernant le matériel, les logiciels, les utilisateurs et les préférences de votre PC.
A chaque fois que vous modifiez un paramètre d'un module du Panneau de Configuration ou installez un logiciel, les changements sont répercutés et stockés dans le Registre.
A chaque fois que vous modifiez un paramètre d'un module du Panneau de Configuration ou installez un logiciel, les changements sont répercutés et stockés dans le Registre.
|
|
Les feuilles de style en cascade, généralement appelées CSS de l'anglais Cascading Style Sheets, forment un langage informatique qui décrit la présentation des documents HTML et XML. Les standards définissant CSS sont publiés par le World Wide Web Consortium (W3C). Introduit au milieu des années 1990, CSS devient couramment utilisé dans la conception de sites web et bien pris en charge par les navigateurs web dans les années 2000. Lier une feuille de style - Décomposition de la syntaxe de la balise link - Décomposons ensemble la CSS Les propriétés - Feuille de style externe ou interne ? - Pourquoi ma feuille de style est ignorée ? Les différents types de media |
Le langage PHP est un langage de programmation qu'on utilisait, au début, pour concevoir des sites Web dynamiques. Aujourd'hui, l'utilisation de PHP ne se limite plus à la conception de sites web ; elle dépasse ce cadre et est fort appréciée dans l'industrie de l'informatique pour - entre autres - l'accompagnement de la gestion des bases de données et l'administration système. Le PHP s'appuie sur le langage HTML qu'il complète et – en quelque sorte – améliore. Il permet d'interagir avec des bases de données hébergées sur des serveurs informatiques. Qu'est-ce qu'un site dynamique ? |
|
Aucun commentaire:
Enregistrer un commentaire
Remarque : Seul un membre de ce blog est autorisé à enregistrer un commentaire.