La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Informatique générale Ali REIDA 2011 / 2012

Présentations similaires


Présentation au sujet: "Informatique générale Ali REIDA 2011 / 2012"— Transcription de la présentation:

1 Informatique générale Ali REIDA 2011 / 2012 http://www.ali-reida.com ali.reida.estp.etudiants@gmail.com

2 Organisation générale du cours 1 er semestre 4 cours de 3 heures. 4 TDs de 5 heures, le samedi de 8h à 13h Contrôle écrit à la fin du semestre. 2 ème semestre 3 cours de 3 heures 3 TDs de heures, le samedi de 8h à 13h 1 projet à soutenir en fin de semestre.

3 L'enseignement de l'informatique à lESTP Linformatique est un ensemble extrêmement vaste de connaissances, probablement aussi vaste que l'ensemble des sciences expérimentales, et les outils utilisés dans chacun des domaines qui la constituent (la compilation, la cryptologie, l'informatique graphique,...) Bien quelle ne soit pas la vocation première de lESTP, linformatique occupe une place importante dans toutes les formations. Elle est aujourdhui une formation de base pour lingénieur. Autres écoles dingénieurs : –Ecole polytechnique –École des mines - ParisTech –Supélec - Gif-sur-Yvette –Télécom ParisTech –…–…

4 Contenu des cours 1.Introduction générale à linformatique 2.Programmation en java 3.La programmation orientée objet (POO)

5 Linformatique : définition Linformatique - contraction d´information et automatique – est le domaine d'activité scientifique, technique en rapport avec le traitement automatique de linformation par des machines telles que les ordinateurs, les consoles de jeux, Les robots, etc.

6 Généralités Linformatique est issue des mathématiques : cest aussi la mise en œuvre technique et concrète de concepts abstraits. Elle est issue du besoin dautomatiser des calculs et des traitements fastidieux. A bas niveau elle se ramène à des manipulations de 0 et de 1.... quelques rappels sur des notions théoriques de base –algorithme –machine –langage

7 Algorithme ALGORITHME : Désigne une suite précise de calculs nécessaires à la solution dun problème dans une durée limitée. Lappellation algorithme est léquivalent latin dun terme figurant dans louvrage du mathématicien arabe Mohammed Ibn Musa Abu Djefar Al-Khwarizmi.

8 Mesure de la performance dun algorithme Le résultat est obtenu vite ou au bout de plusieurs secondes, minutes, heures… Il faut un modèle plus sérieux Analyse du cas le pire Analyse en moyenne Donald Ervin Knuth Informaticien américain et professeur en Informatique à l'université Stanford (États- Unis)

9 Complexité dun algorithme (1/4) En informatique, on dit quune opération est « complexe » si elle est logiquement possible mais en pratique irréalisable. On distingue deux formes de complexités :

10 Complexité dun algorithme (2/4) Une première forme de « complexité » informatique provient de la représentation des nombres dans la mémoire de lordinateur. Celle-ci ne pouvant contenir quune quantité limitée de chiffres, les calculs informatisés portent sur un sous-ensemble des nombres rationnels, approximations des nombres réels. La précision des calculs est donc limitée même si le nombre de chiffres que contient la mémoire est élevé.

11 Complexité dun algorithme (3/4) Une deuxième forme de « complexité » informatique est liée au nombre de calculs élémentaires que nécessite une opération. Notant n le cardinal de lensemble sur lequel on travaille :

12 Complexité dun algorithme (4/4) Complexité "dans le pire des cas" : situations où les données obligent l'algorithme à un maximum d'itérations. Complexité "dans le meilleur des cas" : situation où les données autorisent l'algorithme à les traiter en un minimum d'itérations. Complexité moyenne : moyenne de toutes les situations possibles.

13 Langages informatiques Un langage est un moyen de communication avec une machine Un moyen de description et de communication dun algorithme l'homme a conçu une série de langages informatiques : –Langage machine –Langage assembleur –Langage évolué : Les langages de scripts (langages interprétés) Les langages compilés –Langage de balisage (langage de marquage) –Langage de requête

14 Langage machine Le langage machine appelé aussi langage binaire, c'est avec ce langage que fonctionnent les ordinateurs. Il consiste à utiliser deux états (représentés par les chiffres 0 et 1) pour coder les informations (texte, images etc.). L'homme travaille quant à lui avec 10 chiffres (0,1,2,3,4,5,6,7,8,9), c'est ce qu'on appelle communément la base décimale.

