ALT_IMG

C#

Un programme : qu'est-ce que c'est ? Comme vous le savez, votre ordinateur exécute des programmes pour effectuer des tâches. Vous utilisez des programmes tous les jours : votre navigateur web ; votre traitement de texte ; votre lecteur de musique ; vos jeux vidéo. Ce sont tous des programmes ! Votre ordinateur ne peut exécuter ces programmes que s'ils sont écrits dans le seul langage qu'il comprend, le binaire : L'ordinateur.Lire plus...

ALT_IMG

Mysql

Base de données Une base de données informatique est un ensemble de données qui ont été stockées sur un support informatique, et organisées et structurées de manière à pouvoir facilement consulter et modifier leur contenu.On va utiliser une base de données MySQL pour stocker toutes les données du site : les news (avec la date de publication, le titre, le contenu.Lire plus...

Alt img

Php

Avant toutes choses ! Descriptif Avant de commencer à écrire vos pages en PHP, il faut d'abord connaître un minimum de choses sur ce formidable langage. PHP (officiellement, ce sigle est un acronyme récursif pour "PHP: Hypertext Preprocessor") est un langage de scripts généraliste, Open Source, et spécialement conçu pour le développement d'applications web.Lire plus...

ALT_IMG

Sql server

Apprendre le SQL Le SQL (Structured Query Language) est un langage permettant de communiquer avec une base de données. SQL.sh recense des cours de SQL et des explications sur les principales commandes pour lire, insérer, modifier et supprimer des données dans une base. Cours Les cours ont pour but d’apprendre.Lire plus...

ALT_IMG

UML

Le langage de modélisation UML, Unified Modeling Language, a comme objectif de représenter un "système informatique ou logiciel" en privilégiant des modèles ou représentations visuelles qui sont plus aisées à utiliser que des narrations textuelles ou formelles.Lire plus...

samedi 19 avril 2014

8 - Pourquoi avoir inventé la console ?

1 commentaires
logo linux

On va commencer par répondre à cette question hautement fondamentale :
Mais pourquoi ont-ils inventé la console au lieu de l'interface graphique, d'abord ? C'est quand même plus pratique une interface graphique avec une souris ; c'est plus intuitif ! C'est juste pour faire pro, faire compliqué pour faire compliqué et s'assurer que l'informatique reste seulement à la portée de quelques initiés ? Pourquoi ne pas avoir supprimé la console ? C'est archaïque ! (ce sont les questions que vous devez vous poser, je me trompe ?)
Que nenni ! Il y a une explication à tout ; voici une réponse point par point.

Pourquoi avoir inventé la console d'abord, au lieu de l'interface graphique ?

Pour ça, je vous ai mis la puce à l'oreille dès le premier chapitre. La réponse est : parce qu'on n'avait de toute façon pas le choix ! Les débuts de l'informatique et de la console remontent aux débuts des années 70, à une époque où un écran 2 couleurs était un luxe inimaginable et où la puissance de calcul de ces ordinateurs était cent fois plus faible que celle de la calculatrice Casio de ma petite sœur. Bref, vous voyez le genre.
On ne dirait pas comme ça, mais gérer une interface graphique avec plusieurs couleurs ainsi qu'une souris et un certain nombre de fonctionnalités avancées qui vous paraissent aujourd'hui « normales », ça demande de la puissance ! La console était donc à cette époque la seule façon d'utiliser un ordinateur.

L'interface graphique avec la souris, c'est quand même plus intuitif !

Alors là, tout à fait d'accord avec vous. On dira ce qu'on voudra, mais la console n'est PAS intuitive. Quand on débute en informatique, il est de loin plus simple d'appréhender l'interface graphique. En revanche, je suis aujourd'hui persuadé que l'interface graphique de Linux (que ce soit KDE, Unity ou une autre) est aussi intuitive que celle de Windows et de Mac OS. Ça n'a pas toujours été forcément le cas, mais un débutant total en informatique n'aura pas plus de mal à appréhender l'interface graphique de Linux que celle de Windows ; ça, j'en suis totalement convaincu.

Est-ce que c'est juste pour faire pro, inutilement compliqué ?

Les commandes de la console vont peut-être vous sembler être du chinois les premiers temps, et vous allez vous demander à coup sûr si cet amas de lettres vide de sens n'est pas là juste pour faire en sorte que le moins de monde possible puisse utiliser la console (sous-entendu : « Seuls les programmeurs qui ont inventé la console devraient pouvoir l'utiliser. »). Ça, par contre, c'est totalement faux. Tout a été minutieusement pensé, et ce dès les années 60.
  • Les commandes sont courtes, abrégées. C'est pour gagner du temps et aller plus vite. Écrire pwdest moins intuitif que diredansquelrepertoirejesuis, mais après l'avoir écrit deux cents fois dans la journée, vous bénirez les programmeurs qui ont fait ce choix, croyez-moi !
  • Les commandes ne sont pas intuitives. Faux. Il s'agit bien souvent d'une abréviation de termes (en anglais, of course !) et les lettres qu'il faut taper sont généralement choisies en fonction de leur proximité les unes par rapport aux autres pour que vous ayez le moins possible à déplacer les doigts sur le clavier ! Bon, d'accord : à la base, c'est plutôt fait pour les claviers QWERTY anglais qui sont – je le reconnais – plus adaptés pour accéder aux symboles du genre { ] | #, etc. Mais vous n'en mourrez pas. ;-)

Pourquoi ne pas avoir supprimé la console ? C'est archaïque !

