A partir de cette page vous pouvez :
collection
| Retourner au premier écran avec les étagères virtuelles... |
Détail d'une collection
|
|
Documents disponibles dans la collection
Ajouter le résultat dans votre panier Faire une suggestion Affiner la recherche Interroger des sources externes
Titre : Alfresco : utiliser et administrer une solution de gestion de contenu d'entreprise Type de document : texte imprime Auteurs : Jean-Paul Décles Editeur : Paris : ENI Année de publication : cop. 2010 Collection : Ressources Informatiques Importance : 429 p. Présentation : ill., couv. ill. Format : 21 cm ISBN/ISSN/EAN : 978-2-7460-5519-3 Note générale :
La couv. porte en plus : "Informatique technique"
IndexLangues : Français Mots-clés : Alfresco (logiciel) Systèmes de gestion de contenu Web Index. décimale : 02504 Résumé :
Ce livre sur Alfresco a pour objectif de montrer à tout utilisateur comment gérer ses documents dans l'environnement de travail d'Alfresco et à tout administrateur comment installer la solution, la configurer et la paramétrer depuis l'interface web. Des responsables de projets de Gestion de Contenu d'Entreprise y trouveront également tous les éléments leur permettant d'évaluer Alfresco (en version 3.2 au moment de la rédaction du livre) et d'anticiper les points critiques nécessaires à l'installation et au paramétrage de la solution dans leur propre organisation. La conception des chapitres suit la logique des différentes étapes de prise en main de la solution par l'utilisateur : de la découverte de l'environnement de travail et de la façon de le personnaliser jusqu'aux activités documentaires courantes (création et modification de contenus, mise en uvre des règles de workflow, partage, recherche, etc.), en passant par l'administration du poste client. Chaque chapitre est organisé à partir d'une tâche bien définie d'utilisation ou d'administration. Pour chaque tâche, la marche à suivre est indiquée et illustrée, étape par étape, en commençant par les options les plus courantes puis en terminant par la présentation des options supplémentaires permettant une définition plus fine des fonctionnalités. A partir des cas d'utilisation volontairement indépendants de toute organisation préalable, le lecteur sera à même de faire le lien avec son propre environnement de travail et d'appliquer les principes exposés dans cet ouvrage. Des animations audio/vidéo des principaux chapitres du livre seront en téléchargement sur le site www.editions-eni.fr.Note de contenu :
Introduction
A. Avant-propos 14
B Contenu du livre 15
Présentation d'Alfresco Chapitre 1
A. Qu'est-ce qu'Alfresco ? 20
B. À qui s'adresse Alfresco ? 21
C. Ce que l'on peut faire avec Alfresco 24
D. L'architecture d'Alfresco 24
E. Les technologies logicielles utilisées 28
Installation d'Alfresco Chapitre 2
A. Où se procurer Alfresco ? 32
B. Les fichiers d'installation 33
C. Installation d'Alfresco 34
1. Organisation des répertoires après installation d'Alfresco 46
Utiliser Alfresco Chapitre 3
A. Démarrer et arrêter le serveur Alfresco 50
1. Démarrer le serveur Alfresco 50
2. Arrêter le serveur Alfresco 52
B. Se connecter au client web pour la première fois 53
1. Changer la langue de l'interface 54
C. Présentation du poste client 60
D. Le tableau de bord 61
E. La page d'accueil 62
1. La barre d'outils 63
2. L'en-tête 65
3. Le panneau latéral 66
4. La partie Détail 69
Administrer le poste client Chapitre 4
A. Introduction 72
B. La console d'administration 72
C. Gérer les utilisateurs et les groupes 74
1. Permissions et rôles 75
2. Créer un compte utilisateur 76
3. Créer un groupe 83
a. Ajouter un utilisateur à un groupe 87
D. Gérer les catégories 89
1. Cas d'utilisation : Création des catégories 94
E. Exporter/importer des données 97
1. Exporter 98
2. Importer 100
F. Afficher les informations système 103
G. Utiliser le Navigateur de Noeuds 105
H. Personnaliser l'application par défaut 109
1. Utilisateurs 110
2. Groupes 111
3. Catégories 111
4. Espaces 112
Personnaliser le poste client Chapitre 5
A. Introduction 116
B. Les options de l'utilisateur 117
C. Modifier les détails 119
D. Changer le mot de passe 121
E. Définir les préférences 122
F. Configurer le tableau de bord 125
Les espaces de travail Chapitre 6
A. Introduction 132
B. À quoi servent les espaces de travail ? 132
C. Organiser ses espaces de travail 134
D. Créer un espace de travail 143
1. Inviter des utilisateurs 147
2. Éditer les propriétés d'un espace 150
3. Créer un raccourci vers un espace 152
4. Couper ou copier un espace avec le Presse-papiers 153
5. Supprimer un espace 154
E. Créer un espace évolué 155
1. Créer un espace à partir d'un espace existant 156
2. Créer un espace en utilisant un modèle 158
F. Envoyer un e-mail aux utilisateurs d'un espace 161
G. Cas d'utilisation : créer des espaces 163
Créer, éditer et modifier les contenus Chapitre 7
A. Qu'est-ce qu'un contenu ? 166
B. Propriétés et métadonnées 167
B. Les aspects 169
D. Créer un contenu 169
1. Créer des contenus Texte, HTML ou XML 170
a. Étape un : Sélectionner le nom et le type 170
b. Étape deux : Saisir le contenu 171
E. Ajouter un contenu 174
F. Déplacer ou copier un contenu à l'aide du Presse-papiers 177
G. Créer un raccourci vers un contenu 179
H. Supprimer un contenu 180
1. Gérer les éléments effacés 181
I. Éditer un contenu 183
1. Éditer un contenu en ligne 183
2. Éditer un contenu hors ligne 185
J. Activer le suivi de version 188
K. Utiliser une copie de travail (Check Out/Check In) 190
1. Extraire une copie de travail 190
2. Archiver une copie de travail 193
3. Annuler la copie de travail 196
4. Cas d'utilisation : Extraire et archiver une copie de travail 198
L. Exporter et importer des contenus 201
1. Exporter des contenus 201
2. Importer des contenus 204
M. Utiliser la syndication de contenu 205
1. Activer la syndication de contenu 205
2. Utiliser les flux RSS 208
a. Les modèles de présentation des flux RSS 209
Rechercher des informations Chapitre 8
A. Caractéristiques et stratégies de recherche 214
B. Le moteur de recherche Alfresco 215
C. Effectuer une recherche simple 216
D. Lancer une recherche avancée 218
E. Sauvegarder et utiliser les résultats d'une recherche 224
1. Sauvegarder les critères de recherche 225
2. Exécuter une recherche sauvegardée 227
F. Utiliser OpenSearch 228
1. Utiliser OpenSearch depuis le panneau latéral 228
2. Utiliser le moteur de recherche Alfresco depuis le navigateur 230
Gérer les contenus Chapitre 9
A. Associer une catégorie à un contenu 234
1. Ajouter des catégories à un contenu 234
a. Catégorisation manuelle 236
b. Catégorisation automatique 239
2. Ajouter des catégories à un espace 240
3. Utiliser les catégories pour la navigation 241
4. Utiliser les catégories dans les recherches avancées 242
B. Créer des règles de contenu 245
1. Créer une règle de contenu sur un espace 246
a. Étape un : Sélectionner les conditions 246
b. Étape deux : Sélectionner les actions 248
c. Étape trois : Entrer les détails 250
2. Utiliser les règles de contenu pour organiser automatiquement les documents 255
a. Exécuter la règle de contenu 266
3. Quelques exemples de règles de contenu 268
a. Extraire les champs metadata classiques de l'élément 268
b. Transformer un document Word en PDF 270
c. Convertir les documents Word en documents ODF 273
d. Redimensionner et transformer des images 275
e. Incrémenter le compteur 278
C. Lancer des actions sur les espaces et les contenus 282
1. Lancer une action 282
2. Créer une action pour ajouter ou retirer des aspects 286
3. Exécuter des scripts à l'aide d'une action 289
a. Créer et exécuter un javascript 291
D. Créer un workflow simple 294
1. Créer un workflow simple 295
2. Envoi d'un e-mail de notification 303
a. Les modèles de présentation de e-mail 306
3. Tester le workflow 309
E. Créer un workflow avancé 311
1. Créer un workflow avancé de type Adhoc Task 312
2. Créer un workflow avancé de type Review and Approve 319
3. En résumé 323
F. Cas d'utilisation : quelques tâches courantes d'une gestion documentaire simple 323
1. Étape 1 : Préparer le contexte d'utilisation 324
a. Étape 1.1 : Création des espaces de travail 325
b. Étape 1.2 : Affecter les droits aux utilisateurs 326
c. Étape 1.3 : Créer un groupe rassemblant les destinataires de la notification par e-mail 327
d. Étape 1.4 : Créer la catégorie Services 329
2. Étape 2 : Créer les règles de contenu 330
a. Étape 2.1 : Créer la règle de contenu de conversion PDF 330
b. Étape 2.2 : Créer une règle de contenu pour attribuer la catégorie Services au document importé 332
3. Étape 3 : Importer le document 335
a. Étape 3.1 : Importer le document à diffuser dans l'Espace Diffusion 335
1. Étape 4 : Notifier les destinataires par e-mail 336
a. Étape 4.1 : Lancer une action 336
2. Étape 5 : Archiver le document 341
a. Étape 5.1 : Pour archiver le document 341
Forums et discussions Chapitre 10
A. Les espaces Forums et Discussions 344
B. Créer un forum de discussion 344
C. Lancer une discussion 347
D. Suivre une discussion 350
E. Définir les rôles et les permissions sur les forums 351
F. Créer une discussion depuis un espace ou un contenu 355
Les alternatives au client Alfresco Chapitre 11
A. Introduction 360
B. Accéder à l'espace Alfresco avec CIFS 360
C. Accéder à l'espace Alfresco avec WebDAV 364
D. Accéder à l'espace Alfresco avec FTP 367
Les fichiers de configuration Chapitre 12
A. Introduction 372
B. Les fichiers de configuration système 372
1. Modifier les propriétés globales 375
C. Configurer le client web 377
1. Configurer les logos par défaut 377
2. Choisir la langue du client web 379
a. Installer les fichiers de langue 379
b. Configurer les langues du client web 380
c. Permettre le choix de la langue 381
3. Activer le suivi de version par défaut 383
4. Changer les icônes des espaces de travail 385
5. Personnaliser le type d'affichage du menu latéral 387
a. Personnaliser l'espace affiché par défaut 389
6. Personnaliser le nombre d'éléments par page d'un espace 390
7. Modifier les dashlets affichées par défaut 391
8. Personnaliser les styles du client web 393
D. En résumé 394
Annexe
A. DocASU : une interface graphique pour Alfresco 396
1. Installer DocASU sous Windows 396
2. Utiliser DocASU 398
B. Présentation d'Alfresco Share 399
1. Démarrer Alfresco Share 399
2. La page d'accueil d'Alfresco Share 401
3. Personnaliser Alfresco Share 401
4. Créer votre site collaboratif 405
5. Préparer le site pour la collaboration 407
Où trouver l'information sur Alfresco
A. Les sites de référence 414
B. Les forums 414
C. Liens vers des ressources utiles 414
Index
En ligne : https://www.amazon.fr/Alfresco-Utiliser-administrer-solution-dEntreprise/dp/2746 [...] Permalink : ./index.php?lvl=notice_display&id=11972 Alfresco : utiliser et administrer une solution de gestion de contenu d'entreprise [texte imprime] / Jean-Paul Décles . - Paris : ENI, cop. 2010 . - 429 p. : ill., couv. ill. ; 21 cm. - (Ressources Informatiques) .
ISBN : 978-2-7460-5519-3
La couv. porte en plus : "Informatique technique"
Index
Langues : Français
Mots-clés : Alfresco (logiciel) Systèmes de gestion de contenu Web Index. décimale : 02504 Résumé :
Ce livre sur Alfresco a pour objectif de montrer à tout utilisateur comment gérer ses documents dans l'environnement de travail d'Alfresco et à tout administrateur comment installer la solution, la configurer et la paramétrer depuis l'interface web. Des responsables de projets de Gestion de Contenu d'Entreprise y trouveront également tous les éléments leur permettant d'évaluer Alfresco (en version 3.2 au moment de la rédaction du livre) et d'anticiper les points critiques nécessaires à l'installation et au paramétrage de la solution dans leur propre organisation. La conception des chapitres suit la logique des différentes étapes de prise en main de la solution par l'utilisateur : de la découverte de l'environnement de travail et de la façon de le personnaliser jusqu'aux activités documentaires courantes (création et modification de contenus, mise en uvre des règles de workflow, partage, recherche, etc.), en passant par l'administration du poste client. Chaque chapitre est organisé à partir d'une tâche bien définie d'utilisation ou d'administration. Pour chaque tâche, la marche à suivre est indiquée et illustrée, étape par étape, en commençant par les options les plus courantes puis en terminant par la présentation des options supplémentaires permettant une définition plus fine des fonctionnalités. A partir des cas d'utilisation volontairement indépendants de toute organisation préalable, le lecteur sera à même de faire le lien avec son propre environnement de travail et d'appliquer les principes exposés dans cet ouvrage. Des animations audio/vidéo des principaux chapitres du livre seront en téléchargement sur le site www.editions-eni.fr.Note de contenu :
Introduction
A. Avant-propos 14
B Contenu du livre 15
Présentation d'Alfresco Chapitre 1
A. Qu'est-ce qu'Alfresco ? 20
B. À qui s'adresse Alfresco ? 21
C. Ce que l'on peut faire avec Alfresco 24
D. L'architecture d'Alfresco 24
E. Les technologies logicielles utilisées 28
Installation d'Alfresco Chapitre 2
A. Où se procurer Alfresco ? 32
B. Les fichiers d'installation 33
C. Installation d'Alfresco 34
1. Organisation des répertoires après installation d'Alfresco 46
Utiliser Alfresco Chapitre 3
A. Démarrer et arrêter le serveur Alfresco 50
1. Démarrer le serveur Alfresco 50
2. Arrêter le serveur Alfresco 52
B. Se connecter au client web pour la première fois 53
1. Changer la langue de l'interface 54
C. Présentation du poste client 60
D. Le tableau de bord 61
E. La page d'accueil 62
1. La barre d'outils 63
2. L'en-tête 65
3. Le panneau latéral 66
4. La partie Détail 69
Administrer le poste client Chapitre 4
A. Introduction 72
B. La console d'administration 72
C. Gérer les utilisateurs et les groupes 74
1. Permissions et rôles 75
2. Créer un compte utilisateur 76
3. Créer un groupe 83
a. Ajouter un utilisateur à un groupe 87
D. Gérer les catégories 89
1. Cas d'utilisation : Création des catégories 94
E. Exporter/importer des données 97
1. Exporter 98
2. Importer 100
F. Afficher les informations système 103
G. Utiliser le Navigateur de Noeuds 105
H. Personnaliser l'application par défaut 109
1. Utilisateurs 110
2. Groupes 111
3. Catégories 111
4. Espaces 112
Personnaliser le poste client Chapitre 5
A. Introduction 116
B. Les options de l'utilisateur 117
C. Modifier les détails 119
D. Changer le mot de passe 121
E. Définir les préférences 122
F. Configurer le tableau de bord 125
Les espaces de travail Chapitre 6
A. Introduction 132
B. À quoi servent les espaces de travail ? 132
C. Organiser ses espaces de travail 134
D. Créer un espace de travail 143
1. Inviter des utilisateurs 147
2. Éditer les propriétés d'un espace 150
3. Créer un raccourci vers un espace 152
4. Couper ou copier un espace avec le Presse-papiers 153
5. Supprimer un espace 154
E. Créer un espace évolué 155
1. Créer un espace à partir d'un espace existant 156
2. Créer un espace en utilisant un modèle 158
F. Envoyer un e-mail aux utilisateurs d'un espace 161
G. Cas d'utilisation : créer des espaces 163
Créer, éditer et modifier les contenus Chapitre 7
A. Qu'est-ce qu'un contenu ? 166
B. Propriétés et métadonnées 167
B. Les aspects 169
D. Créer un contenu 169
1. Créer des contenus Texte, HTML ou XML 170
a. Étape un : Sélectionner le nom et le type 170
b. Étape deux : Saisir le contenu 171
E. Ajouter un contenu 174
F. Déplacer ou copier un contenu à l'aide du Presse-papiers 177
G. Créer un raccourci vers un contenu 179
H. Supprimer un contenu 180
1. Gérer les éléments effacés 181
I. Éditer un contenu 183
1. Éditer un contenu en ligne 183
2. Éditer un contenu hors ligne 185
J. Activer le suivi de version 188
K. Utiliser une copie de travail (Check Out/Check In) 190
1. Extraire une copie de travail 190
2. Archiver une copie de travail 193
3. Annuler la copie de travail 196
4. Cas d'utilisation : Extraire et archiver une copie de travail 198
L. Exporter et importer des contenus 201
1. Exporter des contenus 201
2. Importer des contenus 204
M. Utiliser la syndication de contenu 205
1. Activer la syndication de contenu 205
2. Utiliser les flux RSS 208
a. Les modèles de présentation des flux RSS 209
Rechercher des informations Chapitre 8
A. Caractéristiques et stratégies de recherche 214
B. Le moteur de recherche Alfresco 215
C. Effectuer une recherche simple 216
D. Lancer une recherche avancée 218
E. Sauvegarder et utiliser les résultats d'une recherche 224
1. Sauvegarder les critères de recherche 225
2. Exécuter une recherche sauvegardée 227
F. Utiliser OpenSearch 228
1. Utiliser OpenSearch depuis le panneau latéral 228
2. Utiliser le moteur de recherche Alfresco depuis le navigateur 230
Gérer les contenus Chapitre 9
A. Associer une catégorie à un contenu 234
1. Ajouter des catégories à un contenu 234
a. Catégorisation manuelle 236
b. Catégorisation automatique 239
2. Ajouter des catégories à un espace 240
3. Utiliser les catégories pour la navigation 241
4. Utiliser les catégories dans les recherches avancées 242
B. Créer des règles de contenu 245
1. Créer une règle de contenu sur un espace 246
a. Étape un : Sélectionner les conditions 246
b. Étape deux : Sélectionner les actions 248
c. Étape trois : Entrer les détails 250
2. Utiliser les règles de contenu pour organiser automatiquement les documents 255
a. Exécuter la règle de contenu 266
3. Quelques exemples de règles de contenu 268
a. Extraire les champs metadata classiques de l'élément 268
b. Transformer un document Word en PDF 270
c. Convertir les documents Word en documents ODF 273
d. Redimensionner et transformer des images 275
e. Incrémenter le compteur 278
C. Lancer des actions sur les espaces et les contenus 282
1. Lancer une action 282
2. Créer une action pour ajouter ou retirer des aspects 286
3. Exécuter des scripts à l'aide d'une action 289
a. Créer et exécuter un javascript 291
D. Créer un workflow simple 294
1. Créer un workflow simple 295
2. Envoi d'un e-mail de notification 303
a. Les modèles de présentation de e-mail 306
3. Tester le workflow 309
E. Créer un workflow avancé 311
1. Créer un workflow avancé de type Adhoc Task 312
2. Créer un workflow avancé de type Review and Approve 319
3. En résumé 323
F. Cas d'utilisation : quelques tâches courantes d'une gestion documentaire simple 323
1. Étape 1 : Préparer le contexte d'utilisation 324
a. Étape 1.1 : Création des espaces de travail 325
b. Étape 1.2 : Affecter les droits aux utilisateurs 326
c. Étape 1.3 : Créer un groupe rassemblant les destinataires de la notification par e-mail 327
d. Étape 1.4 : Créer la catégorie Services 329
2. Étape 2 : Créer les règles de contenu 330
a. Étape 2.1 : Créer la règle de contenu de conversion PDF 330
b. Étape 2.2 : Créer une règle de contenu pour attribuer la catégorie Services au document importé 332
3. Étape 3 : Importer le document 335
a. Étape 3.1 : Importer le document à diffuser dans l'Espace Diffusion 335
1. Étape 4 : Notifier les destinataires par e-mail 336
a. Étape 4.1 : Lancer une action 336
2. Étape 5 : Archiver le document 341
a. Étape 5.1 : Pour archiver le document 341
Forums et discussions Chapitre 10
A. Les espaces Forums et Discussions 344
B. Créer un forum de discussion 344
C. Lancer une discussion 347
D. Suivre une discussion 350
E. Définir les rôles et les permissions sur les forums 351
F. Créer une discussion depuis un espace ou un contenu 355
Les alternatives au client Alfresco Chapitre 11
A. Introduction 360
B. Accéder à l'espace Alfresco avec CIFS 360
C. Accéder à l'espace Alfresco avec WebDAV 364
D. Accéder à l'espace Alfresco avec FTP 367
Les fichiers de configuration Chapitre 12
A. Introduction 372
B. Les fichiers de configuration système 372
1. Modifier les propriétés globales 375
C. Configurer le client web 377
1. Configurer les logos par défaut 377
2. Choisir la langue du client web 379
a. Installer les fichiers de langue 379
b. Configurer les langues du client web 380
c. Permettre le choix de la langue 381
3. Activer le suivi de version par défaut 383
4. Changer les icônes des espaces de travail 385
5. Personnaliser le type d'affichage du menu latéral 387
a. Personnaliser l'espace affiché par défaut 389
6. Personnaliser le nombre d'éléments par page d'un espace 390
7. Modifier les dashlets affichées par défaut 391
8. Personnaliser les styles du client web 393
D. En résumé 394
Annexe
A. DocASU : une interface graphique pour Alfresco 396
1. Installer DocASU sous Windows 396
2. Utiliser DocASU 398
B. Présentation d'Alfresco Share 399
1. Démarrer Alfresco Share 399
2. La page d'accueil d'Alfresco Share 401
3. Personnaliser Alfresco Share 401
4. Créer votre site collaboratif 405
5. Préparer le site pour la collaboration 407
Où trouver l'information sur Alfresco
A. Les sites de référence 414
B. Les forums 414
C. Liens vers des ressources utiles 414
Index
En ligne : https://www.amazon.fr/Alfresco-Utiliser-administrer-solution-dEntreprise/dp/2746 [...] Permalink : ./index.php?lvl=notice_display&id=11972 Réservation
Réserver ce document
Exemplaires
Code-barres Cote Support Localisation Section Disponibilité IA547/1 IA547 Livre Magasin d'Ouvrages / FGE Informatique et automatique Consultation sur place
Exclu du prêtIA547/2 IA547 Livre Magasin d'Ouvrages / FGE Informatique et automatique Disponible RES302/1 RES302 Livre Magasin d'Ouvrages / INF Réseaux Consultation sur place
Exclu du prêtRES302/2 RES302 Livre Magasin d'Ouvrages / INF Réseaux Disponible RES302/3 RES302 Livre Magasin d'Ouvrages / INF Réseaux Disponible RES302/4 RES302 Livre Magasin d'Ouvrages / INF Réseaux Disponible RES302/5 RES302 Livre Magasin d'Ouvrages / INF Réseaux Disponible RES302/6 RES302 Livre Magasin d'Ouvrages / INF Réseaux Disponible RES302/7 RES302 Livre Magasin d'Ouvrages / INF Réseaux Disponible RES302/8 RES302 Livre Magasin d'Ouvrages / INF Réseaux Disponible RES302/9 RES302 Livre Magasin d'Ouvrages / INF Réseaux Disponible Aucun avis, veuillez vous identifier pour ajouter le vôtre !
Du C au C++ / Frédéric Drouillon (cop. 2011)
Titre : Du C au C++ : de la programmation procédurale à l'objet Type de document : texte imprime Auteurs : Frédéric Drouillon Editeur : Paris : ENI Année de publication : cop. 2011 Collection : Ressources Informatiques Importance : 577p. Présentation : ill., couv. ill. en coul. Format : 21cm ISBN/ISSN/EAN : 978-2-7460-6655-7 Note générale : Index p.569-577 Langues : Français Mots-clés : C plus-plus (langage de programmation) Résumé :
Cours pour apprendre à programmer et maîtriser la conception algorithmique avec les langages de programmation C et C++. Il s'agit d'un parcours des structures de données fondamentales qui réunit par la pratique l'algorithmique à la programmation.
Ce livre s'adresse aux développeurs débutants qui souhaitent maîtriser la conception algorithmique en s'appuyant sur le langage C puis sur le langage C++. L'efficacité, la complémentarité mais aussi la généricité de ces langages vont permettre au lecteur d'acquérir un savoir faire fondamental en programmation informatique pour évoluer ensuite facilement vers d'autres langages de développement. Dans cette perspective, l'auteur a tenu, non seulement à exposer le fonctionnement des outils fondamentaux du langage mais également à fournir les moyens de les mettre en pratique. Ainsi, chaque section théorique est suivie d'une section ""mise en pratique"" dédiée, composée d'exercices diversifiés. Les quatre premiers chapitres concernent l'apprentissage du langage C et les premières armes en algorithmique : - le premier chapitre permet de maîtriser l'écriture et l'organisation d'instructions simples à partir de variables basiques et d'opérations effectuées dessus - Le second chapitre introduit la notion de bloc d'instructions, avec les possibilités fondamentales de saut, branchement, boucle et écriture de fonctions. - Le troisième chapitre expose des types de données beaucoup plus puissants : les structures et les tableaux. Ces nouveaux types de variables permettent d'accéder à des niveaux de conception beaucoup plus élaborés. - Le quatrième chapitre va surtout donner de la puissance à l'écriture via les variables pointeurs qui permettent l'allocation dynamique et l'élaboration de structures de données non natives dans le langage comme les listes chainées. La suite du livre concerne essentiellement les listes ; les listes chainées dynamiques et statiques, mais également les piles et les files ainsi que les arbres, essentiellement les arbres binaires. Pour ce faire, ces chapitres donnent les clés de la récursivité, élément incontournable pour l'implémentation des arbres en C et C++. L'auteur a fait le choix de présenter les structures de données entre le langage C et le langage C++ pour illustrer la passerelle qu'elles peuvent représenter entre le monde sans objet du C et le monde de l'objet C++. La dernière partie présente les fonctionnalités et la dimension objet du langage C++. Tous les points importants sont abordés avec des petits programmes d'illustration. L'objectif est de fournir au lecteur un marchepied conséquent vers le monde de l'objet et d'autres langages objet et de lui donner les clefs pour passer à Java ou C# par exemple.Note de contenu :
Introduction
A. Objectif : apprendre à programmer 24
B. Contenu du cours 24
C. Publics visés 24
D. Comment apprendre à programmer ? 25
1. Comprendre n'est pas savoir faire 25
2. Trois niveaux de difficulté 25
a. Maîtriser les outils 26
b. Résoudre un problème 26
c. Concevoir un programme 27
3. Un apprentissage non linéaire 27
E. Organisation du livre 28
1. Chapitres 28
2. Solutions des exercices 29
3. Annexes 29
F. Environnements de développement 30
G. Remerciements 30
H. Conclusion : la programmation comme écriture 31
Chapitre 1 Variables simples
A. Introduction dans la programmation C 34
1. Qu'est-ce que programmer ? 34
2. Le positionnement par rapport à l'ordinateur 34
3. Les logiciels de la programmation 35
a. Le compilateur 35
b. L'IDE : environnement de développement 35
c. Installation 36
4. Base d'un programme 36
a. Des données et des instructions 36
b. Des "librairies" de fonctions 36
5. Premier programme 37
a. La fonction main() : entrée du programme 37
b. Afficher du texte avec la fonction printf() 37
6. Mise en pratique : découverte du compilateur 38
B. Variables simples 39
1. Qu'est-ce qu'une variable en informatique ? 39
2. Avoir des variables dans un programme 39
a. Les types de variables élémentaires en C 39
b. Déclarer ses variables dans un programme 40
c. Contraintes pour le choix des noms 41
3. Mise en pratique : avoir des variables dans un programme 41
4. Manipulations de base sur les variables 42
a. Affecter une valeur à une variable 42
b. Des valeurs de type caractère (codage ASCII) 43
c. printf() pour afficher des valeurs 44
d. Obtenir et afficher la taille en mémoire d'une variable 46
e. Obtenir et afficher l'adresse mémoire d'une variable 47
f. scanf() pour récupérer une valeur entrée par l'utilisateur 47
g. Les pièges de scanf() 49
5. Mise en pratique : manipulations de variables 49
6. Pour comprendre les variables 51
a. Codage et mesure de l'information 51
b. Plages de valeurs en décimal 52
c. Troncature 52
d. Codage des nombres négatifs 53
7. Mise en pratique : codage des informations numériques 54
8. Expérimentation : variables simples, déclaration, affectation, affichage, saisie 54
C. Les opérations 56
1. La notion d'expression 56
2. Opérations arithmétiques 57
a. Les opérateurs +, -, *, /, % 57
b. Les affectations combinées 58
c. Pré et post incrémentations ou décrémentations 58
d. Opérations entre types différents, opérateur de "cast" 59
e. Priorités entre opérateurs 60
3. Mise en pratique : opérations arithmétiques, cast 63
4. Obtenir des valeurs aléatoires 66
a. Principe du pseudo aléatoire 66
b. La fonction rand() 67
c. La fonction srand() 68
d. Valeurs aléatoires dans des fourchettes 69
5. Mise en pratique : opérations et nombres aléatoires 71
6. Opérations bits à bits 71
a. ET - opérateur & 71
b. OU exclusif - opérateur ^ 72
c. OU inclusif - opérateur | 73
d. Complément - opérateur ~ 73
e. Décalages gauche et droite - opérateurs >> et << 73
f. Priorités des opérateurs bits à bits 73
7. Mise en pratique : opérations bits à bits 74
8. Expérimentation : opérations arithmétiques, valeurs aléatoires 74
Chapitre 2 Les contrôles des blocs d'isntructions
A. Blocs d'instructions et conditions 78
1. Qu'est-ce qu'un bloc d'instructions ? 78
a. Définition 78
b. Exemple 78
c. Utilité d'un bloc d'instructions 79
2. Définir une condition 79
a. Pourquoi une condition ? 79
b. Comment définir une condition ? 80
c. Les opérateurs de comparaison 80
d. L'opérateur unaire NON ! 81
e. Priorités des opérateurs NON et comparaison 81
3. Mise en pratique : opérateurs de comparaison et NON 82
B. Sauts conditionnels 83
1. L'instruction if 83
2. Le couple d'instructions if-else 84
3. La forme contractée du if-else, opérateur conditionnel ? 85
4. La cascade d'instructions if-else if-else 86
5. Expérimentation : les sauts conditionnels (les trois if) 86
6. Mise en pratique : les sauts conditionnels 89
C. Branchements 91
1. Branchement sélectif : switch, case et break 91
2. Rupture de séquence : goto avec étiquette 94
3. Expérimentation : branchement sélectif switch 94
4. Mise en pratique : l'aiguillage switch 96
D. Les tests multiconditions (ET/OU) 97
1. Conjonction ET, opérateur && 97
a. Et avec deux expressions membres 97
b. Et avec plus de deux expressions membres 98
2. Disjonction OU, opérateur || 99
a. Ou avec deux expressions membres 99
b. Ou avec plus de deux expressions membres 100
3. Et prioritaire sur OU 100
4. Priorité avec les autres opérateurs 101
5. Mise en pratique : les opérateurs logiques ET, OU 101
E. Boucles 103
1. Boucle Tant que : le while 103
2. Boucle Faire {...} Tant que : le do-while 105
3. Boucle comptée Pour : le for 105
4. Boucles imbriquées 107
5. Sortie et saut forcés dans une boucle 108
a. Sortir avec l'instruction break 108
b. Passer à l'itération suivante avec l'instruction continue 108
c. Sortir d'une ou de plusieurs boucles imbriquées avec l'instruction goto 109
6. Mise en pratique : les boucles while, do-while et for 109
F. Utilisations typiques de boucles 112
1. Créer un menu utilisateur 112
2. Boucle d'événements dans un jeu vidéo 114
a. Récupérer les entrées clavier (kbhit() et getch()) 114
b. Boucle d'événements simple 114
c. Contrôler le temps d'exécution 115
3. Commencer la création d'un jeu en mode console 116
4. Mise en pratique : menus, boucles d'événements 119
G. Fonctions 121
1. Qu'est-ce qu'une fonction ? 121
2. Écrire sa fonction 122
a. Où écrire sa fonction ? 122
b. Conditions à remplir 122
c. Exemple fonction sans retour ni paramètre 123
d. Exemple fonction avec retour et sans paramètre 123
e. Exemple de fonction sans retour avec un paramètre 124
f. Exemple de fonction avec retour et paramètre 124
g. Conclusion : quatre cas d'écriture de fonction 124
3. Utiliser sa fonction 125
a. Appel de la fonction 125
b. Récupération de la valeur de retour 125
c. Passage de valeurs aux paramètres 126
d. Précision sur le passage par valeur 127
e. Visibilité et déclaration de la fonction 128
4. Cas des fonctions avec liste variable de paramètres 129
a. Liste variable de paramètres de même type 129
b. Liste variable de paramètres de types différents 130
c. Transformer printf() 132
5. Mise en pratique : fonctions 134
a. Identifier les composants d'une fonction 134
b. Déclaration de fonctions 134
c. Procédures sans paramètre 135
d. Fonctions sans paramètre 135
e. Fonctions avec paramètres 135
H. Style, commentaires et indentation 140
1. Pourquoi soigner le style ? 140
2. Typographie et choix des noms 140
3. Indentation rigoureuse et accolades 141
4. Parenthèses pour dissiper les ambiguïtés 143
5. Commentaires pertinents 143
6. Mise en pratique : style, indentation, commentaires 144
Chapitre 3 Variables ensembles (structures et tableaux)
A. Structure 146
1. Qu'est-ce qu'une structure ? 146
2. Avoir une structure dans un programme 146
a. Définir un type de structure 146
b. Déclarer ses variables structure 147
3. Utiliser une structure 148
a. Accès aux éléments avec l'opérateur point 148
b. Priorité de l'opérateur point 148
c. Une structure comme champ dans une structure 148
d. Initialiser une structure à la déclaration 149
e. Copier une structure 151
4. Mise en pratique : définir, déclarer, initialiser des structures 151
B. Structures et fonctions 152
1. Retourner une structure 152
2. Structures en paramètre de fonction 153
3. Expérimentation : une entité mobile à l'écran 155
4. Mise en pratique : structures et fonctions 158
C. Typedef, enum et #define 159
1. Utiliser un typedef 159
2. Utiliser un enum 161
3. Utiliser un #define 162
4. Mise en pratique : typedef, enum, #define 163
D. Tableaux statiques 164
1. Qu'est-ce qu'un tableau ? 164
2. Avoir un tableau statique dans un programme 164
a. Définir et déclarer un tableau 164
b. Utiliser des #define pour les tailles 165
3. Utiliser un tableau 165
a. Accéder aux éléments du tableau avec l'opérateur crochet [] 165
b. Priorité de l'opérateur crochet 166
c. Débordement de tableau 166
d. Initialiser un tableau à la déclaration 166
e. Parcourir un tableau avec une boucle for 167
f. Trier un tableau 167
4. Tableaux à plusieurs dimensions 168
a. Déclarer un tableau à plusieurs dimensions 168
b. Initialiser la déclaration 170
c. Parcourir un tableau à plusieurs dimensions 170
5. Expérimentation : tableaux statiques 171
6. Mise en pratique : opérations de base sur les tableaux statiques (non dynamiques) 175
a. Déclaration de tableaux, accès aux éléments 175
b. Initialisation de tableaux à la déclaration 176
c. Tableaux à plusieurs dimensions 176
d. Boucles et tableaux 177
E. Exemples d'utilisations de tableaux 179
1. Chaînes de caractères 179
2. Image bitmap 180
3. Stocker des données localisées 181
4. Expérimentation : utilisation de chaînes de caractères 182
5. Mise en pratique : tableaux 183
a. Chaînes de caractères 183
b. Image, terrain de jeux 185
c. Localisation de données via plusieurs dimensions 187
F. Tableaux et structures 187
1. Tableau comme champ dans une structure 187
2. Tableau de structures 188
3. Différences entre tableaux et structures 190
4. Mise en pratique : tableaux de structures 191
G. Tableaux et fonctions 195
1. Utiliser un tableau déclaré en global 195
2. Tableau en paramètre de fonction 196
a. Précision sur le type tableau 196
b. La variable pointeur 197
c. En paramètre, conversion du tableau en pointeur 197
d. Choix pour l'écriture des tableaux en paramètre 200
e. Modification des données via un passage par adresse 200
3. Quelques fonctions de traitement de chaînes de caractères 203
a. Récupérer une chaîne entrée par l'utilisateur 203
b. Obtenir la taille d'une chaîne 203
c. Copier une chaîne 204
d. Comparer deux chaînes 204
e. Concaténer deux chaînes 204
4. Expérimentation : tableaux et fonctions 205
5. Mise en pratique : tableaux et fonctions 210
a. Appels de fonctions, tableaux en paramètre 210
b. Manipulations sur les chaînes 213
H. Gestion des variables 214
1. Visibilité des variables 214
a. Profondeur de la déclaration 214
b. Portée des variables 215
c. Masquage d'une variable 215
2. Durée de vie des variables 217
a. Variables globales 217
b. Variables locales (auto) 217
c. Variables static 217
3. Choix méthodologiques 218
4. Mise en pratique : gestion de variables 218
I. Structuration d'un programme, étude d'un automate cellulaire 221
1. Clarifier et définir ses objectifs 221
a. Principe de l'automate cellulaire 221
b. Fonctionnement envisagé 222
2. Trouver une structure de données valable 223
3. Identifier les fonctions principales 224
4. Choisir le niveau des variables fondamentales 225
5. Écrire les fonctions 226
a. Fonction d'initialisation 226
b. Fonction d'affichage 227
c. Fonction de calcul 227
d. Fonction de comptage des voisins 229
e. Fonction de recopie 229
f. Montage dans le main() 230
6. Intégrer une librairie personnelle 231
7. Répartir son code sur plusieurs fichiers C 232
8. Mise en pratique : structuration d'un programme 234
a. Simulation d'un feu de forêt 234
b. Tristus et rigolus 235
c. Simulation d'une attaque de microbes dans le sang 235
d. Bancs de poissons, mouvements de populations 235
e. Élection présidentielle 235
f. Chenille 236
g. Système de vie artificielle, colonies de fourmis 236
h. Boutons et pages 237
i. Panneaux de bois et entrepôts 238
j. Nenuphs et clans 238
k. Neige 1 239
l. Neige 2 239
m. Neige 3 239
n. Casse-brique simple 239
o. Casse-brique guru 239
p. Space invader simple 240
q. Space invader more 240
r. Space invader guru 240
s. Pacman débutant 240
t. Pacman intermediate 240
u. Pacman guru 240
v. Jeu de miroirs 240
w. Simulations football 240
Chapitre 4 Variables pointeurs
A. Principe du pointeur 244
1. Qu'est-ce qu'un pointeur ? 244
a. Mémoire RAM 244
b. Une variable pointeur 245
c. Quatre opérateurs 245
d. Trois utilisations fondamentales des pointeurs 245
2. Déclarer un pointeur dans un programme 246
3. Fonctionnement des quatre opérateurs 247
a. Opérateur adresse : & 247
b. Opérateur étoile : * 248
c. Opérateur flèche : -> 249
d. Opérateur crochet : [] 249
e. Priorité des quatre opérateurs 250
4. Allouer dynamiquement de la mémoire 250
a. La fonction malloc() 250
b. Libérer la mémoire allouée : la fonction free() 251
c. Le pointeur générique void* 253
d. La valeur Null 253
5. Attention à la validité d'une adresse mémoire 254
a. Validité d'une adresse mémoire 254
b. Pourquoi caster le retour des fonctions d'allocation ? 256
6. Cas des tableaux de pointeurs 257
a. Une structure de données très utile 257
b. Un tableau de chaînes de caractères 258
c. Utiliser les arguments de lignes de commandes 259
7. Expérimentation : base pointeurs 261
8. Mise en pratique : base pointeurs 264
a. Avoir des pointeurs et les manipuler 264
b. Tests tableaux / pointeurs 264
c. Base allocation dynamique 266
d. Attention aux erreurs 267
e. Tableaux de chaînes 268
B. Allocation dynamique de tableaux 268
1. Allouer un tableau avec un pointeur 268
2. Allouer une matrice avec un pointeur de pointeur 269
3. Différences entre tableaux statiques et dynamiques 272
4. Autres fonctions d'allocation dynamique 272
a. Fonction calloc() 273
b. Fonction realloc() 273
5. Mise en pratique : allocation dynamique 274
a. Allouer dynamiquement des tableaux 274
b. Allouer dynamiquement des matrices 276
c. Allocation dynamique calloc() et realloc() 278
C. Pointeurs en paramètre de fonction 279
1. Passage par référence 279
a. Cas général d'une variable quelconque 279
b. Exemple : une fonction qui retourne l'heure 280
c. Passage par référence d'une structure 282
d. Passage par référence d'une variable pointeur 282
2. Tableaux dynamiques en paramètre 286
3. Mise en pratique : passage par référence 288
a. Passage par référence, base 288
b. Passage par référence, opérateurs bit à bit 290
c. Passage de pointeurs par référence 291
d. Passage de tableaux dynamiques 292
D. Fichiers (type File*) 293
1. Notions de base 293
a. Le type File* 293
b. Ouverture et fermeture d'un fichier 293
c. Spécifier un chemin d'accès 295
2. Fichiers binaires 296
a. Écriture et lecture en mode binaire 296
b. Détecter la fin d'un fichier binaire 297
c. Déplacements dans un fichier 298
3. Écriture et lecture en mode texte 298
a. Détecter la fin d'un fichier, EOF et feof() 298
b. Lecture / écriture de caractères 299
c. Lecture / écriture de chaînes 300
d. Lecture / écriture formatées 301
4. Sauvegarde d'éléments dynamiques 303
a. Sauver et récupérer un tableau dynamique 303
b. Récupérer des données via des pointeurs 304
5. Mise en pratique : fichiers 305
Chapitre 5 Récursivité
A. Fonctions récursives 310
1. Qu'est-ce que la récursivité ? 310
2. Une fonction récursive basique 310
3. Pile d'appels et débordement 312
4. Retourner une valeur 313
5. Représentation et analyse du fonctionnement 315
a. Analyse descendante 316
b. Analyse ascendante 317
6. Choisir entre itératif ou récursif 317
B. Exemples classiques de fonctions récursives 318
1. Calculs 318
a. Afficher les chiffres d'un entier 318
b. Produit factoriel 319
c. Suite de Fibonacci 319
d. Changement de base arithmétique d'un nombre 321
e. Puissance 323
f. PGCD, algorithme d'Euclide 324
2. Dessins 326
a. Tracé d'une règle graduée : "diviser pour résoudre" 326
b. Tracé de cercles 329
c. Tracé de carrés 330
d. Tracé d'un arbre 331
3. Créations et jeux 334
a. Trouver un chemin dans un labyrinthe 334
b. Création d'un labyrinthe 338
4. Les tours de Hanoï 340
5. Tri rapide d'un tableau de nombres 342
C. Mise en pratique : récursivité 344
Chapitre 6 Structures de données listes et algorithmes
A. Listes chaînées dynamiques 350
1. Qu'est-ce qu'une liste chaînée ? 350
a. Une chaîne constituée de maillons 350
b. Trois types de listes chaînées 350
c. Les actions sur une liste chaînée 351
d. Listes chaînées contre tableaux 352
2. Implémenter une liste simple 352
a. Structure de données d'un maillon 353
b. Début et fin de la liste 353
c. Initialiser un maillon 354
d. Ajouter un maillon au début d'une liste 354
e. Insérer un maillon dans une liste 356
f. Parcourir la liste 359
g. Supprimer un maillon au début de la liste 361
h. Supprimer un élément sur critère 361
i. Détruire la liste 364
j. Sauvegarder la liste 364
3. Implémenter une liste simple circulaire 366
a. Structure de données d'une liste circulaire 366
b. Liste vide 367
c. Début et fin de la liste 367
d. Initialiser un maillon 367
e. Ajouter un maillon 367
f. Parcourir la liste 368
g. Supprimer un maillon 369
h. Détruire la liste 369
4. Implémenter une liste symétrique 370
a. Structure de données 370
b. Liste vide 370
c. Début et fin de la liste 370
d. Initialiser un élément 370
i. Test dans le main() 386
4. Mise en pratique : les piles 387
C. Files 389
1. Principes de la file 389
a. Modèle de données file 389
b. Implémentation statique ou dynamique 389
c. Primitives de gestion des files 390
d. Applications importantes des files 390
2. Implémentation d'une file en dynamique 391
a. Structure de données 391
b. File vide, file pleine 391
c. Initialisation 392
d. Enfiler 392
e. Lire la tête, lire la queue 393
f. Défiler 393
g. Vider, détruire 394
h. Affichage 394
i. Test dans le main() 395
3. Implémentation d'une file en statique (tableau) 396
a. Structure de données 396
b. File vide, file pleine 397
c. Initialisation 397
d. Enfiler 398
e. Lire la tête, lire la queue 398
f. Défiler 399
g. Vider, détruire 399
h. Affichage 399
i. Test dans le main() 400
4. Mise en pratique : les files 401
D. Arbres 403
1. Généralités sur les arbres 403
a. Principe 403
b. Exemples d'utilisation des arbres 404
c. Nomenclature des arbres 406
2. Types d'arbre 407
a. Arbre binaire 407
b. Arbre n-aire 407
c. Transformer un arbre n-aire en arbre binaire 408
3. Représentations en mémoire 408
a. Arbre n-aire 408
b. Arbre binaire 410
c. Structures de données statiques ou dynamiques 411
E. Contrôler un arbre binaire 412
1. Créer un arbre binaire 412
a. Créer un arbre à partir d'un schéma descriptif 412
b. Créer un arbre à partir des données aléatoires d'un tableau 415
c. Créer un arbre en insérant des éléments ordonnés 417
2. Parcourir l'arbre 417
a. Parcours en profondeur 418
b. Parcours en largeur, par niveau 422
3. Afficher l'arbre 423
a. Afficher un arbre avec indentation 423
b. Dessiner l'arbre sans les liens 424
4. Obtenir des propriétés de l'arbre binaire 425
a. Connaître la taille 425
b. Connaître la hauteur 426
c. Savoir si un noeud est une feuille 426
d. Compter le nombre des feuilles de l'arbre 427
e. Lister toutes les feuilles 427
f. Faire la somme des valeurs des noeuds 428
g. Comparer des valeurs des noeuds de l'arbre 429
h. Ramener un noeud de l'arbre à partir d'une valeur 429
5. Dupliquer l'arbre 430
6. Détruire l'arbre 431
7. Conversion statique-dynamique d'un arbre binaire 431
a. Conversion d'un arbre statique en dynamique 431
b. Conversion d'un arbre dynamique en statique 432
8. Sauvegarde et chargement d'un arbre binaire 433
a. Sauvegarder un arbre dynamique 433
b. Charger (load) un arbre dynamique 433
9. Arbres binaires sur fichiers 434
a. Structure de données 434
b. Lecture d'un noeud à partir de son numéro d'enregistrement 434
c. Adaptation des fonctions pour les arbres binaires dynamiques ou statiques 435
10. Mise en pratique : arbre binaire 435
F. Arbres binaires de recherche 439
1. Définition 439
2. Structure de données 440
3. Insérer un élément dans l'arbre selon sa clé 441
a. Comparer deux clés 441
b. Insérer un élément à la bonne place 441
4. Rechercher dans l'arbre un élément selon sa clé 442
5. Supprimer un élément dans l'arbre de recherche 443
a. Trois cas 444
b. Fonction de recherche du noeud max 445
c. Fonction de suppression 445
6. Lister tous les éléments de l'arbre (parcours en largeur) 446
7. Afficher l'arbre 448
8. Test dans le main() 449
9. Mise en pratique : arbres 450
Chapitre 7 Variables objet, découvrir C++
A. C inclus en C++ 452
1. Un projet console en C++ 452
a. Bibliothèque <iostream> 453
b. L'instruction using namespace std; 453
2. Un programme C compilé en C++ 454
B. C augmenté en C++ 458
1. Entrée-sortie console : cout et cin 458
a. Utiliser cout et cin 458
b. Instructions de formatage en sortie 459
2. Variables et constantes 462
a. Déclarations plus souples 462
b. Type bool 462
c. Type caractère unicode : wchar_t 463
d. Typedef inutile pour les structures 463
e. Type référence (pointeur masqué) 464
f. Type pointeur, opérateurs new et delete 467
g. Constantes et pointeurs 468
h. Constantes (const) et énumération (enum) plutôt que #define 469
3. Conversions de types 470
a. static_cast<type> 470
b. const_cast<type> 470
c. reinterpret_cast<type> 471
d. dynamic_cast<type> 471
4. Fonctions 472
a. Fonctions embarquées "inline" 472
b. Retourner une référence 472
c. Surcharge des fonctions 474
d. Valeurs par défaut de paramètres 475
e. Fonctions génériques (template) 476
f. Fonctions comme champs de structures 478
5. Gestion des exceptions (base) 480
a. Instruction throw 480
b. Instruction de saut try-catch 481
c. Instruction throw et appels de fonctions 482
d. Instruction throw sans valeur de retour 483
e. Préciser les retours d'exceptions des fonctions 484
f. Exception non identifiée 485
g. Bloc catch(...) par défaut 486
6. Espaces de noms (namespace) et raccourcis (using) 487
7. Intégrer d'autres langages dans le code C++ 491
C. La dimension objet du C++ 492
1. Classe et objet 492
a. Qu'est-ce qu'une classe ? 493
b. Qu'est-ce qu'un objet ? 493
c. Définir une classe 493
d. Déclarer un objet 494
e. Droits d'accès 494
f. Un programme C muté en classe et objet 495
2. Constructeur 500
a. Paramétrer un objet à sa déclaration 500
b. Le pointeur this 502
c. Constructeur sans paramètre 503
d. Constructeurs avec paramètres 504
e. Constructeur et copie d'objet 505
f. Constructeur avec conversion 509
3. Destructeur 510
4. Classes et membres "static" 512
a. Qualificatif static en C 512
b. Qualificatif static et objets 513
5. Surcharge des opérateurs 514
a. Fonction operator globale hors classe 515
b. Fonction operator localisée dans une classe 516
c. Fonction operator et données dynamiques 519
6. Classes génériques ("template" ou "patron") 523
a. Principe 523
b. Syntaxe de base 523
c. Syntaxe constructeurs 524
d. Syntaxe avec plusieurs types génériques 525
e. Exemple d'implémentation d'une pile générique 525
f. Spécialisation de fonction sur un type donné 527
7. Héritage 529
a. Définir une classe dérivée 529
b. Appeler explicitement un constructeur de la classe de base 531
c. Redéfinition de données ou de fonctions 532
d. Spécifier un membre de la classe de base 533
e. Droits d'accès de la classe héritée 534
f. Héritage multiple 539
g. Héritage multiple avec une base virtuelle 543
8. Pointeurs polymorphes, virtualité 546
a. Accès pointeurs par défaut aux fonctions redéfinies 547
b. Accès pointeur aux fonctions virtuelles redéfinies 548
c. Intérêt des accès pointeurs aux fonctions virtuelles 550
d. Classes abstraites, fonctions virtuelles pures 551
9. Classes et fonctions "amies" (friend) 556
Chapitre 8 Annexe
A. Priorité et associativité des opérateurs 560
B. Quelques outils d'affichage en console Windows 561
C. Librairie C de création en mode console 563
1. Téléchargement 563
2. Installation 563
3. Utilisation 563
4. Fonctions disponibles 564
a. Manipuler le curseur en écriture 564
b. Manipuler la couleur 564
c. Quelques manipulations sur la fenêtre console 565
d. La gestion des évènements 566
e. Chbitmap : buffer de données pour affichage 566
f. Chtext : opérations de text en mode Chbitmap 567
IndexPermalink : ./index.php?lvl=notice_display&id=15124 Du C au C++ : de la programmation procédurale à l'objet [texte imprime] / Frédéric Drouillon . - Paris : ENI, cop. 2011 . - 577p. : ill., couv. ill. en coul. ; 21cm. - (Ressources Informatiques) .
ISBN : 978-2-7460-6655-7
Index p.569-577
Langues : Français
Mots-clés : C plus-plus (langage de programmation) Résumé :
Cours pour apprendre à programmer et maîtriser la conception algorithmique avec les langages de programmation C et C++. Il s'agit d'un parcours des structures de données fondamentales qui réunit par la pratique l'algorithmique à la programmation.
Ce livre s'adresse aux développeurs débutants qui souhaitent maîtriser la conception algorithmique en s'appuyant sur le langage C puis sur le langage C++. L'efficacité, la complémentarité mais aussi la généricité de ces langages vont permettre au lecteur d'acquérir un savoir faire fondamental en programmation informatique pour évoluer ensuite facilement vers d'autres langages de développement. Dans cette perspective, l'auteur a tenu, non seulement à exposer le fonctionnement des outils fondamentaux du langage mais également à fournir les moyens de les mettre en pratique. Ainsi, chaque section théorique est suivie d'une section ""mise en pratique"" dédiée, composée d'exercices diversifiés. Les quatre premiers chapitres concernent l'apprentissage du langage C et les premières armes en algorithmique : - le premier chapitre permet de maîtriser l'écriture et l'organisation d'instructions simples à partir de variables basiques et d'opérations effectuées dessus - Le second chapitre introduit la notion de bloc d'instructions, avec les possibilités fondamentales de saut, branchement, boucle et écriture de fonctions. - Le troisième chapitre expose des types de données beaucoup plus puissants : les structures et les tableaux. Ces nouveaux types de variables permettent d'accéder à des niveaux de conception beaucoup plus élaborés. - Le quatrième chapitre va surtout donner de la puissance à l'écriture via les variables pointeurs qui permettent l'allocation dynamique et l'élaboration de structures de données non natives dans le langage comme les listes chainées. La suite du livre concerne essentiellement les listes ; les listes chainées dynamiques et statiques, mais également les piles et les files ainsi que les arbres, essentiellement les arbres binaires. Pour ce faire, ces chapitres donnent les clés de la récursivité, élément incontournable pour l'implémentation des arbres en C et C++. L'auteur a fait le choix de présenter les structures de données entre le langage C et le langage C++ pour illustrer la passerelle qu'elles peuvent représenter entre le monde sans objet du C et le monde de l'objet C++. La dernière partie présente les fonctionnalités et la dimension objet du langage C++. Tous les points importants sont abordés avec des petits programmes d'illustration. L'objectif est de fournir au lecteur un marchepied conséquent vers le monde de l'objet et d'autres langages objet et de lui donner les clefs pour passer à Java ou C# par exemple.Note de contenu :
Introduction
A. Objectif : apprendre à programmer 24
B. Contenu du cours 24
C. Publics visés 24
D. Comment apprendre à programmer ? 25
1. Comprendre n'est pas savoir faire 25
2. Trois niveaux de difficulté 25
a. Maîtriser les outils 26
b. Résoudre un problème 26
c. Concevoir un programme 27
3. Un apprentissage non linéaire 27
E. Organisation du livre 28
1. Chapitres 28
2. Solutions des exercices 29
3. Annexes 29
F. Environnements de développement 30
G. Remerciements 30
H. Conclusion : la programmation comme écriture 31
Chapitre 1 Variables simples
A. Introduction dans la programmation C 34
1. Qu'est-ce que programmer ? 34
2. Le positionnement par rapport à l'ordinateur 34
3. Les logiciels de la programmation 35
a. Le compilateur 35
b. L'IDE : environnement de développement 35
c. Installation 36
4. Base d'un programme 36
a. Des données et des instructions 36
b. Des "librairies" de fonctions 36
5. Premier programme 37
a. La fonction main() : entrée du programme 37
b. Afficher du texte avec la fonction printf() 37
6. Mise en pratique : découverte du compilateur 38
B. Variables simples 39
1. Qu'est-ce qu'une variable en informatique ? 39
2. Avoir des variables dans un programme 39
a. Les types de variables élémentaires en C 39
b. Déclarer ses variables dans un programme 40
c. Contraintes pour le choix des noms 41
3. Mise en pratique : avoir des variables dans un programme 41
4. Manipulations de base sur les variables 42
a. Affecter une valeur à une variable 42
b. Des valeurs de type caractère (codage ASCII) 43
c. printf() pour afficher des valeurs 44
d. Obtenir et afficher la taille en mémoire d'une variable 46
e. Obtenir et afficher l'adresse mémoire d'une variable 47
f. scanf() pour récupérer une valeur entrée par l'utilisateur 47
g. Les pièges de scanf() 49
5. Mise en pratique : manipulations de variables 49
6. Pour comprendre les variables 51
a. Codage et mesure de l'information 51
b. Plages de valeurs en décimal 52
c. Troncature 52
d. Codage des nombres négatifs 53
7. Mise en pratique : codage des informations numériques 54
8. Expérimentation : variables simples, déclaration, affectation, affichage, saisie 54
C. Les opérations 56
1. La notion d'expression 56
2. Opérations arithmétiques 57
a. Les opérateurs +, -, *, /, % 57
b. Les affectations combinées 58
c. Pré et post incrémentations ou décrémentations 58
d. Opérations entre types différents, opérateur de "cast" 59
e. Priorités entre opérateurs 60
3. Mise en pratique : opérations arithmétiques, cast 63
4. Obtenir des valeurs aléatoires 66
a. Principe du pseudo aléatoire 66
b. La fonction rand() 67
c. La fonction srand() 68
d. Valeurs aléatoires dans des fourchettes 69
5. Mise en pratique : opérations et nombres aléatoires 71
6. Opérations bits à bits 71
a. ET - opérateur & 71
b. OU exclusif - opérateur ^ 72
c. OU inclusif - opérateur | 73
d. Complément - opérateur ~ 73
e. Décalages gauche et droite - opérateurs >> et << 73
f. Priorités des opérateurs bits à bits 73
7. Mise en pratique : opérations bits à bits 74
8. Expérimentation : opérations arithmétiques, valeurs aléatoires 74
Chapitre 2 Les contrôles des blocs d'isntructions
A. Blocs d'instructions et conditions 78
1. Qu'est-ce qu'un bloc d'instructions ? 78
a. Définition 78
b. Exemple 78
c. Utilité d'un bloc d'instructions 79
2. Définir une condition 79
a. Pourquoi une condition ? 79
b. Comment définir une condition ? 80
c. Les opérateurs de comparaison 80
d. L'opérateur unaire NON ! 81
e. Priorités des opérateurs NON et comparaison 81
3. Mise en pratique : opérateurs de comparaison et NON 82
B. Sauts conditionnels 83
1. L'instruction if 83
2. Le couple d'instructions if-else 84
3. La forme contractée du if-else, opérateur conditionnel ? 85
4. La cascade d'instructions if-else if-else 86
5. Expérimentation : les sauts conditionnels (les trois if) 86
6. Mise en pratique : les sauts conditionnels 89
C. Branchements 91
1. Branchement sélectif : switch, case et break 91
2. Rupture de séquence : goto avec étiquette 94
3. Expérimentation : branchement sélectif switch 94
4. Mise en pratique : l'aiguillage switch 96
D. Les tests multiconditions (ET/OU) 97
1. Conjonction ET, opérateur && 97
a. Et avec deux expressions membres 97
b. Et avec plus de deux expressions membres 98
2. Disjonction OU, opérateur || 99
a. Ou avec deux expressions membres 99
b. Ou avec plus de deux expressions membres 100
3. Et prioritaire sur OU 100
4. Priorité avec les autres opérateurs 101
5. Mise en pratique : les opérateurs logiques ET, OU 101
E. Boucles 103
1. Boucle Tant que : le while 103
2. Boucle Faire {...} Tant que : le do-while 105
3. Boucle comptée Pour : le for 105
4. Boucles imbriquées 107
5. Sortie et saut forcés dans une boucle 108
a. Sortir avec l'instruction break 108
b. Passer à l'itération suivante avec l'instruction continue 108
c. Sortir d'une ou de plusieurs boucles imbriquées avec l'instruction goto 109
6. Mise en pratique : les boucles while, do-while et for 109
F. Utilisations typiques de boucles 112
1. Créer un menu utilisateur 112
2. Boucle d'événements dans un jeu vidéo 114
a. Récupérer les entrées clavier (kbhit() et getch()) 114
b. Boucle d'événements simple 114
c. Contrôler le temps d'exécution 115
3. Commencer la création d'un jeu en mode console 116
4. Mise en pratique : menus, boucles d'événements 119
G. Fonctions 121
1. Qu'est-ce qu'une fonction ? 121
2. Écrire sa fonction 122
a. Où écrire sa fonction ? 122
b. Conditions à remplir 122
c. Exemple fonction sans retour ni paramètre 123
d. Exemple fonction avec retour et sans paramètre 123
e. Exemple de fonction sans retour avec un paramètre 124
f. Exemple de fonction avec retour et paramètre 124
g. Conclusion : quatre cas d'écriture de fonction 124
3. Utiliser sa fonction 125
a. Appel de la fonction 125
b. Récupération de la valeur de retour 125
c. Passage de valeurs aux paramètres 126
d. Précision sur le passage par valeur 127
e. Visibilité et déclaration de la fonction 128
4. Cas des fonctions avec liste variable de paramètres 129
a. Liste variable de paramètres de même type 129
b. Liste variable de paramètres de types différents 130
c. Transformer printf() 132
5. Mise en pratique : fonctions 134
a. Identifier les composants d'une fonction 134
b. Déclaration de fonctions 134
c. Procédures sans paramètre 135
d. Fonctions sans paramètre 135
e. Fonctions avec paramètres 135
H. Style, commentaires et indentation 140
1. Pourquoi soigner le style ? 140
2. Typographie et choix des noms 140
3. Indentation rigoureuse et accolades 141
4. Parenthèses pour dissiper les ambiguïtés 143
5. Commentaires pertinents 143
6. Mise en pratique : style, indentation, commentaires 144
Chapitre 3 Variables ensembles (structures et tableaux)
A. Structure 146
1. Qu'est-ce qu'une structure ? 146
2. Avoir une structure dans un programme 146
a. Définir un type de structure 146
b. Déclarer ses variables structure 147
3. Utiliser une structure 148
a. Accès aux éléments avec l'opérateur point 148
b. Priorité de l'opérateur point 148
c. Une structure comme champ dans une structure 148
d. Initialiser une structure à la déclaration 149
e. Copier une structure 151
4. Mise en pratique : définir, déclarer, initialiser des structures 151
B. Structures et fonctions 152
1. Retourner une structure 152
2. Structures en paramètre de fonction 153
3. Expérimentation : une entité mobile à l'écran 155
4. Mise en pratique : structures et fonctions 158
C. Typedef, enum et #define 159
1. Utiliser un typedef 159
2. Utiliser un enum 161
3. Utiliser un #define 162
4. Mise en pratique : typedef, enum, #define 163
D. Tableaux statiques 164
1. Qu'est-ce qu'un tableau ? 164
2. Avoir un tableau statique dans un programme 164
a. Définir et déclarer un tableau 164
b. Utiliser des #define pour les tailles 165
3. Utiliser un tableau 165
a. Accéder aux éléments du tableau avec l'opérateur crochet [] 165
b. Priorité de l'opérateur crochet 166
c. Débordement de tableau 166
d. Initialiser un tableau à la déclaration 166
e. Parcourir un tableau avec une boucle for 167
f. Trier un tableau 167
4. Tableaux à plusieurs dimensions 168
a. Déclarer un tableau à plusieurs dimensions 168
b. Initialiser la déclaration 170
c. Parcourir un tableau à plusieurs dimensions 170
5. Expérimentation : tableaux statiques 171
6. Mise en pratique : opérations de base sur les tableaux statiques (non dynamiques) 175
a. Déclaration de tableaux, accès aux éléments 175
b. Initialisation de tableaux à la déclaration 176
c. Tableaux à plusieurs dimensions 176
d. Boucles et tableaux 177
E. Exemples d'utilisations de tableaux 179
1. Chaînes de caractères 179
2. Image bitmap 180
3. Stocker des données localisées 181
4. Expérimentation : utilisation de chaînes de caractères 182
5. Mise en pratique : tableaux 183
a. Chaînes de caractères 183
b. Image, terrain de jeux 185
c. Localisation de données via plusieurs dimensions 187
F. Tableaux et structures 187
1. Tableau comme champ dans une structure 187
2. Tableau de structures 188
3. Différences entre tableaux et structures 190
4. Mise en pratique : tableaux de structures 191
G. Tableaux et fonctions 195
1. Utiliser un tableau déclaré en global 195
2. Tableau en paramètre de fonction 196
a. Précision sur le type tableau 196
b. La variable pointeur 197
c. En paramètre, conversion du tableau en pointeur 197
d. Choix pour l'écriture des tableaux en paramètre 200
e. Modification des données via un passage par adresse 200
3. Quelques fonctions de traitement de chaînes de caractères 203
a. Récupérer une chaîne entrée par l'utilisateur 203
b. Obtenir la taille d'une chaîne 203
c. Copier une chaîne 204
d. Comparer deux chaînes 204
e. Concaténer deux chaînes 204
4. Expérimentation : tableaux et fonctions 205
5. Mise en pratique : tableaux et fonctions 210
a. Appels de fonctions, tableaux en paramètre 210
b. Manipulations sur les chaînes 213
H. Gestion des variables 214
1. Visibilité des variables 214
a. Profondeur de la déclaration 214
b. Portée des variables 215
c. Masquage d'une variable 215
2. Durée de vie des variables 217
a. Variables globales 217
b. Variables locales (auto) 217
c. Variables static 217
3. Choix méthodologiques 218
4. Mise en pratique : gestion de variables 218
I. Structuration d'un programme, étude d'un automate cellulaire 221
1. Clarifier et définir ses objectifs 221
a. Principe de l'automate cellulaire 221
b. Fonctionnement envisagé 222
2. Trouver une structure de données valable 223
3. Identifier les fonctions principales 224
4. Choisir le niveau des variables fondamentales 225
5. Écrire les fonctions 226
a. Fonction d'initialisation 226
b. Fonction d'affichage 227
c. Fonction de calcul 227
d. Fonction de comptage des voisins 229
e. Fonction de recopie 229
f. Montage dans le main() 230
6. Intégrer une librairie personnelle 231
7. Répartir son code sur plusieurs fichiers C 232
8. Mise en pratique : structuration d'un programme 234
a. Simulation d'un feu de forêt 234
b. Tristus et rigolus 235
c. Simulation d'une attaque de microbes dans le sang 235
d. Bancs de poissons, mouvements de populations 235
e. Élection présidentielle 235
f. Chenille 236
g. Système de vie artificielle, colonies de fourmis 236
h. Boutons et pages 237
i. Panneaux de bois et entrepôts 238
j. Nenuphs et clans 238
k. Neige 1 239
l. Neige 2 239
m. Neige 3 239
n. Casse-brique simple 239
o. Casse-brique guru 239
p. Space invader simple 240
q. Space invader more 240
r. Space invader guru 240
s. Pacman débutant 240
t. Pacman intermediate 240
u. Pacman guru 240
v. Jeu de miroirs 240
w. Simulations football 240
Chapitre 4 Variables pointeurs
A. Principe du pointeur 244
1. Qu'est-ce qu'un pointeur ? 244
a. Mémoire RAM 244
b. Une variable pointeur 245
c. Quatre opérateurs 245
d. Trois utilisations fondamentales des pointeurs 245
2. Déclarer un pointeur dans un programme 246
3. Fonctionnement des quatre opérateurs 247
a. Opérateur adresse : & 247
b. Opérateur étoile : * 248
c. Opérateur flèche : -> 249
d. Opérateur crochet : [] 249
e. Priorité des quatre opérateurs 250
4. Allouer dynamiquement de la mémoire 250
a. La fonction malloc() 250
b. Libérer la mémoire allouée : la fonction free() 251
c. Le pointeur générique void* 253
d. La valeur Null 253
5. Attention à la validité d'une adresse mémoire 254
a. Validité d'une adresse mémoire 254
b. Pourquoi caster le retour des fonctions d'allocation ? 256
6. Cas des tableaux de pointeurs 257
a. Une structure de données très utile 257
b. Un tableau de chaînes de caractères 258
c. Utiliser les arguments de lignes de commandes 259
7. Expérimentation : base pointeurs 261
8. Mise en pratique : base pointeurs 264
a. Avoir des pointeurs et les manipuler 264
b. Tests tableaux / pointeurs 264
c. Base allocation dynamique 266
d. Attention aux erreurs 267
e. Tableaux de chaînes 268
B. Allocation dynamique de tableaux 268
1. Allouer un tableau avec un pointeur 268
2. Allouer une matrice avec un pointeur de pointeur 269
3. Différences entre tableaux statiques et dynamiques 272
4. Autres fonctions d'allocation dynamique 272
a. Fonction calloc() 273
b. Fonction realloc() 273
5. Mise en pratique : allocation dynamique 274
a. Allouer dynamiquement des tableaux 274
b. Allouer dynamiquement des matrices 276
c. Allocation dynamique calloc() et realloc() 278
C. Pointeurs en paramètre de fonction 279
1. Passage par référence 279
a. Cas général d'une variable quelconque 279
b. Exemple : une fonction qui retourne l'heure 280
c. Passage par référence d'une structure 282
d. Passage par référence d'une variable pointeur 282
2. Tableaux dynamiques en paramètre 286
3. Mise en pratique : passage par référence 288
a. Passage par référence, base 288
b. Passage par référence, opérateurs bit à bit 290
c. Passage de pointeurs par référence 291
d. Passage de tableaux dynamiques 292
D. Fichiers (type File*) 293
1. Notions de base 293
a. Le type File* 293
b. Ouverture et fermeture d'un fichier 293
c. Spécifier un chemin d'accès 295
2. Fichiers binaires 296
a. Écriture et lecture en mode binaire 296
b. Détecter la fin d'un fichier binaire 297
c. Déplacements dans un fichier 298
3. Écriture et lecture en mode texte 298
a. Détecter la fin d'un fichier, EOF et feof() 298
b. Lecture / écriture de caractères 299
c. Lecture / écriture de chaînes 300
d. Lecture / écriture formatées 301
4. Sauvegarde d'éléments dynamiques 303
a. Sauver et récupérer un tableau dynamique 303
b. Récupérer des données via des pointeurs 304
5. Mise en pratique : fichiers 305
Chapitre 5 Récursivité
A. Fonctions récursives 310
1. Qu'est-ce que la récursivité ? 310
2. Une fonction récursive basique 310
3. Pile d'appels et débordement 312
4. Retourner une valeur 313
5. Représentation et analyse du fonctionnement 315
a. Analyse descendante 316
b. Analyse ascendante 317
6. Choisir entre itératif ou récursif 317
B. Exemples classiques de fonctions récursives 318
1. Calculs 318
a. Afficher les chiffres d'un entier 318
b. Produit factoriel 319
c. Suite de Fibonacci 319
d. Changement de base arithmétique d'un nombre 321
e. Puissance 323
f. PGCD, algorithme d'Euclide 324
2. Dessins 326
a. Tracé d'une règle graduée : "diviser pour résoudre" 326
b. Tracé de cercles 329
c. Tracé de carrés 330
d. Tracé d'un arbre 331
3. Créations et jeux 334
a. Trouver un chemin dans un labyrinthe 334
b. Création d'un labyrinthe 338
4. Les tours de Hanoï 340
5. Tri rapide d'un tableau de nombres 342
C. Mise en pratique : récursivité 344
Chapitre 6 Structures de données listes et algorithmes
A. Listes chaînées dynamiques 350
1. Qu'est-ce qu'une liste chaînée ? 350
a. Une chaîne constituée de maillons 350
b. Trois types de listes chaînées 350
c. Les actions sur une liste chaînée 351
d. Listes chaînées contre tableaux 352
2. Implémenter une liste simple 352
a. Structure de données d'un maillon 353
b. Début et fin de la liste 353
c. Initialiser un maillon 354
d. Ajouter un maillon au début d'une liste 354
e. Insérer un maillon dans une liste 356
f. Parcourir la liste 359
g. Supprimer un maillon au début de la liste 361
h. Supprimer un élément sur critère 361
i. Détruire la liste 364
j. Sauvegarder la liste 364
3. Implémenter une liste simple circulaire 366
a. Structure de données d'une liste circulaire 366
b. Liste vide 367
c. Début et fin de la liste 367
d. Initialiser un maillon 367
e. Ajouter un maillon 367
f. Parcourir la liste 368
g. Supprimer un maillon 369
h. Détruire la liste 369
4. Implémenter une liste symétrique 370
a. Structure de données 370
b. Liste vide 370
c. Début et fin de la liste 370
d. Initialiser un élément 370
i. Test dans le main() 386
4. Mise en pratique : les piles 387
C. Files 389
1. Principes de la file 389
a. Modèle de données file 389
b. Implémentation statique ou dynamique 389
c. Primitives de gestion des files 390
d. Applications importantes des files 390
2. Implémentation d'une file en dynamique 391
a. Structure de données 391
b. File vide, file pleine 391
c. Initialisation 392
d. Enfiler 392
e. Lire la tête, lire la queue 393
f. Défiler 393
g. Vider, détruire 394
h. Affichage 394
i. Test dans le main() 395
3. Implémentation d'une file en statique (tableau) 396
a. Structure de données 396
b. File vide, file pleine 397
c. Initialisation 397
d. Enfiler 398
e. Lire la tête, lire la queue 398
f. Défiler 399
g. Vider, détruire 399
h. Affichage 399
i. Test dans le main() 400
4. Mise en pratique : les files 401
D. Arbres 403
1. Généralités sur les arbres 403
a. Principe 403
b. Exemples d'utilisation des arbres 404
c. Nomenclature des arbres 406
2. Types d'arbre 407
a. Arbre binaire 407
b. Arbre n-aire 407
c. Transformer un arbre n-aire en arbre binaire 408
3. Représentations en mémoire 408
a. Arbre n-aire 408
b. Arbre binaire 410
c. Structures de données statiques ou dynamiques 411
E. Contrôler un arbre binaire 412
1. Créer un arbre binaire 412
a. Créer un arbre à partir d'un schéma descriptif 412
b. Créer un arbre à partir des données aléatoires d'un tableau 415
c. Créer un arbre en insérant des éléments ordonnés 417
2. Parcourir l'arbre 417
a. Parcours en profondeur 418
b. Parcours en largeur, par niveau 422
3. Afficher l'arbre 423
a. Afficher un arbre avec indentation 423
b. Dessiner l'arbre sans les liens 424
4. Obtenir des propriétés de l'arbre binaire 425
a. Connaître la taille 425
b. Connaître la hauteur 426
c. Savoir si un noeud est une feuille 426
d. Compter le nombre des feuilles de l'arbre 427
e. Lister toutes les feuilles 427
f. Faire la somme des valeurs des noeuds 428
g. Comparer des valeurs des noeuds de l'arbre 429
h. Ramener un noeud de l'arbre à partir d'une valeur 429
5. Dupliquer l'arbre 430
6. Détruire l'arbre 431
7. Conversion statique-dynamique d'un arbre binaire 431
a. Conversion d'un arbre statique en dynamique 431
b. Conversion d'un arbre dynamique en statique 432
8. Sauvegarde et chargement d'un arbre binaire 433
a. Sauvegarder un arbre dynamique 433
b. Charger (load) un arbre dynamique 433
9. Arbres binaires sur fichiers 434
a. Structure de données 434
b. Lecture d'un noeud à partir de son numéro d'enregistrement 434
c. Adaptation des fonctions pour les arbres binaires dynamiques ou statiques 435
10. Mise en pratique : arbre binaire 435
F. Arbres binaires de recherche 439
1. Définition 439
2. Structure de données 440
3. Insérer un élément dans l'arbre selon sa clé 441
a. Comparer deux clés 441
b. Insérer un élément à la bonne place 441
4. Rechercher dans l'arbre un élément selon sa clé 442
5. Supprimer un élément dans l'arbre de recherche 443
a. Trois cas 444
b. Fonction de recherche du noeud max 445
c. Fonction de suppression 445
6. Lister tous les éléments de l'arbre (parcours en largeur) 446
7. Afficher l'arbre 448
8. Test dans le main() 449
9. Mise en pratique : arbres 450
Chapitre 7 Variables objet, découvrir C++
A. C inclus en C++ 452
1. Un projet console en C++ 452
a. Bibliothèque <iostream> 453
b. L'instruction using namespace std; 453
2. Un programme C compilé en C++ 454
B. C augmenté en C++ 458
1. Entrée-sortie console : cout et cin 458
a. Utiliser cout et cin 458
b. Instructions de formatage en sortie 459
2. Variables et constantes 462
a. Déclarations plus souples 462
b. Type bool 462
c. Type caractère unicode : wchar_t 463
d. Typedef inutile pour les structures 463
e. Type référence (pointeur masqué) 464
f. Type pointeur, opérateurs new et delete 467
g. Constantes et pointeurs 468
h. Constantes (const) et énumération (enum) plutôt que #define 469
3. Conversions de types 470
a. static_cast<type> 470
b. const_cast<type> 470
c. reinterpret_cast<type> 471
d. dynamic_cast<type> 471
4. Fonctions 472
a. Fonctions embarquées "inline" 472
b. Retourner une référence 472
c. Surcharge des fonctions 474
d. Valeurs par défaut de paramètres 475
e. Fonctions génériques (template) 476
f. Fonctions comme champs de structures 478
5. Gestion des exceptions (base) 480
a. Instruction throw 480
b. Instruction de saut try-catch 481
c. Instruction throw et appels de fonctions 482
d. Instruction throw sans valeur de retour 483
e. Préciser les retours d'exceptions des fonctions 484
f. Exception non identifiée 485
g. Bloc catch(...) par défaut 486
6. Espaces de noms (namespace) et raccourcis (using) 487
7. Intégrer d'autres langages dans le code C++ 491
C. La dimension objet du C++ 492
1. Classe et objet 492
a. Qu'est-ce qu'une classe ? 493
b. Qu'est-ce qu'un objet ? 493
c. Définir une classe 493
d. Déclarer un objet 494
e. Droits d'accès 494
f. Un programme C muté en classe et objet 495
2. Constructeur 500
a. Paramétrer un objet à sa déclaration 500
b. Le pointeur this 502
c. Constructeur sans paramètre 503
d. Constructeurs avec paramètres 504
e. Constructeur et copie d'objet 505
f. Constructeur avec conversion 509
3. Destructeur 510
4. Classes et membres "static" 512
a. Qualificatif static en C 512
b. Qualificatif static et objets 513
5. Surcharge des opérateurs 514
a. Fonction operator globale hors classe 515
b. Fonction operator localisée dans une classe 516
c. Fonction operator et données dynamiques 519
6. Classes génériques ("template" ou "patron") 523
a. Principe 523
b. Syntaxe de base 523
c. Syntaxe constructeurs 524
d. Syntaxe avec plusieurs types génériques 525
e. Exemple d'implémentation d'une pile générique 525
f. Spécialisation de fonction sur un type donné 527
7. Héritage 529
a. Définir une classe dérivée 529
b. Appeler explicitement un constructeur de la classe de base 531
c. Redéfinition de données ou de fonctions 532
d. Spécifier un membre de la classe de base 533
e. Droits d'accès de la classe héritée 534
f. Héritage multiple 539
g. Héritage multiple avec une base virtuelle 543
8. Pointeurs polymorphes, virtualité 546
a. Accès pointeurs par défaut aux fonctions redéfinies 547
b. Accès pointeur aux fonctions virtuelles redéfinies 548
c. Intérêt des accès pointeurs aux fonctions virtuelles 550
d. Classes abstraites, fonctions virtuelles pures 551
9. Classes et fonctions "amies" (friend) 556
Chapitre 8 Annexe
A. Priorité et associativité des opérateurs 560
B. Quelques outils d'affichage en console Windows 561
C. Librairie C de création en mode console 563
1. Téléchargement 563
2. Installation 563
3. Utilisation 563
4. Fonctions disponibles 564
a. Manipuler le curseur en écriture 564
b. Manipuler la couleur 564
c. Quelques manipulations sur la fenêtre console 565
d. La gestion des évènements 566
e. Chbitmap : buffer de données pour affichage 566
f. Chtext : opérations de text en mode Chbitmap 567
IndexPermalink : ./index.php?lvl=notice_display&id=15124 Réservation
Réserver ce document
Exemplaires
Code-barres Cote Support Localisation Section Disponibilité L261/1 L261 Livre Magasin d'Ouvrages / INF Langage Consultation sur place
Exclu du prêtL261/2 L261 Livre Magasin d'Ouvrages / INF Langage Disponible Aucun avis, veuillez vous identifier pour ajouter le vôtre !
Joomla / Etienne Langlet (cop.2012)
Titre : Joomla : création et administration d'un site web Type de document : texte imprime Auteurs : Etienne Langlet, Auteur Editeur : Paris : ENI Année de publication : cop.2012 Collection : Ressources Informatiques Importance : 409 p. Présentation : ill., couv. ill. en coul. Format : 21cm ISBN/ISSN/EAN : 978-2-7460-7301-2 Note générale :
La couv. porte en plus : "Informatique technique"
Liste de sites Internet p. 395-399. IndexLangues : Français Mots-clés : Joomla(logiciel) Systèmes de gestion de contenu Web Sites Web:développement,Sites Web:conception Résumé :
Ce livre sur l'administration et la personnalisation d'un site web avec Joomla! (en version LTS 2.5 au moment de l'écriture) s'adresse à toute personne appelée à mettre un œuvre un site conçu avec le plus populaire des CMS Open Source. Dans un premier temps, après une présentation du produit, de son historique et des technologies associées, l'auteur propose au lecteur de le guider sur les étapes d'installation et de paramétrage initial de Joomla!. Ensuite, l'architecture et la maîtrise de l'arborescence sont mises en avant et détaillées sans oublier naturellement les aspects de construction du contenu et la navigation du site. La sécurité n'est pas en reste ; l'auteur détaille la gestion des utilisateurs ainsi que le paramétrage très fin de leurs permissions et consacre un chapitre complet à la sécurité de l'infrastructure et à celle du serveur Web, ainsi qu'à leur optimisation. Enfin, ce livre ne pouvait pas être complet sans parler du système d'extension de Joomla! en présentant des extensions populaires ainsi que la personnalisation graphique par la réalisation de templates. Avec ou sans connaissances préalables sur Joomla!, l'ouvrage se veut didactique et pratique pour réussir son projet Joomla!. Les chapitres du livre : Avant-propos - Introduction - Connaissances requises pour aborder Joomla! - Installation de Joomla! 2.5 - Administration système de Joomla! 2.5 - Gestion et organisation du contenu - Gestion des utilisateurs et des permissions - Construction d'un site Joomla! 2.5 - Enrichir un site Joomla! avec les extensions - Optimisation et sécurisation de Joomla! 2.5 - Webographie.Note de contenu :
Avant-propos
1. Objectifs du livre 15
1.1 Orientation 15
1.2 À qui s'adresse ce livre ? 16
2. Contenu de l'ouvrage 17
3. Conclusion 18
Chapitre 1 Introduction
1. Un peu d'histoire pour commencer 19
1.1 Du web statique au web dynamique 19
1.1.1 Les sites statiques 19
1.1.2 Vers les sites web dynamiques 20
1.2 Les technologies actuelles pour le web dynamique 21
1.3 PHP 22
1.3.1 Présentation 22
1.3.2 Principe de fonctionnement de PHP et MySQL 22
2. Et les CMS dans tout ça ? 23
2.1 Qu'est-ce qu'un CMS ? 23
2.2 Que faut-il attendre d'un CMS ? 24
2.3 Les fonctionnalités générales d'un CMS 24
2.3.1 La gestion du contenu et la gestion de sa publication 24
2.3.2 La séparation du fond et de la forme 25
2.3.3 L'organisation des contenus 25
2.3.4 La gestion des contributions 25
2.3.5 Un processus de validation 25
2.3.6 Le cycle de vie des articles 25
2.3.7 La prise en charge des différents types de contenu 26
2.4 Utiliser un CMS ? Est-ce vraiment pour moi ? 26
3. Joomla! 27
3.1 Historique du CMS Open Source le plus populaire du moment 27
3.2 Le cycle de développement de Joomla! 29
3.3 Disponibilité de Joomla! 30
3.4 Les nouveautés de Joomla! 2.5 31
3.4.1 Interface utilisateur 31
3.4.2 Infrastructure 31
3.4.3 Administration 32
3.4.4 Sécurité 33
3.4.5 Organisation du contenu et de la navigation 34
3.5 En guise de conclusion 35
Chapitre 2 Connaissances requises pour aborder Joomla!
1. Qu'est-ce que Joomla! ? 37
2. Apache, PHP, MySQL... Qui fait quoi pour Joomla! ? 38
2.1 Présentation 38
2.2 Architecture des solutions LAMP 38
2.2.1 Apache : le serveur web 39
2.2.2 MySQL : le système de gestion de données 40
2.2.3 PHP : le langage de programmation 41
2.2.4 Pour résumer 42
2.3 Internet Information Services : une alternative à Apache sous Windows 43
3. La présentation et l'interface utilisateur 45
3.1 (X)HTML, CSS et JavaScript 45
3.1.1 XHTML 46
3.1.2 Les feuilles de style CSS 48
3.1.3 Le langage JavaScript 50
4. Autres technologies 52
4.1 Le langage XML 52
4.1.1 Historique 52
4.1.2 Principe de XML 54
4.1.3 Cas d'utilisation de XML 55
4.2 XML dans Joomla! 58
5. En synthèse 60
Chapitre 3 Installation de Joomla! 2.5
1. Introduction 61
1.1 Principe d'installation de Joomla! 2.5 61
1.2 Les pré-requis techniques 62
1.2.1 Produits et versions 62
1.2.2 Problèmes et écueils 62
2. Obtenir et installer une plateforme de serveur web 64
2.1 La plateforme LAMP 64
2.1.1 Principes 64
2.1.2 LAMP et Joomla! 65
2.2 Installation par un package prêt à l'emploi 66
2.3 Installation séparée des différents produits 67
2.4 Utiliser un serveur web alternatif - le cas Microsoft IIS 68
3. Installation sous Windows 69
3.1 Utiliser un package d'installation 69
3.1.1 Installation avec XAMPP 69
3.1.2 Installation avec Wamp Server 81
3.2 Installer les produits séparément 87
3.2.1 Installation de MySQL 88
3.2.2 Installation d'Apache HTTP Server 93
3.2.3 Installation de PHP sur Apache HTTP Server 96
3.2.4 Installation de Microsoft Internet Information Server 7 102
3.2.5 Installation de PHP sur Microsoft Internet Information Server 7 103
4. Installation sous Linux 104
4.1 Récupération et installation des paquets sous Ubuntu 104
4.2 Récupération et installation des paquets sous Fedora Linux 105
5. Finaliser la plateforme 106
5.1 Des outils complémentaires 106
5.2 Tester l'installation 108
6. Installation de Joomla! 2.5 109
6.1 Télécharger Joomla! 2.5 110
6.2 Installation sur le serveur web 110
6.3 Un assistant pour nous guider 111
6.3.1 Avant de commencer 111
6.3.2 L'assistant d'installation de Joomla! 114
6.4 Installer Joomla! 2.5 chez un hébergeur 122
Chapitre 4 Administration système de Joomla! 2.5
1. Tour d'horizon d'un site Joomla! 2.5 123
1.1 Structure d'un site Joomla! 2.5 123
1.2 Les données d'exemple 127
2. Arborescence d'installation de Joomla! 2.5 128
2.1 L'arborescence racine 129
2.1.1 Le contenu des dossiers 129
2.1.2 Les fichiers fondamentaux 131
2.2 L'arborescence de l'administration 132
3. Joomla! 2.5, le coeur et les extensions 133
3.1 Architecture de Joomla! 2.5 133
3.2 Les différents types d'extensions de Joomla! 135
3.2.1 Les templates 135
3.2.2 Les plug-ins 135
3.2.3 Les composants 136
3.2.4 Les modules 136
3.3 Choisir des extensions 137
4. Frontend vs. Backend 137
4.1 Le frontend, la vitrine du site web 138
4.1.1 Les menus 140
4.1.2 Le module d'authentification (Login Form) 140
4.1.3 Le module de recherche 141
4.1.4 Le module de fil d'Ariane (Breadcrumb) 141
4.1.5 Autres modules 141
4.2 Qui a besoin du frontend ? 141
5. Le backend, l'espace des administrateurs 143
5.1 Ergonomie du backend et navigation 143
5.1.1 La barre de menus 146
5.1.2 La barre d'icônes 146
5.1.3 Les composants d'affichage 146
5.1.4 La zone d'information 148
5.2 Les différents menus et boutons d'action 149
5.2.1 Les menus 149
5.2.2 Les boutons d'action 151
6. Configuration du site 154
6.1 Concepts 154
6.2 Le menu «Site» du backend 154
6.2.1 Le panneau de contrôle (Control Panel) 155
6.2.2 Le profil utilisateur (My Profile) 155
6.2.3 La configuration globale de Joomla! (Global Configuration) 156
6.3 Paramétrage du site après installation - synthèse 162
7. Configuration du serveur web pour les URL simplifées 162
7.1 Principe de fonctionnement 163
7.2 Avec Apache HTTP Server 164
7.3 Avec Microsoft IIS 165
8. Sauvegarde et restauration d'un site Joomla! 2.5 166
8.1 Stratégie de sauvegarde d'un site 166
8.2 Sauvegarde de l'arborescence et de la base de données 166
8.2.1 Sauvegarde de l'arborescence 166
8.2.2 Sauvegarde de la base de données 167
8.3 Restauration des données 168
8.3.1 Restauration de la base de données 169
8.3.2 Adaptation de la configuration de Joomla! 170
9. Transférer une installation locale de Joomla! 2.5 chez un hébergeur 170
9.1 Préambule 170
9.2 Les informations requises 171
9.3 Sauvegarde et transfert des données 172
Chapitre 5 Gestion et organisation du contenu
1. La dynamique de rédaction et de publication 175
1.1 Introduction 175
1.2 Qui peut écrire et comment ? 176
1.3 Qui valide le contenu ? 177
2. L'organisation du contenu dans Joomla! 177
2.1 Un point sur les catégories 177
2.2 Qui peut gérer le contenu ? 178
3. Les articles : contenu par défaut dans Joomla! 178
3.1 La structure d'un article 178
3.2 La gestion des articles 179
3.3 Rédaction d'un article 182
3.3.1 Depuis le frontend 182
3.3.2 Depuis le backend 186
3.4 Modification d'un article 187
3.5 Publication d'un article 187
3.6 Les filtres de texte 190
4. Organiser les articles en catégories 193
4.1 La catégorisation dans Joomla! 193
4.2 Création et gestion des catégories 194
4.2.1 La liste des catégories 194
4.2.2 Création d'une catégorie 196
5. Ajouter des médias aux contenus Joomla! 198
5.1 Le gestionnaire de média 198
5.1.1 Présentation du gestionnaire de médias 198
5.1.2 La configuration du gestionnaire de média 200
5.2 Le transfert de médias 200
5.2.1 Transfert de fichiers depuis le backend 200
5.2.2 Transfert de médias en masse 201
5.2.3 Le transfert de fichiers depuis le frontend 204
6. Diverses opérations de maintenance sur le contenu 205
6.1 Les statuts des contenus 205
6.2 Les verrous 207
Chapitre 6 Gestion des utilisateurs et des permissions
1. Introduction 209
1.1 Préambule 209
1.2 Identifier les besoins utilisateurs 210
2. Le nouveau système de gestion des permissions de Joomla! 2.5 210
2.1 Limitations de Joomla! 1.5 210
2.2 Les avantages de la nouvelle solution 211
3. La gestion des utilisateurs 212
3.1 Principes dans Joomla! 212
3.2 La connexion au site public 212
3.3 Les comptes utilisateurs 214
3.3.1 La liste des utilisateurs 214
3.3.2 Les paramètres de comptes utilisateurs 215
3.4 Création de comptes utilisateurs 218
3.4.1 Création de comptes depuis le backend 218
3.4.2 Création de comptes depuis le frontend 221
3.5 Création avancée de comptes utilisateurs 222
4. La gestion des groupes 224
4.1 Qu'est-ce qu'un groupe dans Joomla! 2.5 ? 224
4.1.1 Principes des groupes 224
4.1.2 Les groupes par défaut 225
4.2 Créer les groupes et les associer aux comptes utilisateurs 226
4.2.1 Création d'un groupe 226
4.2.2 Affectation des groupes 228
5. La gestion des permissions 229
5.1 Le principe des permissions de Joomla! 2.5 229
5.2 Les différentes permissions 231
6. Définition des permissions 232
6.1 Les permissions par défaut 232
6.2 Application des permissions au contenu 233
6.2.1 Les permissions sur les catégories 234
6.2.2 Les permissions sur les articles 237
6.3 Conclusion 238
7. Les niveaux d'accès 238
7.1 Principe de base des niveaux d'accès dans Joomla! 238
7.2 Les niveaux d'accès standard 239
7.3 Créer des niveaux d'accès supplémentaires 240
8. L'authentification des utilisateurs dans Joomla! 242
8.1 Préambule 242
8.2 L'authentification Joomla! via la base de données 243
9. Les méthodes d'authentification alternatives 245
9.1 Utiliser l'authentification Gmail 245
9.2 Utiliser l'authentification LDAP 246
9.2.1 Les services d'annuaire 246
9.2.2 Exemple de mise en oeuvre avec OpenLDAP 247
Chapitre 7 Construction d'un site Joomla! 2.5
1. La navigation sur un site Internet 251
2. Organisation de la navigation avec les menus 253
2.1 Le principe des menus dans Joomla! 253
2.1.1 Un module pour un menu 254
2.1.2 Les entrées ou liens de menu 256
2.2 Les menus par défaut de Joomla! 2.5 257
2.2.1 Le menu principal 257
2.2.2 Le menu utilisateur 258
2.3 Les différents types d'éléments de menu 258
2.4 Ajouter un nouveau menu 260
2.4.1 Création du menu 260
2.4.2 Ajout d'un module pour le nouveau menu 262
2.5 Ajouter des liens de menu 265
2.5.1 Les types de lien de menu pour les contenus 265
2.5.2 Un lien de type Category List 266
2.5.3 Un lien de type Category Blog 273
2.6 Configuration des modules de menus 279
2.6.1 Sélection de l'affichage de pages 279
2.6.2 Mise en oeuvre avec le menu d'exemple 279
2.7 La page d'accueil par défaut 285
3. Tour d'horizon des composants par défaut de Joomla! 2.5 286
3.1 Améliorer son site Internet avec les composants de Joomla! 286
3.2 Les bannières publicitaires 287
3.2.1 Principes des bannières 287
3.2.2 Création des annonceurs 287
3.2.3 Création des bannières 288
3.2.4 Affichage des bannières sur le site public 290
3.3 Les flux d'information 292
3.3.1 Les flux RSS 292
3.3.2 Création des flux RSS 293
3.3.3 Afficher les flux RSS 293
3.4 Le moteur de recherche de Joomla! 2.5 297
3.4.1 Activer la recherche 297
3.4.2 Obtenir des statistiques sur les recherches 298
3.4.3 La recherche avancée de Joomla! 2.5 299
Chapitre 8 Enrichir un site Joomla! avec les extensions
1. Rappel sur les différents types d'extensions Joomla! 303
1.1 Les composants 304
1.2 Les modules 304
1.3 Les plug-ins 305
1.4 Les templates 305
2. Travailler avec les modules 306
2.1 La liste des modules 306
2.2 Principe de configuration des modules 308
2.3 Le positionnement 311
2.4 Les modules par défaut de Joomla! 312
3. Travailler avec les plug-ins 314
3.1 La liste des plug-ins 314
3.2 Les catégories de plug-ins 315
3.3 Principe de configuration des plug-ins 316
3.4 Les plug-ins par défaut de Joomla! 317
3.4.1 Authentification 317
3.4.2 Captcha 318
3.4.3 Content 318
3.4.4 Editors 320
3.4.5 Editors-xtd 321
3.4.6 Extension 321
3.4.7 Finder 322
3.4.8 Quickicons 322
3.4.9 Search 323
3.4.10 System 324
3.4.11 User 326
4. L'esthétique du site par les templates 326
4.1 Principes de séparation du fond et de la forme avec les templates 326
4.1.1 Illustration 327
4.2 Configurer et utiliser les templates Joomla! 329
4.2.1 Le template par défaut 330
4.2.2 Les styles 330
4.3 Utiliser plusieurs templates sur un même site 332
4.4 Les templates par défaut 334
4.4.1 Les templates du site (frontend) 335
4.4.2 Les templates de l'administration (backend) 335
5. Rechercher et installer une extension Joomla! 335
5.1 Le Joomla! Extensions Directory (JED) 335
5.2 Installation depuis le backend 338
5.2.1 Installation de nouvelles extensions 338
5.2.2 La mise à jour d'extensions 339
5.2.3 Gérer les extensions installées 341
5.3 Quelques exemples d'extensions populaires 344
5.3.1 Installer un éditeur alternatif 345
5.3.2 Installer un gestionnaire de galerie photo 351
5.4 Conclusion 354
Chapitre 9 Optimisation et sécurisation de Joomla! 2.5
1. Principes d'optimisation des sites PHP/MySQL 355
1.1 Optimiser les performances 356
1.2 Optimiser le référencement du site 356
2. Configuration d'Apache, de PHP et de MySQL pour les performances 357
2.1 Préambule 357
2.2 Configuration décentralisée avec les fichiers .htaccess 357
2.3 Apache 358
2.3.1 Intervenir sur les capacités de traitement 358
2.3.2 Ajuster la bande passante autorisée 364
2.3.3 Compresser les données 368
2.4 PHP 371
2.5 MySQL 371
2.5.1 La configuration du serveur MySQL 371
2.5.2 Ajuster le cache de requêtes 372
2.5.3 Ajuster la mémoire réservée aux index 372
2.5.4 Optimiser les tables 374
3. Utiliser le cache de données avec Joomla! 2.5 376
3.1 Les différents niveaux de cache 376
3.1.1 La mise en cache des pages 376
3.1.2 La mise en cache des vues et des modules 379
3.2 Conclusion 381
4. Sécuriser un site Joomla! 2.5 382
4.1 Restrictions d'accès 382
4.1.1 Les directives de mod_access et mod_authez_host 382
4.1.2 Accès au site 385
4.1.3 Accès au backend 386
4.2 Cryptage des données échangées 387
4.2.1 Implémenter une stratégie de cryptage SSL 388
4.2.2 Cryptage de l'accès à Joomla! 391
4.2.3 Cryptage de l'authentification sur le frontend 392
Webographie
1. Les sites officiels de Joomla! 395
1.1 Le site de référence 395
1.2 Pour obtenir des extensions 395
1.3 Pour les développeurs d'extensions 396
1.3.1 Le JDN 396
1.3.2 JoomlaCode 396
2. Les sites Joomla! francophones 396
2.1 La référence française 396
2.2 Les portails francophones 397
2.3 Les sites d'aide et d'assistance 397
2.4 L'évènementiel en France autour de Joomla! 397
3. Sites proposant des templates 398
4. Conclusion 399
IndexPermalink : ./index.php?lvl=notice_display&id=15128 Joomla : création et administration d'un site web [texte imprime] / Etienne Langlet, Auteur . - Paris : ENI, cop.2012 . - 409 p. : ill., couv. ill. en coul. ; 21cm. - (Ressources Informatiques) .
ISBN : 978-2-7460-7301-2
La couv. porte en plus : "Informatique technique"
Liste de sites Internet p. 395-399. Index
Langues : Français
Mots-clés : Joomla(logiciel) Systèmes de gestion de contenu Web Sites Web:développement,Sites Web:conception Résumé :
Ce livre sur l'administration et la personnalisation d'un site web avec Joomla! (en version LTS 2.5 au moment de l'écriture) s'adresse à toute personne appelée à mettre un œuvre un site conçu avec le plus populaire des CMS Open Source. Dans un premier temps, après une présentation du produit, de son historique et des technologies associées, l'auteur propose au lecteur de le guider sur les étapes d'installation et de paramétrage initial de Joomla!. Ensuite, l'architecture et la maîtrise de l'arborescence sont mises en avant et détaillées sans oublier naturellement les aspects de construction du contenu et la navigation du site. La sécurité n'est pas en reste ; l'auteur détaille la gestion des utilisateurs ainsi que le paramétrage très fin de leurs permissions et consacre un chapitre complet à la sécurité de l'infrastructure et à celle du serveur Web, ainsi qu'à leur optimisation. Enfin, ce livre ne pouvait pas être complet sans parler du système d'extension de Joomla! en présentant des extensions populaires ainsi que la personnalisation graphique par la réalisation de templates. Avec ou sans connaissances préalables sur Joomla!, l'ouvrage se veut didactique et pratique pour réussir son projet Joomla!. Les chapitres du livre : Avant-propos - Introduction - Connaissances requises pour aborder Joomla! - Installation de Joomla! 2.5 - Administration système de Joomla! 2.5 - Gestion et organisation du contenu - Gestion des utilisateurs et des permissions - Construction d'un site Joomla! 2.5 - Enrichir un site Joomla! avec les extensions - Optimisation et sécurisation de Joomla! 2.5 - Webographie.Note de contenu :
Avant-propos
1. Objectifs du livre 15
1.1 Orientation 15
1.2 À qui s'adresse ce livre ? 16
2. Contenu de l'ouvrage 17
3. Conclusion 18
Chapitre 1 Introduction
1. Un peu d'histoire pour commencer 19
1.1 Du web statique au web dynamique 19
1.1.1 Les sites statiques 19
1.1.2 Vers les sites web dynamiques 20
1.2 Les technologies actuelles pour le web dynamique 21
1.3 PHP 22
1.3.1 Présentation 22
1.3.2 Principe de fonctionnement de PHP et MySQL 22
2. Et les CMS dans tout ça ? 23
2.1 Qu'est-ce qu'un CMS ? 23
2.2 Que faut-il attendre d'un CMS ? 24
2.3 Les fonctionnalités générales d'un CMS 24
2.3.1 La gestion du contenu et la gestion de sa publication 24
2.3.2 La séparation du fond et de la forme 25
2.3.3 L'organisation des contenus 25
2.3.4 La gestion des contributions 25
2.3.5 Un processus de validation 25
2.3.6 Le cycle de vie des articles 25
2.3.7 La prise en charge des différents types de contenu 26
2.4 Utiliser un CMS ? Est-ce vraiment pour moi ? 26
3. Joomla! 27
3.1 Historique du CMS Open Source le plus populaire du moment 27
3.2 Le cycle de développement de Joomla! 29
3.3 Disponibilité de Joomla! 30
3.4 Les nouveautés de Joomla! 2.5 31
3.4.1 Interface utilisateur 31
3.4.2 Infrastructure 31
3.4.3 Administration 32
3.4.4 Sécurité 33
3.4.5 Organisation du contenu et de la navigation 34
3.5 En guise de conclusion 35
Chapitre 2 Connaissances requises pour aborder Joomla!
1. Qu'est-ce que Joomla! ? 37
2. Apache, PHP, MySQL... Qui fait quoi pour Joomla! ? 38
2.1 Présentation 38
2.2 Architecture des solutions LAMP 38
2.2.1 Apache : le serveur web 39
2.2.2 MySQL : le système de gestion de données 40
2.2.3 PHP : le langage de programmation 41
2.2.4 Pour résumer 42
2.3 Internet Information Services : une alternative à Apache sous Windows 43
3. La présentation et l'interface utilisateur 45
3.1 (X)HTML, CSS et JavaScript 45
3.1.1 XHTML 46
3.1.2 Les feuilles de style CSS 48
3.1.3 Le langage JavaScript 50
4. Autres technologies 52
4.1 Le langage XML 52
4.1.1 Historique 52
4.1.2 Principe de XML 54
4.1.3 Cas d'utilisation de XML 55
4.2 XML dans Joomla! 58
5. En synthèse 60
Chapitre 3 Installation de Joomla! 2.5
1. Introduction 61
1.1 Principe d'installation de Joomla! 2.5 61
1.2 Les pré-requis techniques 62
1.2.1 Produits et versions 62
1.2.2 Problèmes et écueils 62
2. Obtenir et installer une plateforme de serveur web 64
2.1 La plateforme LAMP 64
2.1.1 Principes 64
2.1.2 LAMP et Joomla! 65
2.2 Installation par un package prêt à l'emploi 66
2.3 Installation séparée des différents produits 67
2.4 Utiliser un serveur web alternatif - le cas Microsoft IIS 68
3. Installation sous Windows 69
3.1 Utiliser un package d'installation 69
3.1.1 Installation avec XAMPP 69
3.1.2 Installation avec Wamp Server 81
3.2 Installer les produits séparément 87
3.2.1 Installation de MySQL 88
3.2.2 Installation d'Apache HTTP Server 93
3.2.3 Installation de PHP sur Apache HTTP Server 96
3.2.4 Installation de Microsoft Internet Information Server 7 102
3.2.5 Installation de PHP sur Microsoft Internet Information Server 7 103
4. Installation sous Linux 104
4.1 Récupération et installation des paquets sous Ubuntu 104
4.2 Récupération et installation des paquets sous Fedora Linux 105
5. Finaliser la plateforme 106
5.1 Des outils complémentaires 106
5.2 Tester l'installation 108
6. Installation de Joomla! 2.5 109
6.1 Télécharger Joomla! 2.5 110
6.2 Installation sur le serveur web 110
6.3 Un assistant pour nous guider 111
6.3.1 Avant de commencer 111
6.3.2 L'assistant d'installation de Joomla! 114
6.4 Installer Joomla! 2.5 chez un hébergeur 122
Chapitre 4 Administration système de Joomla! 2.5
1. Tour d'horizon d'un site Joomla! 2.5 123
1.1 Structure d'un site Joomla! 2.5 123
1.2 Les données d'exemple 127
2. Arborescence d'installation de Joomla! 2.5 128
2.1 L'arborescence racine 129
2.1.1 Le contenu des dossiers 129
2.1.2 Les fichiers fondamentaux 131
2.2 L'arborescence de l'administration 132
3. Joomla! 2.5, le coeur et les extensions 133
3.1 Architecture de Joomla! 2.5 133
3.2 Les différents types d'extensions de Joomla! 135
3.2.1 Les templates 135
3.2.2 Les plug-ins 135
3.2.3 Les composants 136
3.2.4 Les modules 136
3.3 Choisir des extensions 137
4. Frontend vs. Backend 137
4.1 Le frontend, la vitrine du site web 138
4.1.1 Les menus 140
4.1.2 Le module d'authentification (Login Form) 140
4.1.3 Le module de recherche 141
4.1.4 Le module de fil d'Ariane (Breadcrumb) 141
4.1.5 Autres modules 141
4.2 Qui a besoin du frontend ? 141
5. Le backend, l'espace des administrateurs 143
5.1 Ergonomie du backend et navigation 143
5.1.1 La barre de menus 146
5.1.2 La barre d'icônes 146
5.1.3 Les composants d'affichage 146
5.1.4 La zone d'information 148
5.2 Les différents menus et boutons d'action 149
5.2.1 Les menus 149
5.2.2 Les boutons d'action 151
6. Configuration du site 154
6.1 Concepts 154
6.2 Le menu «Site» du backend 154
6.2.1 Le panneau de contrôle (Control Panel) 155
6.2.2 Le profil utilisateur (My Profile) 155
6.2.3 La configuration globale de Joomla! (Global Configuration) 156
6.3 Paramétrage du site après installation - synthèse 162
7. Configuration du serveur web pour les URL simplifées 162
7.1 Principe de fonctionnement 163
7.2 Avec Apache HTTP Server 164
7.3 Avec Microsoft IIS 165
8. Sauvegarde et restauration d'un site Joomla! 2.5 166
8.1 Stratégie de sauvegarde d'un site 166
8.2 Sauvegarde de l'arborescence et de la base de données 166
8.2.1 Sauvegarde de l'arborescence 166
8.2.2 Sauvegarde de la base de données 167
8.3 Restauration des données 168
8.3.1 Restauration de la base de données 169
8.3.2 Adaptation de la configuration de Joomla! 170
9. Transférer une installation locale de Joomla! 2.5 chez un hébergeur 170
9.1 Préambule 170
9.2 Les informations requises 171
9.3 Sauvegarde et transfert des données 172
Chapitre 5 Gestion et organisation du contenu
1. La dynamique de rédaction et de publication 175
1.1 Introduction 175
1.2 Qui peut écrire et comment ? 176
1.3 Qui valide le contenu ? 177
2. L'organisation du contenu dans Joomla! 177
2.1 Un point sur les catégories 177
2.2 Qui peut gérer le contenu ? 178
3. Les articles : contenu par défaut dans Joomla! 178
3.1 La structure d'un article 178
3.2 La gestion des articles 179
3.3 Rédaction d'un article 182
3.3.1 Depuis le frontend 182
3.3.2 Depuis le backend 186
3.4 Modification d'un article 187
3.5 Publication d'un article 187
3.6 Les filtres de texte 190
4. Organiser les articles en catégories 193
4.1 La catégorisation dans Joomla! 193
4.2 Création et gestion des catégories 194
4.2.1 La liste des catégories 194
4.2.2 Création d'une catégorie 196
5. Ajouter des médias aux contenus Joomla! 198
5.1 Le gestionnaire de média 198
5.1.1 Présentation du gestionnaire de médias 198
5.1.2 La configuration du gestionnaire de média 200
5.2 Le transfert de médias 200
5.2.1 Transfert de fichiers depuis le backend 200
5.2.2 Transfert de médias en masse 201
5.2.3 Le transfert de fichiers depuis le frontend 204
6. Diverses opérations de maintenance sur le contenu 205
6.1 Les statuts des contenus 205
6.2 Les verrous 207
Chapitre 6 Gestion des utilisateurs et des permissions
1. Introduction 209
1.1 Préambule 209
1.2 Identifier les besoins utilisateurs 210
2. Le nouveau système de gestion des permissions de Joomla! 2.5 210
2.1 Limitations de Joomla! 1.5 210
2.2 Les avantages de la nouvelle solution 211
3. La gestion des utilisateurs 212
3.1 Principes dans Joomla! 212
3.2 La connexion au site public 212
3.3 Les comptes utilisateurs 214
3.3.1 La liste des utilisateurs 214
3.3.2 Les paramètres de comptes utilisateurs 215
3.4 Création de comptes utilisateurs 218
3.4.1 Création de comptes depuis le backend 218
3.4.2 Création de comptes depuis le frontend 221
3.5 Création avancée de comptes utilisateurs 222
4. La gestion des groupes 224
4.1 Qu'est-ce qu'un groupe dans Joomla! 2.5 ? 224
4.1.1 Principes des groupes 224
4.1.2 Les groupes par défaut 225
4.2 Créer les groupes et les associer aux comptes utilisateurs 226
4.2.1 Création d'un groupe 226
4.2.2 Affectation des groupes 228
5. La gestion des permissions 229
5.1 Le principe des permissions de Joomla! 2.5 229
5.2 Les différentes permissions 231
6. Définition des permissions 232
6.1 Les permissions par défaut 232
6.2 Application des permissions au contenu 233
6.2.1 Les permissions sur les catégories 234
6.2.2 Les permissions sur les articles 237
6.3 Conclusion 238
7. Les niveaux d'accès 238
7.1 Principe de base des niveaux d'accès dans Joomla! 238
7.2 Les niveaux d'accès standard 239
7.3 Créer des niveaux d'accès supplémentaires 240
8. L'authentification des utilisateurs dans Joomla! 242
8.1 Préambule 242
8.2 L'authentification Joomla! via la base de données 243
9. Les méthodes d'authentification alternatives 245
9.1 Utiliser l'authentification Gmail 245
9.2 Utiliser l'authentification LDAP 246
9.2.1 Les services d'annuaire 246
9.2.2 Exemple de mise en oeuvre avec OpenLDAP 247
Chapitre 7 Construction d'un site Joomla! 2.5
1. La navigation sur un site Internet 251
2. Organisation de la navigation avec les menus 253
2.1 Le principe des menus dans Joomla! 253
2.1.1 Un module pour un menu 254
2.1.2 Les entrées ou liens de menu 256
2.2 Les menus par défaut de Joomla! 2.5 257
2.2.1 Le menu principal 257
2.2.2 Le menu utilisateur 258
2.3 Les différents types d'éléments de menu 258
2.4 Ajouter un nouveau menu 260
2.4.1 Création du menu 260
2.4.2 Ajout d'un module pour le nouveau menu 262
2.5 Ajouter des liens de menu 265
2.5.1 Les types de lien de menu pour les contenus 265
2.5.2 Un lien de type Category List 266
2.5.3 Un lien de type Category Blog 273
2.6 Configuration des modules de menus 279
2.6.1 Sélection de l'affichage de pages 279
2.6.2 Mise en oeuvre avec le menu d'exemple 279
2.7 La page d'accueil par défaut 285
3. Tour d'horizon des composants par défaut de Joomla! 2.5 286
3.1 Améliorer son site Internet avec les composants de Joomla! 286
3.2 Les bannières publicitaires 287
3.2.1 Principes des bannières 287
3.2.2 Création des annonceurs 287
3.2.3 Création des bannières 288
3.2.4 Affichage des bannières sur le site public 290
3.3 Les flux d'information 292
3.3.1 Les flux RSS 292
3.3.2 Création des flux RSS 293
3.3.3 Afficher les flux RSS 293
3.4 Le moteur de recherche de Joomla! 2.5 297
3.4.1 Activer la recherche 297
3.4.2 Obtenir des statistiques sur les recherches 298
3.4.3 La recherche avancée de Joomla! 2.5 299
Chapitre 8 Enrichir un site Joomla! avec les extensions
1. Rappel sur les différents types d'extensions Joomla! 303
1.1 Les composants 304
1.2 Les modules 304
1.3 Les plug-ins 305
1.4 Les templates 305
2. Travailler avec les modules 306
2.1 La liste des modules 306
2.2 Principe de configuration des modules 308
2.3 Le positionnement 311
2.4 Les modules par défaut de Joomla! 312
3. Travailler avec les plug-ins 314
3.1 La liste des plug-ins 314
3.2 Les catégories de plug-ins 315
3.3 Principe de configuration des plug-ins 316
3.4 Les plug-ins par défaut de Joomla! 317
3.4.1 Authentification 317
3.4.2 Captcha 318
3.4.3 Content 318
3.4.4 Editors 320
3.4.5 Editors-xtd 321
3.4.6 Extension 321
3.4.7 Finder 322
3.4.8 Quickicons 322
3.4.9 Search 323
3.4.10 System 324
3.4.11 User 326
4. L'esthétique du site par les templates 326
4.1 Principes de séparation du fond et de la forme avec les templates 326
4.1.1 Illustration 327
4.2 Configurer et utiliser les templates Joomla! 329
4.2.1 Le template par défaut 330
4.2.2 Les styles 330
4.3 Utiliser plusieurs templates sur un même site 332
4.4 Les templates par défaut 334
4.4.1 Les templates du site (frontend) 335
4.4.2 Les templates de l'administration (backend) 335
5. Rechercher et installer une extension Joomla! 335
5.1 Le Joomla! Extensions Directory (JED) 335
5.2 Installation depuis le backend 338
5.2.1 Installation de nouvelles extensions 338
5.2.2 La mise à jour d'extensions 339
5.2.3 Gérer les extensions installées 341
5.3 Quelques exemples d'extensions populaires 344
5.3.1 Installer un éditeur alternatif 345
5.3.2 Installer un gestionnaire de galerie photo 351
5.4 Conclusion 354
Chapitre 9 Optimisation et sécurisation de Joomla! 2.5
1. Principes d'optimisation des sites PHP/MySQL 355
1.1 Optimiser les performances 356
1.2 Optimiser le référencement du site 356
2. Configuration d'Apache, de PHP et de MySQL pour les performances 357
2.1 Préambule 357
2.2 Configuration décentralisée avec les fichiers .htaccess 357
2.3 Apache 358
2.3.1 Intervenir sur les capacités de traitement 358
2.3.2 Ajuster la bande passante autorisée 364
2.3.3 Compresser les données 368
2.4 PHP 371
2.5 MySQL 371
2.5.1 La configuration du serveur MySQL 371
2.5.2 Ajuster le cache de requêtes 372
2.5.3 Ajuster la mémoire réservée aux index 372
2.5.4 Optimiser les tables 374
3. Utiliser le cache de données avec Joomla! 2.5 376
3.1 Les différents niveaux de cache 376
3.1.1 La mise en cache des pages 376
3.1.2 La mise en cache des vues et des modules 379
3.2 Conclusion 381
4. Sécuriser un site Joomla! 2.5 382
4.1 Restrictions d'accès 382
4.1.1 Les directives de mod_access et mod_authez_host 382
4.1.2 Accès au site 385
4.1.3 Accès au backend 386
4.2 Cryptage des données échangées 387
4.2.1 Implémenter une stratégie de cryptage SSL 388
4.2.2 Cryptage de l'accès à Joomla! 391
4.2.3 Cryptage de l'authentification sur le frontend 392
Webographie
1. Les sites officiels de Joomla! 395
1.1 Le site de référence 395
1.2 Pour obtenir des extensions 395
1.3 Pour les développeurs d'extensions 396
1.3.1 Le JDN 396
1.3.2 JoomlaCode 396
2. Les sites Joomla! francophones 396
2.1 La référence française 396
2.2 Les portails francophones 397
2.3 Les sites d'aide et d'assistance 397
2.4 L'évènementiel en France autour de Joomla! 397
3. Sites proposant des templates 398
4. Conclusion 399
IndexPermalink : ./index.php?lvl=notice_display&id=15128 Réservation
Réserver ce document
Exemplaires
Code-barres Cote Support Localisation Section Disponibilité RES311/1 RES311 Livre Magasin d'Ouvrages / INF Réseaux Consultation sur place
Exclu du prêtRES311/2 RES311 Livre Magasin d'Ouvrages / INF Réseaux Disponible Aucun avis, veuillez vous identifier pour ajouter le vôtre !
Titre : Merise : le guide pratique ; modélisation des données et des traitements, manipulations avec le langage SQL Type de document : texte imprime Auteurs : Jean-Luc Baptiste Mention d'édition : 2e éd. Editeur : Paris : ENI Année de publication : cop. 2012 Collection : Ressources Informatiques Importance : 280 p. Présentation : ill., couv. ill. en coul. Format : 21cm ISBN/ISSN/EAN : 978-2-7460-2797-8 Note générale :
SQL = Structured query language. - La couv. porte en plus : "Informatique technique"
IndexLangues : Français Mots-clés : MERISE, Méthode SQL (langage de programmation) Programmation orientée objets (informatique) Résumé :
L'examen 70-272 "Assistance aux utilisateurs et dépannage des applications sous Microsoft Windows XP" est l'un des examens obligatoires pour obtenir la certification MCDST (Microsoft Certified Desktop Support Technician). II évalue vos compétences pour résoudre les incidents qui peuvent se produire sur des postes de travail en dépannant et en configurant les applications et le système d'exploitation Microsoft Windows XP. Pour vous aider à préparer efficacement l'examen, cet ouvrage couvre tous les objectifs officiels, tant d'un point de vue théorique que d'un point de vue pratique. II a été rédigé en français (il ne s'agit pas d'une traduction) par un formateur professionnel reconnu, certifié techniquement (MCSE) par Microsoft. Ainsi, les savoir-faire pédagogique et technique de l'auteur conduisent à une approche claire et visuelle, d'un très bon niveau technique. Chapitre après chapitre, vous pourrez valider vos acquis théoriques, à l'aide de questions-réponses (133 au total). Chaque chapitre s'achevant par des travaux pratiques (56 au total), vous aurez également les moyens de mesurer votre autonomie. Ces manipulations concrètes, au-delà même des objectifs fixés par l'examen, vous permettront de vous forger une première expérience significative et d'acquérir de véritables compétences sur des mises en situations réelles.
A cette maîtrise du produit et des concepts, s'ajoute la préparation spécifique à l'examen 70-272: vous pourrez accéder gratuitement à 1 examen blanc en ligne, destiné à vous entraîner dans des conditions proches de celles de l'épreuve. Sur ce site, chaque question posée s'inscrit dans l'esprit de la certification MCP et, pour chacune, les réponses sont suffisamment commentées pour combler ou identifier vos ultimes, lacunes. A vous de juger quand vous serez prêt pour l'examen final ! Avec le CD-Rom offert, vous pourrez vous entraîner sur une dizaine de questions.Note de contenu :
Avant-propos
1. Introduction 11
2. Historique de la méthode Merise 12
Chapitre 1 Présentation de la méthode Merise
1. Présentation générale de la méthode Merise 13
2. La systémique 13
2.1 Les caractéristiques d'un système 14
2.2 La représentation schématique des systèmes de l'entreprise 14
2.2.1 Le système de pilotage 15
2.2.2 Le système d'information 16
2.2.3 Le système opérant 16
3. La séparation des données et des traitements 16
3.1 Les données (ou informations) 16
3.1.1 L'interview 16
3.1.2 L'étude des documents internes 17
3.1.3 L'étude des documents externes 17
3.2 Les différents types d'informations 17
3.2.1 Les informations élémentaires et mémorisables 17
3.2.2 Les informations calculées 18
3.2.3 Les traitements 18
4. Une approche par niveaux 19
4.1 Le niveau conceptuel 19
4.2 Le niveau organisationnel 19
4.3 Le niveau logique 20
4.4 Le niveau physique 20
4.5 Tableau récapitulatif 21
5. Les apports de Merise 21
Chapitre 2 Les dépendances fonctionnelles
1. Des données aux dépendances fonctionnelles 23
1.1 Le dictionnaire des données 24
2. Les dépendances fonctionnelles 28
2.1 Dépendances fonctionnelles composées 29
2.2 Dépendance fonctionnelle élémentaire 29
2.3 Dépendance fonctionnelle élémentaire directe 30
2.4 Méthodologie d'élaboration des dépendances fonctionnelles 31
3. Cas pratique 31
3.1 Dictionnaire des données 33
3.2 Détermination des dépendances fonctionnelles ou DF 34
3.3 Graphe des dépendances fonctionnelles 36
3.4 Matrice des dépendances fonctionnelles 36
4. Conclusion 38
Chapitre 3 Le Modèle Conceptuel des Données
1. Introduction au Modèle Conceptuel des Données 39
1.1 Les propriétés 39
1.2 Les entités ou objets 40
1.2.1 L'identifiant 40
1.3 Les relations ou associations 41
1.3.1 Les cardinalités 42
1.3.2 Les relations porteuses 45
1.3.3 Les relations réflexives 46
1.4 Règles d'usages 47
1.5 Notion d'entité forte et d'entité faible 49
1.5.1 Entité forte 49
1.5.2 Entité faible 49
1.6 Notion de contrainte d'intégrité fonctionnelle 50
1.7 Notion d'identifiant relatif 51
2. Conception d'un Modèle Conceptuel des Données pas à pas 53
2.1 Le dictionnaire des données 54
2.2 Les dépendances fonctionnelles 56
2.2.1 Dépendances élémentaires 56
2.2.2 Dépendances isolées 57
2.3 Élaboration du Modèle Conceptuel des Données 59
2.4 Recherche d'identifiants relatifs 66
3. Conclusion 67
Chapitre 4 Le Modèle Logique des Données
1. Introduction au Modèle Logique des Données 69
1.1 Cas (0,n), (1,1) ou (1,n), (0,1) 69
1.2 Cas (0,n), (0,n) ou (1,n), (1,n) 71
1.3 Modèle Logique des Données sur une relation réflexive 74
1.4 Règles simples de passage du MCD au MLD 75
2. Conception d'un Modèle Logique des Données pas à pas 76
3. Conclusion 81
Chapitre 5 Le Modèle Physique des Données
1. Introduction au Modèle Physique des Données 83
2. Transcription SQL du modèle physique 86
3. Conclusion 87
Chapitre 6 Les formes normales
1. Introduction aux formes normales 89
1.1 1FN - Première forme normale 89
1.2 2FN - Deuxième forme normale 91
1.3 3FN - Troisième forme normale 92
1.4 BCNF - Forme normale de Boyce - Codd 94
1.5 4FN - Quatrième forme normale 95
1.6 5FN - Cinquième forme normale 97
2. Conclusion 97
Chapitre 7 Les diagrammes des flux
1. Introduction aux diagrammes des flux 99
1.1 Définitions 99
1.1.1 Domaine d'étude 99
1.1.2 L'acteur 99
1.1.3 Les flux 100
1.2 Représentation graphique des acteurs 100
2. Conception d'un diagramme des flux pas à pas 102
2.1 Identification des flux 102
2.2 Diagramme finalisé 103
2.3 Remarques et règles d'usages 104
2.3.1 Un flux ne doit pas être bidirectionnel 104
2.3.2 Le flux ne doit pas être réflexif 104
2.3.3 Pas de flux entre des acteurs externes 104
3. Le modèle de contexte 105
3.1 Le Modèle de Flux Conceptuel (de niveau 1, de niveau N) 106
4. Conclusion 107
Chapitre 8 Les Modèles Conceptuels des Traitements
1. Le Modèle Conceptuel des Traitements 109
1.1 Objectifs du Modèle Conceptuel des Traitements 109
1.1.1 Les évènements 109
1.1.2 Les opérations 110
1.1.3 La synchronisation 110
1.1.4 Représentation schématique d'un Modèle Conceptuel des Traitements 111
2. Conception d'un Modèle Conceptuel des Traitements pas à pas 112
3. Le Modèle Conceptuel des Traitements Analytiques 115
4. Conclusion 117
Chapitre 9 Le Modèle Organisationnel des Traitements
1. Introduction au Modèle Organisationnel des Traitements 119
1.1 Objectifs 119
2. Conception d'un Modèle Organisationnel des Traitements pas à pas 121
2.1 Le diagramme des flux (ou modèle conceptuel de communication) 121
2.2 Le Modèle Conceptuel des Traitements 122
2.3 Le Modèle Organisationnel des Traitements 123
3. Conclusion 124
Chapitre 10 Les extensions Merise/2
1. Introduction aux extensions Merise/2 125
1.1 Présentation 125
1.2 L'héritage (ou la généralisation - spécialisation) 126
2. Contraintes ensemblistes 130
2.1 La contrainte de couverture 130
2.2 La contrainte de disjonction 130
3. La formalisation des contraintes entre associations 132
3.1 La totalité (couverture + non-disjonction) 133
3.2 Partition (couverture + disjonction) 134
3.3 Exclusion (non-couverture + disjonction) 134
3.4 Égalité 135
3.5 Inclusion 135
4. Agrégation sur les associations (ou associations d'associations) 136
Chapitre 11 Le cycle de vie des objets
1. Introduction au cycle de vie des objets 139
1.1 Les objectifs de la gestion du cycle de vie d'un objet 139
1.1.1 État de l'objet 140
1.1.2 Événement 140
1.1.3 Transition 140
1.2 Mise en oeuvre 141
1.2.1 L'itération 141
1.2.2 La transition conditionnelle 141
1.2.3 La création 141
1.2.4 La suppression 142
2. Conception d'un CVO pas à pas 142
3. Positionnement du CVO par rapport au MCTA 143
Chapitre 12 Merise et UML
1. UML 145
1.1 Présentation d'UML 145
1.1.1 Les diagrammes statiques 146
1.1.2 Les diagrammes comportementaux 146
1.1.3 Les diagrammes dynamiques 147
2. Merise par rapport à UML 147
2.1 Une séparation des données et des traitements 148
3. Analogie Merise/UML 148
3.1 Modèle de contexte (diagramme des flux) - Diagramme des cas d'utilisation 148
3.2 Le diagramme des cas d'utilisation 149
3.3 Modèle Conceptuel des Données/Diagramme de classes 153
3.3.1 Les cardinalités 153
3.3.2 Associations porteuses 155
3.3.3 Associations ternaires 156
3.3.4 Représentation de la réflexivité 157
3.3.5 L'héritage 158
3.4 Les contraintes 160
3.4.1 La contrainte de partition 160
3.4.2 L'exclusion 161
3.4.3 La contrainte de totalité 162
3.4.4 Aucune contrainte 163
3.5 Le Modèle Conceptuel des Traitements 164
3.6 Le Modèle Organisationnel des Traitements 164
Chapitre 13 SQL (Structured Query Language)
1. Présentation du langage SQL 169
1.1 Historique 169
1.2 Structuration 170
2. Le langage de manipulation des données 171
2.1 Sélection des données 172
2.1.1 La projection 173
2.1.2 La restriction 176
2.1.3 Les tris 179
2.1.4 Les jointures 179
2.1.5 Les fonctions statistiques 183
2.1.6 Les opérations portant sur des ensembles 184
2.1.7 Les regroupements 185
2.1.8 Les sous-requêtes 187
2.2 L'insertion des données 189
2.2.1 Insertion simple 189
2.2.2 Insertion en masse 190
2.3 La modification des données 191
2.4 La suppression des données 191
3. Le langage de définition des données 192
3.1 La création de tables 192
3.1.1 Définition de la clé primaire 192
3.1.2 Définition des clés étrangères 193
3.2 La suppression physique de tables 193
3.3 Modification d'une structure de table 193
3.3.1 Ajouter un champ 193
3.3.2 Redimensionner un champ 194
3.3.3 Supprimer un champ 194
3.3.4 Supprimer une clé sur une table existante 194
3.4 Renommer une table 194
4. Le langage de contrôle des données 195
4.1 L'ordre Grant 195
4.2 L'ordre Revoke 196
5. Mise en pratique avec MySQL 197
5.1 Installation du serveur de base de données 198
5.2 Création d'une base de données 200
Chapitre 14 Étude de cas détaillée
1. Étude des besoins 207
2. Analyse des besoins 212
3. Le dictionnaire des données complet 221
4. Les dépendances fonctionnelles 224
4.1 Dépendances fonctionnelles élémentaires et directes 224
4.2 Dépendances fonctionnelles à partie gauche composée 225
5. Création du Modèle Conceptuel des Données avec Win'Design 225
5.1 Conception du Modèle Conceptuel des Données 226
5.2 Conception du Modèle Logique des Données 232
5.3 Conclusion 236
Chapitre 15 Exercices
1. Exercices applicatifs 237
2. Premier exercice 239
2.1 Solutions 240
2.1.1 Le Modèle Conceptuel des Données 240
2.1.2 Le Modèle Logique des Données 242
2.1.3 Le modèle relationnel 242
3. Deuxième exercice 244
3.1 Solutions 245
3.1.1 Le Modèle Logique des Données 245
3.1.2 Le Modèle Conceptuel des Données 246
4. Troisième exercice 247
4.1 Solutions 248
4.1.1 Dictionnaire des données simplifié 248
4.1.2 Le Modèle Conceptuel des Données 249
4.1.3 Le Modèle Logique des Données 250
4.1.4 Le modèle physique des données 251
5. Quatrième exercice 251
5.1 Solutions 252
5.1.1 Modèle Conceptuel des Données 252
5.1.2 Modèle Logique des Données 252
5.1.3 Modèle Physique des Données 252
6. Cinquième exercice 253
6.1 Solutions 254
6.1.1 Modèle Conceptuel des Données 254
6.1.2 Modèle Physique des Données 255
7. Sixième exercice 256
7.1 Solutions 257
7.1.1 Modèle Conceptuel des Données 257
7.1.2 Modèle Logique des Données 258
8. Septième exercice 259
8.1 Solutions 260
8.1.1 Le dictionnaire des données 260
8.1.2 Modèle Conceptuel des Données 261
8.1.3 Le Modèle Logique des Données 265
8.1.4 Le modèle relationnel des données 268
8.1.5 Modèle de contexte de niveau 0 268
8.1.6 Le modèle de flux conceptuel de niveau 1 269
8.1.7 Le Modèle Organisationnel des Traitements 270
8.1.8 Requête SQL listant l'ensemble des sportifs habitant Perpignan 271
Index 273En ligne : https://www.amazon.fr/Windows-Assistance-utilisateurs-D%C3%A9pannage-application [...] Permalink : ./index.php?lvl=notice_display&id=14866 Merise : le guide pratique ; modélisation des données et des traitements, manipulations avec le langage SQL [texte imprime] / Jean-Luc Baptiste . - 2e éd. . - Paris : ENI, cop. 2012 . - 280 p. : ill., couv. ill. en coul. ; 21cm. - (Ressources Informatiques) .
ISBN : 978-2-7460-2797-8
SQL = Structured query language. - La couv. porte en plus : "Informatique technique"
Index
Langues : Français
Mots-clés : MERISE, Méthode SQL (langage de programmation) Programmation orientée objets (informatique) Résumé :
L'examen 70-272 "Assistance aux utilisateurs et dépannage des applications sous Microsoft Windows XP" est l'un des examens obligatoires pour obtenir la certification MCDST (Microsoft Certified Desktop Support Technician). II évalue vos compétences pour résoudre les incidents qui peuvent se produire sur des postes de travail en dépannant et en configurant les applications et le système d'exploitation Microsoft Windows XP. Pour vous aider à préparer efficacement l'examen, cet ouvrage couvre tous les objectifs officiels, tant d'un point de vue théorique que d'un point de vue pratique. II a été rédigé en français (il ne s'agit pas d'une traduction) par un formateur professionnel reconnu, certifié techniquement (MCSE) par Microsoft. Ainsi, les savoir-faire pédagogique et technique de l'auteur conduisent à une approche claire et visuelle, d'un très bon niveau technique. Chapitre après chapitre, vous pourrez valider vos acquis théoriques, à l'aide de questions-réponses (133 au total). Chaque chapitre s'achevant par des travaux pratiques (56 au total), vous aurez également les moyens de mesurer votre autonomie. Ces manipulations concrètes, au-delà même des objectifs fixés par l'examen, vous permettront de vous forger une première expérience significative et d'acquérir de véritables compétences sur des mises en situations réelles.
A cette maîtrise du produit et des concepts, s'ajoute la préparation spécifique à l'examen 70-272: vous pourrez accéder gratuitement à 1 examen blanc en ligne, destiné à vous entraîner dans des conditions proches de celles de l'épreuve. Sur ce site, chaque question posée s'inscrit dans l'esprit de la certification MCP et, pour chacune, les réponses sont suffisamment commentées pour combler ou identifier vos ultimes, lacunes. A vous de juger quand vous serez prêt pour l'examen final ! Avec le CD-Rom offert, vous pourrez vous entraîner sur une dizaine de questions.Note de contenu :
Avant-propos
1. Introduction 11
2. Historique de la méthode Merise 12
Chapitre 1 Présentation de la méthode Merise
1. Présentation générale de la méthode Merise 13
2. La systémique 13
2.1 Les caractéristiques d'un système 14
2.2 La représentation schématique des systèmes de l'entreprise 14
2.2.1 Le système de pilotage 15
2.2.2 Le système d'information 16
2.2.3 Le système opérant 16
3. La séparation des données et des traitements 16
3.1 Les données (ou informations) 16
3.1.1 L'interview 16
3.1.2 L'étude des documents internes 17
3.1.3 L'étude des documents externes 17
3.2 Les différents types d'informations 17
3.2.1 Les informations élémentaires et mémorisables 17
3.2.2 Les informations calculées 18
3.2.3 Les traitements 18
4. Une approche par niveaux 19
4.1 Le niveau conceptuel 19
4.2 Le niveau organisationnel 19
4.3 Le niveau logique 20
4.4 Le niveau physique 20
4.5 Tableau récapitulatif 21
5. Les apports de Merise 21
Chapitre 2 Les dépendances fonctionnelles
1. Des données aux dépendances fonctionnelles 23
1.1 Le dictionnaire des données 24
2. Les dépendances fonctionnelles 28
2.1 Dépendances fonctionnelles composées 29
2.2 Dépendance fonctionnelle élémentaire 29
2.3 Dépendance fonctionnelle élémentaire directe 30
2.4 Méthodologie d'élaboration des dépendances fonctionnelles 31
3. Cas pratique 31
3.1 Dictionnaire des données 33
3.2 Détermination des dépendances fonctionnelles ou DF 34
3.3 Graphe des dépendances fonctionnelles 36
3.4 Matrice des dépendances fonctionnelles 36
4. Conclusion 38
Chapitre 3 Le Modèle Conceptuel des Données
1. Introduction au Modèle Conceptuel des Données 39
1.1 Les propriétés 39
1.2 Les entités ou objets 40
1.2.1 L'identifiant 40
1.3 Les relations ou associations 41
1.3.1 Les cardinalités 42
1.3.2 Les relations porteuses 45
1.3.3 Les relations réflexives 46
1.4 Règles d'usages 47
1.5 Notion d'entité forte et d'entité faible 49
1.5.1 Entité forte 49
1.5.2 Entité faible 49
1.6 Notion de contrainte d'intégrité fonctionnelle 50
1.7 Notion d'identifiant relatif 51
2. Conception d'un Modèle Conceptuel des Données pas à pas 53
2.1 Le dictionnaire des données 54
2.2 Les dépendances fonctionnelles 56
2.2.1 Dépendances élémentaires 56
2.2.2 Dépendances isolées 57
2.3 Élaboration du Modèle Conceptuel des Données 59
2.4 Recherche d'identifiants relatifs 66
3. Conclusion 67
Chapitre 4 Le Modèle Logique des Données
1. Introduction au Modèle Logique des Données 69
1.1 Cas (0,n), (1,1) ou (1,n), (0,1) 69
1.2 Cas (0,n), (0,n) ou (1,n), (1,n) 71
1.3 Modèle Logique des Données sur une relation réflexive 74
1.4 Règles simples de passage du MCD au MLD 75
2. Conception d'un Modèle Logique des Données pas à pas 76
3. Conclusion 81
Chapitre 5 Le Modèle Physique des Données
1. Introduction au Modèle Physique des Données 83
2. Transcription SQL du modèle physique 86
3. Conclusion 87
Chapitre 6 Les formes normales
1. Introduction aux formes normales 89
1.1 1FN - Première forme normale 89
1.2 2FN - Deuxième forme normale 91
1.3 3FN - Troisième forme normale 92
1.4 BCNF - Forme normale de Boyce - Codd 94
1.5 4FN - Quatrième forme normale 95
1.6 5FN - Cinquième forme normale 97
2. Conclusion 97
Chapitre 7 Les diagrammes des flux
1. Introduction aux diagrammes des flux 99
1.1 Définitions 99
1.1.1 Domaine d'étude 99
1.1.2 L'acteur 99
1.1.3 Les flux 100
1.2 Représentation graphique des acteurs 100
2. Conception d'un diagramme des flux pas à pas 102
2.1 Identification des flux 102
2.2 Diagramme finalisé 103
2.3 Remarques et règles d'usages 104
2.3.1 Un flux ne doit pas être bidirectionnel 104
2.3.2 Le flux ne doit pas être réflexif 104
2.3.3 Pas de flux entre des acteurs externes 104
3. Le modèle de contexte 105
3.1 Le Modèle de Flux Conceptuel (de niveau 1, de niveau N) 106
4. Conclusion 107
Chapitre 8 Les Modèles Conceptuels des Traitements
1. Le Modèle Conceptuel des Traitements 109
1.1 Objectifs du Modèle Conceptuel des Traitements 109
1.1.1 Les évènements 109
1.1.2 Les opérations 110
1.1.3 La synchronisation 110
1.1.4 Représentation schématique d'un Modèle Conceptuel des Traitements 111
2. Conception d'un Modèle Conceptuel des Traitements pas à pas 112
3. Le Modèle Conceptuel des Traitements Analytiques 115
4. Conclusion 117
Chapitre 9 Le Modèle Organisationnel des Traitements
1. Introduction au Modèle Organisationnel des Traitements 119
1.1 Objectifs 119
2. Conception d'un Modèle Organisationnel des Traitements pas à pas 121
2.1 Le diagramme des flux (ou modèle conceptuel de communication) 121
2.2 Le Modèle Conceptuel des Traitements 122
2.3 Le Modèle Organisationnel des Traitements 123
3. Conclusion 124
Chapitre 10 Les extensions Merise/2
1. Introduction aux extensions Merise/2 125
1.1 Présentation 125
1.2 L'héritage (ou la généralisation - spécialisation) 126
2. Contraintes ensemblistes 130
2.1 La contrainte de couverture 130
2.2 La contrainte de disjonction 130
3. La formalisation des contraintes entre associations 132
3.1 La totalité (couverture + non-disjonction) 133
3.2 Partition (couverture + disjonction) 134
3.3 Exclusion (non-couverture + disjonction) 134
3.4 Égalité 135
3.5 Inclusion 135
4. Agrégation sur les associations (ou associations d'associations) 136
Chapitre 11 Le cycle de vie des objets
1. Introduction au cycle de vie des objets 139
1.1 Les objectifs de la gestion du cycle de vie d'un objet 139
1.1.1 État de l'objet 140
1.1.2 Événement 140
1.1.3 Transition 140
1.2 Mise en oeuvre 141
1.2.1 L'itération 141
1.2.2 La transition conditionnelle 141
1.2.3 La création 141
1.2.4 La suppression 142
2. Conception d'un CVO pas à pas 142
3. Positionnement du CVO par rapport au MCTA 143
Chapitre 12 Merise et UML
1. UML 145
1.1 Présentation d'UML 145
1.1.1 Les diagrammes statiques 146
1.1.2 Les diagrammes comportementaux 146
1.1.3 Les diagrammes dynamiques 147
2. Merise par rapport à UML 147
2.1 Une séparation des données et des traitements 148
3. Analogie Merise/UML 148
3.1 Modèle de contexte (diagramme des flux) - Diagramme des cas d'utilisation 148
3.2 Le diagramme des cas d'utilisation 149
3.3 Modèle Conceptuel des Données/Diagramme de classes 153
3.3.1 Les cardinalités 153
3.3.2 Associations porteuses 155
3.3.3 Associations ternaires 156
3.3.4 Représentation de la réflexivité 157
3.3.5 L'héritage 158
3.4 Les contraintes 160
3.4.1 La contrainte de partition 160
3.4.2 L'exclusion 161
3.4.3 La contrainte de totalité 162
3.4.4 Aucune contrainte 163
3.5 Le Modèle Conceptuel des Traitements 164
3.6 Le Modèle Organisationnel des Traitements 164
Chapitre 13 SQL (Structured Query Language)
1. Présentation du langage SQL 169
1.1 Historique 169
1.2 Structuration 170
2. Le langage de manipulation des données 171
2.1 Sélection des données 172
2.1.1 La projection 173
2.1.2 La restriction 176
2.1.3 Les tris 179
2.1.4 Les jointures 179
2.1.5 Les fonctions statistiques 183
2.1.6 Les opérations portant sur des ensembles 184
2.1.7 Les regroupements 185
2.1.8 Les sous-requêtes 187
2.2 L'insertion des données 189
2.2.1 Insertion simple 189
2.2.2 Insertion en masse 190
2.3 La modification des données 191
2.4 La suppression des données 191
3. Le langage de définition des données 192
3.1 La création de tables 192
3.1.1 Définition de la clé primaire 192
3.1.2 Définition des clés étrangères 193
3.2 La suppression physique de tables 193
3.3 Modification d'une structure de table 193
3.3.1 Ajouter un champ 193
3.3.2 Redimensionner un champ 194
3.3.3 Supprimer un champ 194
3.3.4 Supprimer une clé sur une table existante 194
3.4 Renommer une table 194
4. Le langage de contrôle des données 195
4.1 L'ordre Grant 195
4.2 L'ordre Revoke 196
5. Mise en pratique avec MySQL 197
5.1 Installation du serveur de base de données 198
5.2 Création d'une base de données 200
Chapitre 14 Étude de cas détaillée
1. Étude des besoins 207
2. Analyse des besoins 212
3. Le dictionnaire des données complet 221
4. Les dépendances fonctionnelles 224
4.1 Dépendances fonctionnelles élémentaires et directes 224
4.2 Dépendances fonctionnelles à partie gauche composée 225
5. Création du Modèle Conceptuel des Données avec Win'Design 225
5.1 Conception du Modèle Conceptuel des Données 226
5.2 Conception du Modèle Logique des Données 232
5.3 Conclusion 236
Chapitre 15 Exercices
1. Exercices applicatifs 237
2. Premier exercice 239
2.1 Solutions 240
2.1.1 Le Modèle Conceptuel des Données 240
2.1.2 Le Modèle Logique des Données 242
2.1.3 Le modèle relationnel 242
3. Deuxième exercice 244
3.1 Solutions 245
3.1.1 Le Modèle Logique des Données 245
3.1.2 Le Modèle Conceptuel des Données 246
4. Troisième exercice 247
4.1 Solutions 248
4.1.1 Dictionnaire des données simplifié 248
4.1.2 Le Modèle Conceptuel des Données 249
4.1.3 Le Modèle Logique des Données 250
4.1.4 Le modèle physique des données 251
5. Quatrième exercice 251
5.1 Solutions 252
5.1.1 Modèle Conceptuel des Données 252
5.1.2 Modèle Logique des Données 252
5.1.3 Modèle Physique des Données 252
6. Cinquième exercice 253
6.1 Solutions 254
6.1.1 Modèle Conceptuel des Données 254
6.1.2 Modèle Physique des Données 255
7. Sixième exercice 256
7.1 Solutions 257
7.1.1 Modèle Conceptuel des Données 257
7.1.2 Modèle Logique des Données 258
8. Septième exercice 259
8.1 Solutions 260
8.1.1 Le dictionnaire des données 260
8.1.2 Modèle Conceptuel des Données 261
8.1.3 Le Modèle Logique des Données 265
8.1.4 Le modèle relationnel des données 268
8.1.5 Modèle de contexte de niveau 0 268
8.1.6 Le modèle de flux conceptuel de niveau 1 269
8.1.7 Le Modèle Organisationnel des Traitements 270
8.1.8 Requête SQL listant l'ensemble des sportifs habitant Perpignan 271
Index 273En ligne : https://www.amazon.fr/Windows-Assistance-utilisateurs-D%C3%A9pannage-application [...] Permalink : ./index.php?lvl=notice_display&id=14866 Réservation
Réserver ce document
Exemplaires
Code-barres Cote Support Localisation Section Disponibilité SYD148/1 SYD148 Livre Magasin d'Ouvrages / INF Système d'Exploitation Consultation sur place
Exclu du prêtSYD148/2 SYD148 Livre Magasin d'Ouvrages / INF Système d'Exploitation Disponible Aucun avis, veuillez vous identifier pour ajouter le vôtre !
Titre : MySQL 5 : administration et optimisation Type de document : texte imprime Auteurs : Stéphane Combaudon ; Cyril Scetbon Olivier Dasini Editeur : Paris : ENI Année de publication : cop. 2010 Collection : Ressources Informatiques Importance : 507 p. Présentation : ill., couv. ill. en coul. Format : 21 cm ISBN/ISSN/EAN : 978-2-7460-5516-2 Note générale :
La couv. porte en plus : "Informatique technique"
IndexLangues : Français Mots-clés : MySQL 5 Configuration Serveurs Résumé : Ce livre sur MySQL 5 s'adresse aux développeurs et administrateurs MySQL désireux de consolider leurs connaissances sur le SGBD Open Source le plus répandu du marché. Le livre débute par une présentation des bases qui vous seront nécessaires pour exploiter au mieux toutes les capacités de MySQL : méthodes d'installation mono et multi-instances, présentation de l'architecture du serveur et des principaux moteurs de stockage, bonnes pratiques de configuration. Après ces fondamentaux vous donnant une bonne compréhension des spécificités du SGBD, vous apprendrez comment gérer votre serveur au quotidien en ayant à l'esprit les principes essentiels de sécurité, en mettant en place des stratégies efficaces pour les sauvegardes et les restaurations et en maintenant vos tables à jour et opérationnelles. La dernière partie est consacrée aux techniques avancées qui vous donneront les clés pour résoudre les problèmes les plus complexes : optimisation du serveur, des index et des requêtes, amélioration des performances avec le partitionnement ou encore mise en place d'une solution de réplication adaptée à votre application. Des éléments complémentaires seront en téléchargement sur le site www.editions-eni.com. Note de contenu : MySQL (logiciel);SQL (langage de programmation) En ligne : https://www.amazon.fr/MySQL-Administration-optimisation-Olivier-Dasini/dp/274605 [...] Permalink : ./index.php?lvl=notice_display&id=13840 MySQL 5 : administration et optimisation [texte imprime] / Stéphane Combaudon ; Cyril Scetbon Olivier Dasini . - Paris : ENI, cop. 2010 . - 507 p. : ill., couv. ill. en coul. ; 21 cm. - (Ressources Informatiques) .
ISBN : 978-2-7460-5516-2
La couv. porte en plus : "Informatique technique"
Index
Langues : Français
Mots-clés : MySQL 5 Configuration Serveurs Résumé : Ce livre sur MySQL 5 s'adresse aux développeurs et administrateurs MySQL désireux de consolider leurs connaissances sur le SGBD Open Source le plus répandu du marché. Le livre débute par une présentation des bases qui vous seront nécessaires pour exploiter au mieux toutes les capacités de MySQL : méthodes d'installation mono et multi-instances, présentation de l'architecture du serveur et des principaux moteurs de stockage, bonnes pratiques de configuration. Après ces fondamentaux vous donnant une bonne compréhension des spécificités du SGBD, vous apprendrez comment gérer votre serveur au quotidien en ayant à l'esprit les principes essentiels de sécurité, en mettant en place des stratégies efficaces pour les sauvegardes et les restaurations et en maintenant vos tables à jour et opérationnelles. La dernière partie est consacrée aux techniques avancées qui vous donneront les clés pour résoudre les problèmes les plus complexes : optimisation du serveur, des index et des requêtes, amélioration des performances avec le partitionnement ou encore mise en place d'une solution de réplication adaptée à votre application. Des éléments complémentaires seront en téléchargement sur le site www.editions-eni.com. Note de contenu : MySQL (logiciel);SQL (langage de programmation) En ligne : https://www.amazon.fr/MySQL-Administration-optimisation-Olivier-Dasini/dp/274605 [...] Permalink : ./index.php?lvl=notice_display&id=13840 Réservation
Réserver ce document
Exemplaires
Code-barres Cote Support Localisation Section Disponibilité L226/1 L226 Livre Magasin d'Ouvrages / INF Langage Consultation sur place
Exclu du prêtL226/2 L226 Livre Magasin d'Ouvrages / INF Langage Disponible L226/3 L226 Livre Magasin d'Ouvrages / INF Langage Disponible L226/4 L226 Livre Magasin d'Ouvrages / INF Langage Disponible L226/5 L226 Livre Magasin d'Ouvrages / INF Langage Disponible L226/6 L226 Livre Magasin d'Ouvrages / INF Langage Disponible L226/7 L226 Livre Magasin d'Ouvrages / INF Langage Disponible L226/8 L226 Livre Magasin d'Ouvrages / INF Langage Disponible Aucun avis, veuillez vous identifier pour ajouter le vôtre !
PermalinkProgrammation Shells sous Unix / Christine Deffaix-Rémy (2011)
PermalinkLes réseaux avec Cisco / André Vaucamps (cop. 2009)
PermalinkPermalinkSharePoint 2010 / Stéphane Eyskens (cop. 2010)
PermalinkSharePoint foundation 2010 / Patrick Carraz (cop. 2011)
PermalinkSharePoint Workspace 2010 / Fabrice Barbin (cop. 2011)
PermalinkPermalinkPermalinkPermalink