15 Langage assembleur Le langage assembleur est un langage de bas niveau proche du langage machine qui peut être directement interprété par le microprocesseur de l'ordinateur tout en restant lisible par un humain. L'assembleur a été créé pour faciliter le travail des programmeurs. Il consiste à représenter les combinaisons des valeurs binaires en langage binaire par des symboles faciles à retenir : Pour chaque instruction exprimée en langage machine, le programmeur code ses programmes en langage assembleur, ceux-ci sont ensuite transcrits par un logiciel appelé assembleur en langage machine, puis exécutés par l'ordinateur.

16 Langage assembleur Par exemple, un processeur de la famille x86 reconnaît une instruction du type En langage assembleur, cette instruction est représentée par un équivalent plus facile à comprendre pour le programmeur : Ce qui signifie : « mettre la valeur hexadécimale 61 dans le registre "AL" ».

17 Langage évolué ou langage de haut niveau On désigne par langage évolué tous les langages se situant au dessus des langages de bas niveau (langage machine, assembleur). Le langage évolué est un langage qui accomplit beaucoup pour un minimum de code et d'effort de programmation, il y en a tout un paquet et je cite à titre d'exemple : Pascal, Java, C, C++, C#, Visual Basic (ou VB), Delphi, Python, Perl, PHP, JavaScript, VBscript, ASP etc. Java Langage assembleur Langage machine A + B add A, B 1000110010100000

18 Langage évolué ou langage de haut niveau : Les langages de scripts Un script est une suite de commandes destinées à être exécutées dans leur ordre d'apparition ligne par ligne, instruction par instruction ce qui peut se traduire par une lenteur plus ou moins sensible. A l'instar des langages compilés les langages de scripts emploient aussi des variables, des structures de contrôle (boucles, conditions), quelques exemples : JavaScript, VBscript, PHP, ASP etc.

19 Langage évolué ou langage de haut niveau : Les langages compilés Ces langages sont traduits en langage machine avant leur exécution par un programme compilateur, ces programmes fonctionnent ensuite comme s'ils étaient directement écrits en langage machine. Ce qui se traduit par une plus grande rapidité d'exécution par rapport aux langages interprétés. Quelques exemples : Java, Python, C, C++, Pascal etc.

20 Langage de balisage (langage de marquage) Ces langages reposent sur ce qu'on appelle des balises ou tags, ces derniers sont des étiquettes avec lesquelles on peut étiqueter des données (mots, texte etc.) Parmi ce type de langages il y a le HTML (HyperText Markup Language), le XML, le SGML, XHTML (Extensible HyperText Markup Language).

21 Langages de requêtes Ces langages qualifient le plus souvent les langages propres aux bases de données, ils sont représentés notamment par le SQL (structured query language) en français langage structuré de requêtes, il permet tout simplement de gérer une base de données, par exemple l'interroger, y insérer des données ou en supprimer d'autres, lui demander de faire ressortir des données selon des critères que je lui fixe. On traitera ce langage de manière détaillée dans un prochain cours.

22 Machine Une machine est un objet, réel ou théorique, qui est capable de : –mémoriser un algorithme, –exécuter les opérations élémentaires qui composent cet algorithme, –enchaîner ces opérations élémentaires en respectant lordre imposé par lalgorithme. Exemples de telles machines –La machine de Turing –JVM –Un PC

23 Les types de machines informatiques Ordinateur personnel. Serveur. Ordinateur portable. Smartphone. Etc.

24 Lordinateur personnel Le boitier La carte mère La mémoire vive Le micro-processeur La carte son La carte graphique Le disque dur