Depuis l'invention de l'interface graphique, on pourrait se demander pourquoi on n'a pas supprimé la console (sous-entendu : « Elle ne sert plus à rien »). C'est là que beaucoup se trompent complètement : on met un peu de temps à s'y faire, mais quand on sait s'en servir, on va beaucoup plus vite avec la console qu'avec l'interface graphique. C'est même pire en fait : vous vous rendrez compte à un moment qu'il y a des choses que seule la console peut faire et qu'il serait de toute façon vraiment inutile de recourir à une interface graphique pour les effectuer.
Un exemple ? En mode graphique, allez dans un répertoire qui contient beaucoup de fichiers en tout genre : des fichiers texte, des images, des vidéos… Vous voudriez savoir combien il y a d'images JPEG dans ce dossier : pas facile hein ? :-D
En console, en assemblant quelques commandes, on peut obtenir ce résultat sans problème !
ls -l | grep jpg | wc -l
510
La première ligne est la commande que j'ai tapée, la seconde le résultat. Il y avait donc 510 images JPEG dans le dossier, et on a obtenu le résultat en moins d'une seconde !
On peut même faire encore plus fort et enregistrer directement ce nombre dans un fichier texte :
ls -l | grep jpg | wc -l > nb_jpg.txt

… et on peut aussi envoyer le fichier nb_jpg.txt sur Internet par FTP ou à un ami par e-mail, le tout en une ligne !
La console n'est donc pas morte et n'a pas du tout prévu de l'être !
La plupart des commandes de la console de Linux sont des « copies » d'Unix, ce vieil OS dont je vous ai parlé au tout début, ancêtre parmi les ancêtres. N'allez pas croire que les programmes d'Unix ont été copiés ou « piratés » par Linux ; c'est juste que leur mode d'emploi est le même. Les programmes ont été réécrits par un groupement de programmeurs issus de ce qu'on appelle le projet GNU.
Ce projet a fusionné au bout de quelque temps avec le cœur du système d'exploitation Linux pour donner au final GNU/Linux, qu'on écrit en pratique juste « Linux » car c'est plus court. Mais tout ça, je vous l'ai déjà dit dans le premier chapitre.
L'avantage ? Les commandes n'ont pas bougé et ne bougent pas depuis l'époque d'Unix (soit depuis les années 60). Ce sont les mêmes. Quelqu'un qui utilisait Unix dans les années 60 est capable de se débrouiller avec un Linux d'aujourd'hui. Et il y a fort à parier que ce sera pareil pour les nombreuses années à venir. Vous avez donc juste à apprendre à vous en servir une fois. O.K., il y aura du boulot, mais après ce sera quelque chose qui pourra vous servir toute votre vie !
80919
Ouvrir une console sous MAC OS X
Continue reading →
vendredi 18 avril 2014

1 - Introduction

0 commentaires
logo linux

Est-ce que vous avez déjà entendu parler de Windows ? Non, je ne vous prends pas pour des idiots, je commence juste à partir de zéro ! ;)
Aujourd'hui, la quasi-totalité des PC (si ce n'est plus !) est « livrée avec Windows ». Mais savez-vous ce que cela signifie ?
Oui, moi je sais ! Ça signifie qu'on voit marqué « Windows » au démarrage de l'ordinateur !
Non… ce n'est pas ça ?
Oui allez, disons que c'est un bon début.

Le boot : démarrage de l'ordinateur

En fait, Windows se lance presque en premier. Si vous regardez bien, vous pouvez constater que c’est quelque chose d’autre qui s'affiche à l'écran au cours des toutes premières secondes. Cette « autre chose » est ce qu'on appelle l'écran de boot. Je ne vais pas vous faire de capture d'écran comme pour Windows car cet écran de boot varie beaucoup selon les ordinateurs.
Pourquoi ? Parce qu'il dépend du matériel dont est constitué votre ordinateur. C'est en effet la carte mère qui affiche l'écran de boot. La carte mère est le composant fondamental de tout ordinateur, c'est elle qui fait travailler le processeur, les disques durs, le lecteur de CD-ROM, etc.
On a donc dans l'ordre :
  1. écran de boot ;
  2. démarrage de Windows.
C'est seulement une fois que Windows est chargé que vous pouvez enfin utiliser vos programmes : jeux, Internet, logiciels de dessin, de mail, de musique…
Mais pourquoi faut-il que Windows se charge d'abord ? Pourquoi ne pourrait-on pas lancer des jeux dès le démarrage de l'ordinateur ?
Parce que… votre ordinateur a besoin d'une sorte de « superlogiciel » qui soit le chef d'orchestre. C'est lui qui doit gérer la mémoire de votre ordinateur, la répartir entre tous les programmes. Il fait le lien entre votre matériel (carte graphique, mémoire, imprimante) et vos logiciels. Et c'est un sacré boulot, croyez-moi ! ;-)
Ce « superlogiciel » s'appelle le système d'exploitation. Windows est donc un système d'exploitation.
Si on résume l'ordre des choses, au final nous avons donc cela :
  1. écran de boot ;
  2. démarrage du système d'exploitation (Windows) ;
  3. lancement des programmes (jeux, Internet, mail…).
Si vous préférez les schémas (je vous conseille de vous y habituer car j’y aurai souvent recours par la suite :) ), reportez-vous à la figure suivante.
11642

Linux est un système d'exploitation

Et Linux dans tout ça ?
Rassurez-vous, je ne l'ai pas oublié ! Maintenant que vous savez un peu mieux ce qu'est un système d'exploitation (un OS), je peux vous dévoiler la vérité : Linux est un système d'exploitation, au même titre que Windows ou encore Mac OS (pour ceux qui ont un Mac).
Il est réputé entre autres pour sa sécurité et pour ses mises à jour plus fréquentes que Windows ; mais tout cela, vous allez le découvrir petit à petit.
Ce qu'il faut retenir pour le moment est le principe de base de Linux : c'est vous qui contrôlez votre ordinateur. Ce n'est donc pas par hasard si ce cours s'appelle « Reprenez le contrôle à l'aide de Linux ! ». Vous allez enfin comprendre ce que vous faites et donc mieux appréhender le fonctionnement de l’informatique !
Peut-on faire cohabiter deux OS sur son ordinateur ? Je n'ai pas envie de supprimer Windows pour le remplacer par Linux !
Beaucoup de gens croient qu'il faut faire un choix : Linux ou Windows. Rien n'est plus faux : vous pouvez très bien avoir deux OS (ou plus !) installés sur votre ordinateur.
Dans ce cas, juste après l'écran de boot, vous aurez un programme appelé Boot Loader qui s'affichera pour que vous puissiez faire votre choix. Le boot loader dont nous parlerons ici porte le doux nom deGRUB.
Celui-ci vous proposera de choisir entre Windows et Linux à chaque démarrage de l'ordinateur. GRUB lancera l'OS par défaut si vous ne faites pas de choix avant quelques secondes. C'est vous qui choisissez l'OS par défaut, bien entendu ; on ne vous impose rien.
Le schéma du démarrage de l'ordinateur change donc un peu, comme le montre la figure suivante.
11643
Comme vous pouvez déjà le voir sur ce schéma, lorsque vous êtes sous Linux, vous utilisez des programmes faits pour Linux et non pas les programmes de Windows. En effet, les programmes Windows ne fonctionnent pas sous Linux et inversement.
Vous devez déjà vous dire : « Aïe, si je ne peux plus utiliser les programmes de Windows auxquels je suis habitué, je ne vais pas m'en sortir ». Pourtant, il ne faut pas longtemps pour s'adapter (deux ou trois jours suffisent, voire même une soirée si vous êtes curieux !) et les programmes sous Linux ont d'énormes avantages :
  • ils sont gratuits : vous verrez que sous Linux, presque tous les programmes sont gratuits ;
  • les logiciels sont souvent mis à jour et ce toujours gratuitement ! Vous verrez donc fréquemment vos logiciels préférés évoluer et n'aurez pas à payer trois cents euros pour vous mettre à jour !
  • certains de ces logiciels sont meilleurs que ceux que l'on trouve sous Windows. D'ailleurs, certains n'existent même pas sous Windows ! Vous découvrirez de nouvelles fonctionnalités et finirez par gagner du temps tout en utilisant plus efficacement votre ordinateur.
Mais pourquoi les programmes sont-ils gratuits ? Ce n'est pas complètement suicidaire financièrement ?
C'est justement ce que je vais vous expliquer maintenant.
Continue reading →

1 - introduction

0 commentaires
reseaux20informatique2006 024311200 0901 200220


Le terme générique « réseau » définit un ensemble d'entités (objets, personnes, etc.) interconnectées
les unes avec les autres. Un réseau permet ainsi de faire circuler des éléments matériels ou
immatériels entre chacune de ces entités selon des règles bien définies.
-> réseau informatique: ensemble d'ordinateurs reliés entre eux grâce à des lignes physiques et
échangeant des informations sous forme de données numériques.

Un ordinateur est une machine permettant de manipuler des données. L'homme, en tant qu'être communiquant, a
rapidement compris l'intérêt qu'il pouvait y avoir à relier ces ordinateurs entre-eux afin de pouvoir échanger des
informations.

Un réseau informatique peut servir plusieurs buts distincts :
- Le partage de ressources (fichiers, applications ou matériels, connexion à internet, etc.)
- La communication entre personnes (courrier électronique, discussion en direct, etc.)
- La communication entre processus (entre des ordinateurs industriels par exemple)
- La garantie de l'unicité et de l'universalité de l'accès à l'information (bases de données en réseau)
- Le jeu vidéo multijoueurs

Les différents types de réseaux ont généralement les points suivants en commun :
- Serveurs : ordinateurs qui fournissent des ressources partagées aux utilisateurs par un serveur de réseau
- Clients : ordinateurs qui accèdent aux ressources partagées fournies par un serveur de réseau
- Support de connexion : conditionne la façon dont les ordinateurs sont reliés entre eux.
- Données partagées : fichiers accessibles sur les serveurs du réseau
Imprimantes et autres périphériques partagés : fichiers, imprimantes ou autres éléments utilisés par les usagers du réseau
- Ressources diverses : autres ressources fournies par le serveur

On distingue différents types de réseaux selon leur taille (en terme de nombre de machines), leur vitesse
de transfert des données ainsi que leur étendue.
On fait généralement trois catégories de réseaux :
- LAN (local area network)
- MAN (metropolitan area network)
- WAN (wide area network)
Continue reading →
jeudi 17 avril 2014

1- Introduction

0 commentaires
Access