25 Zoom sur le micro-processeur (CPU) (1) Le processeur, ou CPU (de l'anglais Central Processing Unit), est le composant de l'ordinateur qui exécute les programmes informatiques. En 1971, la société américaine Intel réussit, pour la première fois, à placer tous les transistors qui constituent un processeur sur un seul circuit intégré donnant ainsi naissance au microprocesseur.

26 Zoom sur le micro-processeur (CPU) (2) Lois de Moore 2300 transistors 28 millions de transistors

27 Linformatique entre matériel et logiciel Utilisateurs Applications Couche matérielle Système dexploitation Logiciel (software) Matériel (hardware)

28 L'organisation des données Loctet est une unité de mesure en informatique mesurant la quantité de données. Un octet est lui-même composé de 8 bits, soit 8 chiffres binaires. Un bit est soit 0, soit 1 (unité binaire). Toutes les autres valeurs d'information sont des combinaisons de bits. bit 0 ou 1 octet 8 bits = 1 caractère (01001000 équivaut à la lettre A) ko (kilooctet) 1 millier d'octets (plus précisément 1024 octets) Mo (mégaoctet) 1 million d'octets Go (gigaoctet) 1 milliard d'octets To (téraoctet) 1000 milliards doctets. Po (pétaoctet) 10 15 octets. Eo (exaoctet) 10 18 octets. Zo (Zettaoctet) 10 21 octets. Yo (Yottaoctet) 10 24 octets. Attention, 1 kilo-bit équivaut à 1024 bits soit 128 octets !

29 Le format dun fichier Un fichier est une suite de données structurée (souvent sous la forme d'une liste d'enregistrements suivant un même format). Le format des données est la manière utilisée pour représenter des données sous forme de nombres binaires.

30 Quelques exemples d'extension.exe programme (exécutable).dll programme windows.bat macro-commande système.txt fichier texte.eps image (Postscript encapsulé).doc texte word ou wordpad.xls tableau excel.jpg image.gif image.png image.bmp image.tif (f)image (format non propriétaire).ico icône.htm (l)texte à la norme html.css feuille de style (de pages html).js programme javascript.zip fichier compacté.rar fichier compacté.arc fichier compacté.arj fichier compacté.mid fichier son (midi).mov multimédia (QuickTime).avi format vidéo Microsoft.mp3 son (norme mpeg 3).mpg vidéo (norme mpeg).xml fichier xml.java un programme java.c un programme c

31 Exemple de format de fichier : xml Jean-Christophe Bernadac François Knab Construire une application XML Eyrolles Paris 1999

32 Exemple de format de fichier : html Page d'exemple HTML Bienvenue sur ma page d'exemple HTML ! Conclusion Vous savez créer une page Web !

33 les systèmes dexploitations Linux Windows Mac

34 Les navigateurs web

35 Les parts de marché des navigateurs Web

36 Licence de logiciel

37 Logiciels et langages

38 Les systèmes dinformations Un système d'information (SI) est un ensemble organisé d'éléments qui permet de regrouper, de classifier, de traiter et de diffuser de l'information sur un phénomène donné.

39 Modes dexposition des systèmes dinformations Un système dinformation peut être accessible à travers un logiciel installé sur la machine de lutilisateur, on parle dans ce cas dun client lourd. Mais il peut être aussi accessible à travers internet, et dans ce cas on parle de client léger.

40 Sécurité informatique La sécurité des systèmes dinformation (SSI) est lensemble des moyens techniques, organisationnels, juridiques et humains nécessaire et mis en place pour conserver, rétablir, et garantir la sécurité du système d'information. Point de vue utilisateur Point de vue système informatique

41 Sécurité du système dinformations Attaque sur un système type site web : Cybercriminalité Intrusion ou tentative dintrusion. Modifier, introduire ou supprimer des données. Entraver à partir de linternet ou du réseau, le bon fonctionnement de votre système dinformation

42 Sécurité du système dinformations Attaque sur un logiciel non connecté au réseau Laccès est réduit Impossible dy accéder physiquement Les failles peuvent être humaines : clés USB, imprimantes non surveillées, keyloggers,…

43 Sécurité des données utilisateur Le protocole HTTP La cryptologie Sites sécurisés, avec du https

44 Internet Internet est le réseau informatique mondial qui rend accessibles au public des services variés comme le courrier électronique, la messagerie instantanée et le World Wide Web, en utilisant le protocole de communication IP (internet protocol). Son architecture technique repose sur une hiérarchie de réseaux, ce qui implique de facto une non-centralisation, lui vaut le surnom de réseau des réseaux.

45 Le protocole de communication TCP/IP le premier protocole de communication par paquets pour répondre à la nécessité de connecter rapidement des ordinateurs différents en cas de guerre. On expérimente cette technologie sur quatre sites et on crée ainsi l'embryon du réseau Arpanet, un projet militaire financé par la Defense Advanced Research Projects Agency (Darpa).

46 Arpanet : premier réseau au monde ARPANET ou Arpanet (acronyme anglais de « Advanced Research Projects Agency Network », souvent typographié « ARPAnet ») est le premier réseau à transfert de paquets développé aux États-Unis par la DARPA. Le projet fut lancé en 1969 et la première démonstration officielle date d'octobre 1972.

47 Arpanet : évolution En 1974, le TCP/IP (Transmission Control Protocol et Internet Protocol) uniformise le réseau Arpanet. Ce système est toujours celui utilisé de nos jours. En 1980, Arpanet se divise en deux réseaux distincts, l'un militaire (MILNET, de « Military Network », qui deviendra le DDN Defense Data Network) et l'autre, universitaire (NSFnet), que les militaires abandonnèrent au monde civil.

48 Arpanet : évolution En 1984, DDN et NSFnet compte déjà près de 4 millions de nœuds interconnectés et plus de 1 000 ordinateurs à travers le monde y sont reliés. Cette même année, le CERN adopte la même architecture réseau pour ses échanges internes. C'est toujours au CERN, en 1991, que l'équipe de Tim Berners Lee invente un protocole simple de mise en ligne de pages reliées entre elles par des hyperliens. Les travaux du CERN sont mis en ligne avec ce protocole. Le système est simple et se diffuse dans le monde entier. L'année suivante, un premier lien entre le CERN et un laboratoire américain est créé via Internet. Toutes ces pages passent d'un usage interne à un usage public lorsque le réseau Internet s'étend et connecte des sites dans le monde entier. Toutes ces pages reliées physiquement entre elles par Internet s'appellent le « World Wide Web ».

49 Réseau étendu : WAN Un réseau étendu souvent désigné par l'anglais Wide Area Network (WAN), est un réseau informatique couvrant une grande zone géographique, typiquement à l'échelle d'un pays, d'un continent, voire de la planète entière. Le plus grand WAN est le réseau Internet.

50 Réseau étendu : WAN

51 Réseau local : LAN Un réseau local, souvent désigné par l'acronyme anglais LAN de Local Area Network, est un réseau informatique tel que les terminaux qui y participent (ordinateurs, etc.) s'envoient des trames au niveau de la couche de liaison sans utiliser de routeur intermédiaire.

52 Les couches applicatives des réseaux informatiques

53 Interconnexion des systèmes dexploitations : Web Services Les services web (en anglais web services) représentent un mécanisme de communication entre applications distantes à travers le réseau internet indépendant de tout langage de programmation et de toute plate-forme d'exécution : –utilisant le protocole HTTP comme moyen de transport. Ainsi, les communications s'effectuent sur un support universel, maîtrisé et généralement non filtré par les pare-feux ; –employant une syntaxe basée sur la notation XML pour décrire les appels de fonctions distantes et les données échangées ; –organisant les mécanismes d'appel et de réponse.

54 Interconnexion des systèmes dexploitations : java & cobol Application CICS (Cobol)Serveur java/JEE Services Web SOAP / XML Requête Cobol Réponse Cobol Requête java Réponse java

55 Le client - serveur L'architecture client/serveur désigne un mode de communication entre plusieurs ordinateurs d'un réseau qui distingue un ou plusieurs clients du serveur.

56 IHM : Interface Homme- Machine Définit, les moyens et outils mis en œuvre, afin qu'un humain puisse contrôler et communiquer avec une machine.

57 Les proxy Un serveur proxy (traduction française de «proxy server», appelé aussi «serveur mandataire») est à l'origine une machine faisant fonction d'intermédiaire entre les ordinateurs d'un réseau local (utilisant parfois des protocoles autres que le protocole TCP/IP) et internet.

58 UML UML (en anglais Unified Modeling Language ou « langage de modélisation unifié ») est un langage de modélisation graphique à base de pictogrammes.

59 Les bases de données : définition Une base de données est un ensemble structuré de données, géré à l'aide d'un ordinateur.

60 Les bases de données : Le stockage des données Dans une table, les termes ligne et enregistrement sont synonymes. Il en est de même pour les termes colonnes et champs

61 Les bases de données : Le logiciel (SGBD) Le logiciel qui gère une base de données s'appelle un système de gestion de base de données. On le désigne généralement par son sigle SGBD

62 Les différents modèles de bases de données Les bases de données du modèle "relationnel" sont les plus répandues (depuis le milieu des années 80 environ). D'autres modèles de bases de données ont été proposés : hiérarchique, en réseau, orienté objet, relationnel objet.

63 Les bases de données : Les éditeurs de SGBD Relationnel propriétaire : 4D - DB2 - dBase - Informix - MaxDB Oracle - SQL Server – Sybase Relationnel libre : Derby - Firebird - Ingres - MariaDB MySQL – PostgreSQL Embarqué : Berkeley DB - SQLite Autre : Access - CouchDB - FileMaker - HSQLDB HyperFileSQL - OpenOffice.org Base - Paradox

64 Normalisation des bases de données relationnelles Le but essentiel de la normalisation est d'éviter les anomalies transactionnelles pouvant découler d'une mauvaise modélisation des données et ainsi éviter un certain nombre de problèmes potentiels tels que les anomalies de lecture, les anomalies d'écriture, la redondance des données et la contre performance.

65 Les formes normales Les formes normales s'emboitent les unes dans les autres, tant et si bien que le respect d'une forme normale de niveau supérieur implique le respect des formes normales des niveaux inférieurs. Dans le modèle relationnel de type OLTP, il existe huit formes normales : –1FN –2FN –3FN –Boyce Codd notée FNBC –4FN –5FN (5NF en anglais) –FNDC (DKNF en anglais) –6FN rarement présentée

66 1FN - première forme normale Relation dont tous les attributs : –contiennent une valeur atomique (les valeurs ne peuvent pas être divisées en plusieurs sous-valeurs dépendant également individuellement de la clé primaire) –contiennent des valeurs non répétitives (le cas contraire consiste à mettre une liste dans un seul attribut). –sont constants dans le temps (utiliser par exemple la date de naissance plutôt que l'âge). Remarque : Le non respect de deux premières conditions de la 1FN rend la recherche parmi les données plus lente parce qu'il faut analyser le contenu des attributs. La troisième condition quant à elle évite qu'on doive régulièrement mettre à jour les données.

67 2FN - deuxième forme normale Respecte la deuxième forme normale, la relation respectant la première forme normale et dont : –Tout attribut ne composant pas un identifiant dépend d'un identifiant.

68 3FN - troisième forme normale Respecte la troisième forme normale, la relation respectant la seconde forme normale et dont : –Tout attribut ne composant pas un identifiant dépend directement d'un identifiant. Remarque : Le non respect de la 3FN peut également entrainer une redondance des données.

69 FNBC - forme normale de Boyce - CoddBoyceCodd Respecte la forme normale de Boyce-Codd, la relation respectant la troisième forme normale et dont : –tous les attributs non-clé ne sont pas source de dépendance fonctionnelle (DF) vers une partie de la clé Remarque : Le non respect de la 2FN, 3FN et la FNBC entraîne de la redondance. Une même information étant répétée un nombre considérable de fois.

70 Le langage SQL SQL (Structured Query Language) est un langage de : –définition de données. –manipulation de données –contrôle de données pour les bases de données relationnelles.

71 Les métiers du développement informatique Le directeur technique

72 Le développeur / Programmeur Les métiers du développement informatique

73 Ladministrateur de bases de données

74 Les métiers du développement informatique Le développeur danimation interactive

75 Les métiers du développement informatique Lintégrateur / Monteur multimédia

76 Les métiers du développement informatique Lexpert en sécurité

77 Langages de programmations

78 Pourquoi Java? Java est un langage de programmation orienté objet et un environnement d'exécution présenté officiellement en 1995. A la base un langage pour Internet. Une évolution forte. Est devenu un langage de programmation très puissant Bénéficie dune large communauté de contributeurs

79 Comment fonctionne Java ?

80 1) Etape de la création du code source 2) Etape de la compilation3) Etape dexécution du programme JDK : Java Development Kit JRE : Java Runtime Environment 4) Le même résultat

81 Fichier de code Java MaClasse.java Compilation javac Byte code MaClasse.class Autres byte code Machine virtuelle Java (JVM) java Exécution Avant exécution Extensions des fichiers java

82 Java est orienté objet POO : Programmation Orientée Objet Java vous permet et vous pousse à développer vos applications d'une façon orientée objet et vous permet d'avoir une application bien structurée, modulable, maintenable beaucoup plus facilement. Cela augmente la productivité.


Télécharger ppt "Informatique générale Ali REIDA 2011 / 2012"

Présentations similaires


Annonces Google