Avant de commencer, regardons quelques-uns des avantages d'une base de données.
+Accès à l'information plus rapidement et facilement.
+Toute l'information se retrouve à une seule place; dans votre base de données.
+Plus besoin d'essayer de regrouper l'information qui provient de plusieurs sources.
+Recherche Ad hoc facile.
Ex.: Combien me reste-t-il en stock du produit X? Qui sont mes dix clients les plus importants en ce moment? Quels produits sont mes meilleurs vendeurs? Quels sont mes meilleurs représentants?
+Meilleur suivi de l'information.
+Meilleure gestion des données.
+Meilleure analyse des données.
+Meilleure prise de décision.
+Mieux apte à répondre aux besoins de la clientèle.
+Automatisation de certaines tâches répétitives.
POURQUOI APPRENDRE UNE BASE DE DONNÉES RELATIONNELLE?
Ce type de base de données a plusieurs avantages comparés à une base de données simple aussi appelée "flat file". Elle utilise beaucoup moins d'espace parce qu'elle réduit au minimum les redondances ou les répétitions des données. Pour mieux comprendre l'avantage d'un système de gestion de base de données relationnel (SGBDR), utilisons un exemple de factures pour comparer ces deux types de BD et pour montrer certains concepts de base d'un SGBDR.
Regardons quelques-unes des données que l'on retrouve normalement sur une facture:
Ex.: Date, Numéro de facture, Numéro du vendeur, Numéro du produit, Quantité vendue, Prix unitaire, Description du produit, sous total, Taxes, Total ...
Voici quelques-unes de ces données dans un BD simple.
No. FactureClientProduitDescriptionPrix UnitaireQté ...
1001ABC415TRIANGLE12.7550
1002ABC416CARRÉ10.0020
1003XYZ415TRIANGLE12.7575

L'idée d'une base de données relationnelle est de répartir les données dans plusieurs BD ou tables et de créer des connexions, des points communs, des liens, des relations entre chacune d'elles. Voici comment les variables pourraient être divisées dans une BD relationnelle.

FactureClientVendeurInventaire
No. FactureNo. ClientNo. VendeurNo. Produit
No. ProduitAdresseNomDescription
Qté vendueCode PostalPrénomPrix unitaire
No. VendeurNo. téléphoneNo. Ass. Soc.Qté disponible
No. ClientPersonne autoriséeDate d'embaucheQté commandée

Dans le tableau précédent, la table FACTURE va chercher les informations sur le client de la table CLIENT par le champ commun NO. CLIENT. Il est inutile de réécrire les données du client plusieurs fois. On peut aller chercher l'information grâce à une relation entre ces deux tables: soit par le champ No. Client. La même chose se produit pour les informations nécessaires pour les tables VENDEUR et INVENTAIRE par leurs variables communes NO. VENDEUR et NO. PRODUIT respectivement.
De cette manière, il est inutile de réécrire les données redondantes ou répétitives. Ceci conserve de l'espace pour d'autres données. Pour les trois factures de l'exemple, on économise de l'espace et du temps à ne pas avoir à réécrire les informations sur le client ABC ni la description et le prix unitaire du produit 415.

Définitions

L'utilisation d'une base de données apporte aussi de nouveaux termes à comprendre. Voici une liste des termes qui seront utilisés pour toutes les pages sur les sujets d' Access. 
Champ :Une information nécessaire sur une personne, une chose ou un événement. Ex.: couleur, taille, modèle, date, nom, prénom, téléphone, adresses, description, commentaires etc.
Enregistrement:Un regroupement de champs qui décrient une personne, une chose ou un événement. Ex.: nom, prénom, date de naissance, téléphone, numéro d'assurance sociale ou compagnie, adresse, téléphone, télécopieur, personne responsable ou département, personne responsable, téléphone.
Le champ téléphone est utilisé de trois manières différentes. Il est soit le numéro de téléphone d'un employé, d'une personne dans une compagnie ou d'un département.
Table:Un regroupement d'enregistrements sur un thème un commun. Ex.: employés, inventaire, client, fournisseurs, véhicules, contacts etc.
Base de données :Un regroupement de tables, de requêtes, de formulaires, et de rapports et de programmation qui constitue un système complet. Ex.: gestion de la facturation, gestion de l'inventaire, immatriculation des véhicules, carnet de numéro de téléphone, réservations etc.

La définition d'une base de données prend maintenant un sens plus large qu'auparavant. Ce n'est plus juste un fichier qui contient de l'information utile pour l'utilisateur. Il contient aussi les requêtes, les formulaires, les états, les macros et les modules pour développer une "application" ou un "système" qui répond aux besoins spécifiques de l'utilisateur.
Continue reading →

2 - Les distributions de Linux

0 commentaires
logo linux

Linux est un système d'exploitation très riche, vous allez pouvoir le constater. On peut y trouver de nombreux logiciels différents et il existe des centaines de façons distinctes de l'installer.
Pour simplifier la vie des utilisateurs et leur permettre de faire un choix, différentes distributions de Linux ont été créées. C'est un concept qui n'existe pas vraiment sous Windows. C'est un peu comme la différence entre Windows 7 Familial et Windows 7 Professionnel, mais cela va bien plus loin que ça.
Voici ce qui peut différer d'une distribution à l'autre :
  • l'installation : elle peut être très simplifiée comme très compliquée ;
  • la gestion de l'installation des programmes. Si elle est bien faite et centralisée, elle peut rendre l'installation de nouveaux logiciels plus simple que sous Windows, comme nous le verrons plus loin !
  • les programmes préinstallés sur l'ordinateur (Windows est par exemple livré avec Internet Explorer et Windows Media Player).
En fait, une distribution est en quelque sorte l'emballage de Linux. Le cœur, lui, reste le même sur toutes les distributions.
Quelle que soit la distribution que vous installez, vous obtenez un Linux compatible avec les autres. Certaines distributions sont juste plus ou moins faciles à prendre en main. ;-)

Les différentes distributions existantes

Il existe un grand nombre de distributions Linux différentes. Difficile de choisir, me direz-vous : en effet, la première fois, on ne sait pas trop pour laquelle opter… surtout que toutes sont gratuites ! Rassurez-vous, je vais vous aider à faire votre choix.
Je ne vais pas dresser la liste de toutes les distributions existantes, mais voici au moins les principales :
  • Slackware : une des plus anciennes distributions de Linux. Elle existe encore aujourd'hui !
  • Mandriva : éditée par une entreprise française, elle se veut simple d'utilisation ;
  • Red Hat : éditée par une entreprise américaine, cette distribution est célèbre et très répandue, notamment sur les serveurs ;
  • SuSE : éditée par l'entreprise Novell ;
  • Debian : la seule distribution qui soit gérée par des développeurs indépendants plutôt que par une entreprise. C'est une des distributions les plus populaires.
Comme je vous l'ai dit, quelle que soit la distrib' (abréviation de distribution) que vous choisirez, vous aurez un Linux. Grosso modo, vous aurez « juste » un fond d'écran au premier démarrage et différents logiciels préinstallés (je simplifie un peu beaucoup, mais l'idée est là).

La distribution Debian


Pourquoi Debian ? Tout d’abord parce qu'il nous faut bien faire un choix.
Ensuite parce que c'est la seule distribution qui soit gérée par des gens comme vous et moi (enfin, assez doués en programmation tout de même). Les autres distributions sont gérées par des entreprises, ce qui ne les empêche pas d'être « Open Source » et gratuites, même si nous pouvons également les acheter pour avoir droit à une assistance (hotline…).
Debian est donc la seule distribution éditée par des particuliers bénévoles à travers le monde. Jetez un œil à la carte (figure suivante) pour vous faire une idée.
Un autre gros avantage de Debian est le gestionnaire de paquets apt-get. C'est un programme qui gère tous les logiciels installés et qui vous permet de les désinstaller en un rien de temps. D'autre part, tous les logiciels sont centralisés en un même endroit, ce qui fait que vous n'avez pas à parcourir tout le Web pour retrouver un programme.
En fait, vous avez juste à indiquer le nom du logiciel que vous désirez : Debian ira le télécharger et l'installer pour vous. C'est extrêmement simple d'utilisation, je vous montrerai cela !
Debian a tellement de succès que de nombreuses distributions sont basées sur Debian :
  • Knoppix ;
  • Skolelinux ;
  • Ubuntu ;
Ce sont donc des… distributions de distributions. :-)
O.K. : vous trouvez que ce n'est pas clair. Très bien, très bien, je ne vais pas le prendre mal, je vais vous proposer… un nouveau schéma (figure suivante) !
11646
Certaines distributions sont spécialisées. Par exemple, Skolelinux est faite pour être utilisée dans des écoles et est livrée avec de nombreux logiciels éducatifs (gratuits, bien sûr !).
Quant à Ubuntu (figure suivante), c'est la distribution qui a créé la surprise. Elle est devenue très populaire en peu de temps. Pourquoi ? Il y a plusieurs raisons à cela.
  • Elle est prévue pour le grand public, c'est-à-dire des gens comme vous et moi qui n'ont pas envie de se prendre la tête pour utiliser leur ordinateur. Le slogan est « Linux for human beings », ce qui signifie « Linux pour des êtres humains ». Cela veut tout dire.
  • Les mises à jour sont fréquentes : les développeurs travaillent d'arrache-pied et une nouvelle version de la distribution sort tous les six mois environ, ce qui vous permet de disposer des dernières nouveautés.
  • Il y a beaucoup d'utilisateurs, donc beaucoup de gens pour vous aider si vous avez des questions (un point à ne pas négliger !).
C'est entre autres pour toutes ces raisons que nous allons utiliser Ubuntu dans cet ouvrage. Nous verrons dans le prochain chapitre comment l'essayer sans l'installer puis comment l'installer tout court si vous êtes conquis et décidés.

En résumé

  • Le système d'exploitation est l'outil qui fait le lien entre votre machine et vos programmes.
  • Windows, Mac OS et Linux sont les systèmes d'exploitation les plus connus.
  • Linux a la particularité d'être libre, c'est-à-dire que son code source (sa recette de fabrication) est ouvert : tout le monde peut le consulter. Par opposition, le code source qui a permis de concevoir Windows et Mac OS est fermé, on dit que ce sont des systèmes d'exploitation propriétaires.
  • Il existe de nombreuses variantes de Linux, que l'on appelle distributions.
  • Ubuntu est une des distributions les plus populaires à l'heure actuelle. C'est celle que nous utiliserons tout au long de cet ouvrage. Il s'agit d'un dérivé de la distribution Debian.
Continue reading →

2 - Les différents types de réseaux

0 commentaires
reseaux20informatique2006 024311200 0901 200220

LAN

LAN signifie Local Area Network (en français Réseau Local). Il s'agit d'un ensemble d'ordinateurs appartenant à une même organisation et reliés entre eux dans une petite aire géographique par un réseau, souvent à l'aide d'une même technologie (la plus répandue étant Ethernet).
Un réseau local est donc un réseau sous sa forme la plus simple. La vitesse de transfert de données d'un réseau local peut s'échelonner entre 10 Mbps (pour un réseau ethernet par exemple) et 1 Gbps (en FDDI ou Gigabit Ethernet par exemple). La taille d'un réseau local peut atteindre jusqu'à 100 voire 1000 utilisateurs.
En élargissant le contexte de la définition aux services qu'apportent le réseau local, il est possible de distinguer deux
modes de fonctionnement :
- dans un environnement d'"égal à égal" (en anglais peer to peer), dans lequel il n'y a pas d'ordinateur central et chaque ordinateur a un rôle similaire
- dans un environnement "client/serveur", dans lequel un ordinateur central fournit des services réseau aux utilisateurs

MAN

Les MAN (Metropolitan Area Network) interconnectent plusieurs LAN géographiquement proches (au maximum quelques dizaines de km) à des débits importants. Ainsi un MAN permet à deux noeuds distants de communiquer comme si ils faisaient partie d'un même réseau local.
Un MAN est formé de commutateurs ou de routeurs interconnectés par des liens hauts débits (en général en fibreoptique).


WAN

Un WAN (Wide Area Network ou réseau étendu) interconnecte plusieurs LANs à travers de grandes distancesgéographiques.
Les débits disponibles sur un WAN résultent d'un arbitrage avec le coût des liaisons (qui augmente avec la distance) et peuvent être faibles.
Les WAN fonctionnent grâce à des routeurs qui permettent de "choisir" le trajet le plus approprié pour atteindre un noeud du réseau.
Le plus connu des WAN est Internet.


Continue reading →
mercredi 16 avril 2014

2 - Création d'une base de données

0 commentaires
Access

Création d'une base de données

Pour vous aider à comprendre la création d'une base de données, cette page va démontrer les étapes à suivre. Afin d'éviter la répétition du texte de ce site, il vous sera demandé d'aller lire le texte d'autres pages pour les tables etles relations. L'exercice va consister à créer une base de données pour la facturation d'une entreprise.
La première étape de la création d'une base de données est l'analyse. C'est d'ailleurs probablement l'étape la plus importante. Si vous passez trop rapidement sur cette étape, vous allez ensuite perdre beaucoup de temps et d'efforts à refaire ce qui aurait dû être accompli auparavant.
Avant de créer votre base de données, il faut avoir une idée claire de ce que seront vos besoins pour celle-ci. Il faut préparer une analyse approfondie de vos besoins. Quelles sont les informations dont vous avez besoin? Ex.: Quelles informations ai-je besoin sur mes clients, sur mes fournisseurs, sur mon inventaire, sur mon personnel etc.
Une technique parmi d'autres que vous pouvez utiliser consiste à fonctionner "à l'envers" (top-down). Songez aux formulaires et aux états dont vous aurez besoin. Connaissant les résultats dont vous avez besoin, il faut découvrir quels sont les champs nécessaires pour atteindre ceux-ci. Par exemple, il faut connaître les quantités vendues et à quel prix unitaire avant de connaître le total des ventes .
Vous pouvez aussi utiliser la technique "bottom-up". À partir de la base, vous déterminez toutes les informations qui sont nécessaires pour les requêtes, les formulaires et les états de votre base de données. Vous pouvez utiliser les deux techniques pour vous assurer d'avoir toutes les informations nécessaires.
Pour les besoins de l'exercice, prenez quelques instants et écrivez sur une feuille quels champs que l'on retrouve sur une facture. Essayez de trouver autant de champs que vous pouvez.

Liste des champs

Voici la liste de champs que l'on peut retrouver une facture.
Date, Numéro de facture, Numéro de client, Adresse de facturation du client, Ville, Numéro de téléphone, Numéro de télécopieur, Adresse de courriel (courrier électronique), Adresse de livraison, Personne contact, Conditions de paiement, Numéro de produit, Description du produit, Prix unitaire du produit, Quantité achetée, Total pour l'item, sous-total, TPS (Taxe sur le Produits et Services, 7% du total), TVQ (Taxe de vente du Québec, 7,5% du total et de la TPS, TVA en Europe), Grand total, Escompte, Bon de commande, Numéro du vendeur, Nom du vendeur ...
Ouf! C'est peut être un peu plus que vous vous attentiez.
La seconde étape: regrouper les informations dans des tables.
Il faut ensuite regrouper en entités toutes ces informations (champs) dans une table ou un "thème" en commun. Ex.: Est-ce que le champ "Escompte" ou "Conditions de paiement" ira dans l'entité (table) "Facture" ou avec "Client"?
Je vais premièrement vous démontrer ma technique pour regrouper les champs dans des tables et pour déterminer les relations entre ces tables. Par après, on discutera de la technique de la normalisation. Ma technique est un peu plus simpliste et demande un peu d'expérience. L'utilisation de la technique de la normalisation est une manière difficile d'accomplir à accomplir et à réaliser. Mais elle est infaillible lorsqu'on la comprend et on l'applique correctement. Ces deux manières veulent atteindre le même résultat : regrouper des champs dans des tables de manière la plus efficiente possible. Premièrement ... ma technique.
Le concept est de distribuer les champs dans le plus grand nombre de tables possibles. Mais il y a certaines règles à suivre:
+Regroupement des champs dans des tables qui peuvent être reliées.
+Pas de dédoublement de champs, sauf pour les champs en commun.
+Pas de dédoublement d'entrée d'information.
+Pas de champs calculables dont on peut avoir le résultat avec les informations des autres champs des tables. Ex.: Total = Qté * Prix unitaire
Il faut regrouper les champs dans des tables. Quels sont les champs que l'on peut regrouper ensemble? Pour vous aider dans cette tâche, basez-vous sur des éléments de la vie de tous les jours, du concret. Cela aide aussi de connaître les processus de l'entreprise. Quelles sont les opérations accomplies? Qui utilise quelle information? Pour la facture, on retrouve des éléments qui distinguent la facture, le client, les produits et le vendeur. Ce sont les quatre tables qui seront utilisées.
S'assurer que les champs sont dans la bonne table. Qu'il n'y a pas de tables cachées à l'intérieur des autres.
À l'exception des champs en commun qui servent à "relier" les tables, un champ ne devrait pas se retrouver dans plusieurs tables.
Déterminer les clés primaires
Une clé primaire est un champ, ou une série de champs, qui permet de différencier un enregistrement des autres. Par exemple, bien qu'il puisse avoir plusieurs factures avec la même date, la même quantité achetée, au même client ou avec le même vendeur, il n'y aura pas deux factures avec le même numéro de facture. Une clé primaire n'est pas obligatoire pour une table. Elle le devient lorsque vous voulez relier deux tables. L'une des tables doit avoir une clé primaire.
Essayez de déterminer quel champ serait approprié pour une clé primaire pour la table Employés. Certainement pas le champ sexe. À moins qu'il y ait seulement un homme et une femme dans l'entreprise. Cela limite un peu la croissance de l'entreprise! Fumeur? Permanence? Même chose. Il y a seulement deux valeurs possibles (H ou F, Oui ou Non ...). Puisqu'on ne peut pas entrer deux fois la même valeur dans une clé primaire, ceux-ci ne sont pas de bon choix.
Il est possible d'utiliser le champ Nom de famille aussi longtemps que deux personnes dans l'entreprise n'aient pas le même nom. Ensuite, il est toujours possible de créer une clé primaire composée de deux champs: nom de famille etprénom. Cette clé va fonctionner correctement jusqu'à ce que deux employés aient le même prénom et le même nom. Pour régler ce problème, il est possible de créer une clé primaire composée du nom de famille, du prénom et de la date de naissance. Cette clé primaire va fonctionner correctement jusqu'à ce que ... Cela peut continuer longtemps.
Rendu à un certain point, vous verrez qu'il est préférable d'avoir un champ nommé Numéro d'employé ou Numéro d'assurance sociale pour distinguer chacun des enregistrements de la table. Mais il y a des occasions où il est nécessaire d'avoir une clé primaire qui est composée de plusieurs champs. L'une de ces situations sera expliquée un peu plus loin sur cette page.
Prenez quelques instants pour essayer de déterminer quels champs dans la table seraient appropriés pour être la clé primaire ou être dans la clé primaire. L'explication pour appliquer la clé primaire sur un ou plusieurs champs de la table est sur la page Web suivante sur les tables.
Déterminer les relations entre les tables
Pour qu'une relation soit possible entre deux tables, il faut:
+2 tables (ou requêtes ou une combinaison des deux)
+1 champ en commun dans chacune des tables.
+Même type de champ (Texte avec texte, numérique avec numérique... sauf exception de numéroauto avec numérique)
+Même longueur (Pas un champ long de 15 caractères avec un autre long de 50 caractères !)
+Même genre d'information (Ex.: Code d'inventaire avec des codes d'inventaires, NAS avec NAS ...)
Vous n'êtes pas obligé de relier toutes les tables l'une à l'autre. Il est possible d'accéder à l'information tant que les tables soient reliées directement ou indirectement en elles. Vous trouverez plus de détails sur la page des relations.
Déterminer les types de relations (cardinalité)
Il existe trois types de relations : 1 à 1, 1 à plusieurs et plusieurs à plusieurs. Afin de ne pas répéter le texte, vous trouverez toutes les informations nécessaires pour déterminer le type de relation et comment créer des relations sur la page sur les relations.
Pour l'exemple qui est utilisé sur ce site, voici comment relier les tables dont les informations se retrouvent sur une facture.

ERELA1

L'image ci-dessus démontre la liste des tables avec les champs qui les composent. De plus, les lignes indiquent les relations entre les tables. La relation de types plusieurs à plusieurs requiert une table intermédiaire composée, au minimum de la clé primaire des deux tables à relier. C'est la raison d'être de la table Transition Fact-Inv qui pourrait tout aussi s'appeler Items de la facture.

La normalisation et les formes normales.

L'avantage d'une base de données relationnelle est d'éviter au maximum les répétitions ou les redondances d'information. La normalisation sert à séparer la liste des champs en plusieurs tables pour avoir une base de données qui est plus efficace. On parle de retirer progressivement quelques problèmes que l'on retrouve dans les bases de données pour afficher la base de données sous différentes formes normales (1ère, 2ième, 3ième ...) Pour le moment, nous allons seulement regarder les trois premières formes normales.
Première forme normale : répétition des données
Pour atteindre la première forme normale, il faut éliminer les groupes répétitifs en les séparant en plusieurs tables. Le travail à accomplir pour atteindre la première forme normale est d'éviter complètement les répétitions d'entrée de données.
Par exemple, une facture peut contenir plusieurs produits.
Numéro de factureNuméro de produit
11, 3, 5
Donc, il peut avoir plusieurs numéros de produits pour une même facture. Ceci est de la redondance et ce n'est pas une forme appropriée pour conserver de l'information dans une base de données relationnelle. Comment fera-t-on ensuite pour relier une modification au bon produit? Il faut donc mettre Numéro de produit dans une table autre que Facture. On peut en même temps déplacer les champs similaires dans l'autre table. Le test de la deuxième forme normale va s'assurer que les champs sont à la bonne place.
Il faut s'assurer que l'utilisateur ne va entrer plusieurs fois la même information. Par exemple, cela ne serait pas efficace d'avoir une table "Facture" qui contiendrait aussi les champs "Nom du client", "Adresse de livraison", "personne contact". Cela ne passerait pas à la première forme normale. La raison est qu'il faudrait que l'utilisateur rentre pour chaque facture la même information qu'il a déjà entrée dans les factures précédentes pour le même client. Après tout, combien de fois peut-on entrer la même adresse? Pas vraiment efficient! C'est pour cette raison qu'il faut "découper" la liste des champs dont vous avez besoin dans plusieurs tables pour avoir une forme efficiente d'entrée et d'utilisation des données. La même situation se répète pour les informations sur le vendeur.
Facture: Numéro de facture, date, bon de commande, escompte
Clients : Numéro de client, adresse de facturation, ville, numéro de téléphone, numéro de télécopieur, adresse de courriel, adresse de livraison, personne-ressource, escompte, conditions de paiement
Employés : Numéro du vendeur, nom, prénom, numéro d'assurance sociale
Inventaire : Numéro de produit, description, prix unitaire, quantité achetée, quantité disponible
Il faut ensuite déterminer la clé primaire pour chaque table. Cela est nécessaire pour la seconde forme normale. Une clé primaire est un champ, ou une série de champs, qui permet de distinguer un enregistrement des autres. Pour la table Facture, la clé primaire est le champ Numéro de facture. Le contenu de tous les autres champs de la table peut se répéter ce qui serait contraire à la convention d'une clé primaire.
Deuxième forme normale: Dépendance directe à la clé primaire
Pour se rendre à la deuxième forme normale, il faut premièrement avoir passé à travers la première forme normale. Il faut ensuite éliminer les dépendances partielles. Cela veut dire qu'il faut s'assurer que tous les champs de la table dépendent de la clé primaire de la table. Sinon, il faudra créer une nouvelle table ou déplacer le champ.
Le problème pour ce niveau est le champ Quatité achetée. Il dépend en même temps du numéro de facture et du numéro de produit. Une facture peut avoir plusieurs produits. Mais un produit peut aussi se retrouver sur plusieurs factures. Il y a donc une relation de plusieurs à plusieurs entre ces deux tables.
Facture Numéro de facture, Date, bon de commande, escompte
Clients Numéro de client, adresse de facturation, ville, numéro de téléphone, numéro de télécopieur, adresse de courriel, adresse de livraison, personne-ressource, escompte, conditions de paiement
Employés Numéro du vendeur, nom, prénom, numéro d'assurance sociale
Inventaire Numéro de produit, description, prix unitaire, quantité disponible
Items Numéro de factureNuméro de produit, Quantité achetée
Voici un exemple du contenu de la table items. Pour cette base de données, la table est appelée Transition Fact-Inv puisqu'elle permet de relier les tables Facture et Inventaire. Vous remarquez aussi que la clé primaire de cette table est composée de deux champs: Numéro de facture et Numéro de produit. Ce sont aussi les clés primaires des tables Facture et Inventaire.
Numéro de factureNuméro de produitQuantité achetée
1
1
10
1
2
25
2
1
50
2
2
100
Dans cette table, un même numéro de facture et un même numéro de produit peuvent être utilisés plusieurs fois. Mais seulement un à la fois. Il n'y aura jamais deux fois le même numéro de facture et le même numéro de produit.
Troisième forme normale : Dépendances partielles de la clé
Troisième forme normale: éliminer les dépendances transitives. Il faut s'assurer qu'il n'y a pas de tables qui soient cachées parmi les autres.
Aussi, les tables ne devraient jamais contenir de champs calculés. Par exemple, il ne devrait pas avoir les champs "sous total", "Total", "TPS", "TVQ", "TVA" ou "Autres taxes" dans les tables puisqu'il est possible de les calculer à partir des données qui sont déjà dans les tables. Il est possible d'avoir le "sous total" en multipliant les "Quantité vendue" par les "Prix unitaire". Donc, il est inutile de l'avoir dans les tables.
La troisième étape est de déterminer les relations entre les différentes tables. Il faut regarder quelles sont les relations possibles entre les entités. Pour avoir une relation, deux tables doivent avoir au moins un champ en commun. On peut relier une facture à un client par le champ "ID_Client". Ou encore, relier un produit à une facture par le champ "ID_Produit" etc. Vous devriez à ce moment vous apercevoir que certains champs seraient mieux placés dans une autre entité. Une fois que vous avez réalisé les regroupements et déterminé les relations, vous avez votre base pour la création des tables.
Maintenant que vous avez les entités et les champs qui les composent, pensez à quoi devrait ressembler vos formulaires et vos états. Est-ce que les champs que vous avez choisis répondent à tous vos besoins? Prenez tout le temps nécessaire pour l'analyse. Il vous coûtera beaucoup plus de temps et d'effort si vous passez trop rapidement à la création et oubliez des éléments importants.

Attention!

Si vous êtes dans le laboratoire d'informatique au moment de la création de votre première base de données, assurez-vous de sauvegarder le fichier sur le lecteur A: . Ne créez pas votre base de données sur le disque dur. Sinon, un technicien sera obligé de venir vous aider à la déplacer sur votre disquette. À chaque session, un étudiant "perd" sa base de données qu'il, ou elle, a créé sur le disque dur au lieu de sa disquette personnelle.
*Du menu Fichier, sélectionnez l'option Nouveau.
* Access va ensuite vous demander quel nom vous voulez donner à votre fichier et sur quel lecteur. Pour les besoins des démonstrations appelez-le ACCESS1.MDB.
*Appuyez sur le bouton OK.
Maintenant que vous avez créé la base de données, il reste qu'a créer les tables, entrer l'information, créer les requêtes, les formulaires, les états, les macros et les modules pour votre base de données. Donc, il reste encore beaucoup de travail.
Continue reading →