p&m adjustement, reformat articles pages

master
tuks 2 years ago
parent 329dbd133c
commit 13e5dcb451

@ -1,34 +1,116 @@
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<meta charset="utf-8" \> <meta charset="utf-8" />
<title>Le C</title> <title>LangProg - Le C</title>
<link href="../styles/main.css" rel="stylesheet" type="text/css" />
<link href="../styles/articles.css" rel="stylesheet" type="text/css" />
</head> </head>
<body> <body>
<p><a href="../index.html">-- Menu principal</a></p>
<div> <div class="header">
<img src="../img/The_C_Programming_Language_logo.svg.png" alt="The C <div class="title">
Programming language logo" width="350" height="350" \> <h1>LangProg - C</h1>
<img src="../img/ProgrammingLanguage1-1.jpg" alt="ImgTitle" />
</div>
<nav>
<a href="../index.html">Menu Principal</a>
<a href="galerie.html">Galerie</a>
<a href="donnees.html">Données</a>
</nav>
</div> </div>
<div>
<article> <img class="logo" src="../img/The_C_Programming_Language_logo.svg.png" alt="CImage">
<div class="main-content">
<section class="articles">
<h2>Le language de programmation C</h2> <h2>Le language de programmation C</h2>
<p>C est un langage de programmation <strong>impératif
généraliste</strong>, de bas niveau. Inventé au début des années 1970 <article>
pour réécrire Unix, C est devenu un des langages les plus utilisés, <p>C est un langage de programmation <strong>impératif
encore de nos jours. De nombreux langages plus modernes comme C++, C#, généraliste</strong>, de bas niveau. Inventé au début des années 1970
Java et PHP ou JavaScript ont repris une syntaxe similaire au C et pour réécrire Unix, C est devenu un des langages les plus utilisés,
reprennent en partie sa logique. C offre au développeur une encore de nos jours. De nombreux langages plus modernes comme C++, C#,
<strong>marge de contrôle importante</strong> sur la machine Java et PHP ou JavaScript ont repris une syntaxe similaire au C et
(notamment sur la gestion de la mémoire) et est de ce fait utilisé reprennent en partie sa logique. C offre au développeur une
pour réaliser les <strong>« fondations »</strong> (compilateurs, <strong>marge de contrôle importante</strong> sur la machine
interpréteurs…) de ces langages plus modernes.</p> (notamment sur la gestion de la mémoire) et est de ce fait utilisé
</article> pour réaliser les <strong>« fondations »</strong> (compilateurs,
interpréteurs…) de ces langages plus modernes.</p>
</article>
<article>
<h3>Histoire</h3>
<p>Le langage C a été inventé au cours de l'année 1972 dans les
Laboratoires Bell. Il était développé en même temps qu'Unix par
Dennis Ritchie et Kenneth Thompson. Kenneth Thompson avait développé
le prédécesseur direct de C, le langage B, qui est lui-même
largement inspiré de BCPL. Dennis Ritchie a fait évoluer le langage
B dans une nouvelle version suffisamment différente, en ajoutant
notamment les types, pour qu'elle soit appelée C1.
Bien que C soit directement dérivé de B, Ritchie relève aussi des influences de
PL/I, FORTRAN et ALGOL 68. En outre, Ritchie signale que l'équipe
était convaincue du bien-fondé de l'idée d'écrire un système
d'exploitation dans un langage de plus haut niveau que l'assembleur,
un aspect pionnier de Multics, écrit en PL/I.
Par la suite, Brian Kernighan aida à populariser le langage C. Il procéda aussi
à quelques modifications de dernière minute. En 1978, Kernighan fut
le principal auteur du livre The C Programming Language décrivant le
langage enfin stabilisé ; Ritchie s'était occupé des appendices et
des exemples avec Unix. On appelle aussi ce livre « le K&R », et
l'on parle de C traditionnel ou de C K&R lorsqu'on se réfère au
langage tel qu'il existait à cette époque. </p>
</article>
<article>
<h3>Qualités et défauts</h3>
<ul>
<h4>Principale qualitées</h4>
<li>il existe depuis longtemps, le début des années 1970 ;</li>
<li>il est fondé sur un standard ouvert ;</li>
<li>de nombreux informaticiens le connaissent ;</li>
<li>il permet la minimisation de l'allocation mémoire nécessaire, son contrôle complet et la maximisation de la performance, notamment par l'utilisation de pointeurs ;</li>
<li>il permet la construction de structures de données complexes et ad-hoc, au plus près des besoins ;</li>
<li>des compilateurs et bibliothèques logicielles existent sur la plupart des architectures ;</li>
<li>il a influencé de nombreux langages plus récents dont C++, Java, C# et PHP ; sa syntaxe en particulier est largement reprise ;</li>
<li>il met en œuvre un nombre restreint de concepts, ce qui facilite sa maîtrise et l'écriture de compilateurs simples et rapides ;</li>
<li>il ne spécifie pas rigidement le comportement du fichier exécutable produit, ce qui aide à tirer parti des capacités propres à chaque ordinateur ;</li>
<li>il permet, par la compilation directe vers le langage machine (via l'assembleur), l'écriture de logiciels qui n'ont besoin d'aucun support à l'exécution (ni bibliothèque logicielle ni machine virtuelle), au comportement prévisible en temps d'exécution comme en consommation de mémoire vive, comme des noyaux de système d'exploitation et des logiciels embarqués.</li>
<h4>Principaux inconvénients</h4>
<li>le peu de vérifications offertes par les compilateurs d'origine (K&R C), et l'absence de vérifications à l'exécution, ce qui fait que des erreurs qui auraient pu être automatiquement détectées lors du développement ne létaient quà l'exécution, donc au prix dun plantage du logiciel ;
<ul>
<li>sous UNIX, on pouvait utiliser les utilitaires lint et cflow pour éviter de tels mécomptes,</li>
<li>des vérifications sont ajoutées avec le temps, mais elles restent partielles,</li>
</ul>
</li>
<li>son approche de la modularité restée au niveau de ce qui se faisait au début des années 1970, et largement dépassée depuis par d'autres langages :
<ul>
<li>il ne facilite pas la programmation orientée objet,</li>
<li>il ne permet pas de créer des espaces de noms,</li>
</ul>
</li>
<li>la gestion d'exceptions très sommaire ;</li>
<li>le support très limité de la généricité, malgré lintroduction des expressions à type générique en C11 ;</li>
<li>les subtilités de l'écriture de programmes portables, car le comportement exact des exécutables dépend de l'ordinateur cible ;</li>
<li>le support minimaliste de l'allocation de mémoire et des chaînes de caractères, ce qui oblige les programmeurs à s'occuper de détails fastidieux et sources de bugs ; il n'y a notamment pas de ramasse-miettes standard ;</li>
<li>les bugs graves qui peuvent être causés par un simple manque d'attention du développeur ; tel le dépassement de tampon qui constitue une faille de sécurité informatique exploitable par les logiciels malveillants ;</li>
<li>certaines erreurs ne peuvent être détectées automatiquement qu'à l'aide d'outils supplémentaires et non standardisés, comme lint et Valgrind ;</li>
<li>la faible productivité du langage par rapport aux langages plus récents[réf. souhaitée].</li>
</ul>
</article>
</section>
</div> </div>
<footer> <footer>
<p>Auteur: Alexandre Agostinho</p> <p>Auteur: Alexandre Agostinho</p>
<p><a href="mailto:alexandre.agostinho@etu.uca.fr">alexandre.agostinho@etu.uca.fr</a></p> <p><a href="mailto:alexandre.agostinho@etu.uca.fr">alexandre.agostinho@etu.uca.fr</a></p>
</footer> </footer>
</body> </body>
</html> </html>

@ -1,38 +1,60 @@
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<meta charset="utf-8" \> <meta charset="utf-8" />
<title>Le C++</title> <title>LangProg - Le C++</title>
<link href="../styles/main.css" rel="stylesheet" type="text/css" />
<link href="../styles/articles.css" rel="stylesheet" type="text/css" />
</head> </head>
<body> <body>
<p><a href="../index.html">-- Menu principal</a></p>
<div> <div class="header">
<img src="../img/ISO_C++_Logo.svg.png" alt="C++ logo" width="350" height="350" \> <div class="title">
<h1>LangProg - C++</h1>
<img src="../img/ProgrammingLanguage1-1.jpg" alt="ImgTitle" />
</div>
<nav>
<a href="../index.html">Menu Principal</a>
<a href="galerie.html">Galerie</a>
<a href="donnees.html">Données</a>
</nav>
</div> </div>
<div>
<article> <img class="logo" src="../img/ISO_C++_Logo.svg.png" alt="C++Image">
<h2>Le language de programmation C</h2>
<p>C++ est un langage de programmation <strong>compilé</strong> permettant la <div class="main-content">
programmation sous de multiples paradigmes, <strong>dont la programmation <section class="articles">
procédurale, la programmation orientée objet et la programmation <h2>Le language de programmation C++</h2>
générique.</strong> Ses bonnes performances, et sa compatibilité avec le C en
font un des langages de programmation les plus utilisés dans les <article>
applications où la performance est critique. </p> <p>C++ est un langage de programmation <strong>compilé</strong>
<p>Créé initialement par Bjarne Stroustrup dans les années 1980, le permettant la programmation sous de multiples paradigmes,
langage C++ est aujourd'hui normalisé par l'ISO. Sa première <strong>dont la programmation procédurale, la programmation orientée
normalisation date de 1998 (ISO/CEI 14882:1998), ensuite amendée par objet et la programmation générique.</strong> Ses bonnes
l'erratum technique de 2003 (ISO/CEI 14882:2003). Une importante mise performances, et sa compatibilité avec le C en font un des langages
à jour a été ratifiée et publiée par l'ISO en septembre 2011 sous le de programmation les plus utilisés dans les applications où la
nom de ISO/IEC 14882:2011, ou C++113. Depuis, des mises à jour sont performance est critique. </p> <p>Créé initialement par Bjarne
publiées régulièrement : en 2014 (ISO/CEI 14882:2014, ou C++144), en Stroustrup dans les années 1980, le langage C++ est aujourd'hui
2017 (ISO/CEI 14882:2017, ou C++175) puis en 2020 (ISO/IEC 14882:2020, normalisé par l'ISO. Sa première normalisation date de 1998 (ISO/CEI
ou C++206). </p> 14882:1998), ensuite amendée par l'erratum technique de 2003
</article> (ISO/CEI 14882:2003). Une importante mise à jour a été ratifiée et
publiée par l'ISO en septembre 2011 sous le nom de ISO/IEC
14882:2011, ou C++113. Depuis, des mises à jour sont publiées
régulièrement : en 2014 (ISO/CEI 14882:2014, ou C++144), en 2017
(ISO/CEI 14882:2017, ou C++175) puis en 2020 (ISO/IEC 14882:2020, ou
C++206). </p>
</article>
</section>
</div> </div>
<footer> <footer>
<p>Auteur: Alexandre Agostinho</p> <p>Auteur: Alexandre Agostinho</p>
<p><a href="mailto:alexandre.agostinho@etu.uca.fr">alexandre.agostinho@etu.uca.fr</a></p> <p><a href="mailto:alexandre.agostinho@etu.uca.fr">alexandre.agostinho@etu.uca.fr</a></p>
</footer> </footer>
</body> </body>
</html> </html>

@ -1,40 +1,61 @@
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<meta charset="utf-8" \> <meta charset="utf-8" />
<title>Le C#</title> <title>LangProg - Le C#</title>
<link href="../styles/main.css" rel="stylesheet" type="text/css" />
<link href="../styles/articles.css" rel="stylesheet" type="text/css" />
</head> </head>
<body> <body>
<p><a href="../index.html">-- Menu principal</a></p>
<div> <div class="header">
<img src="../img/1024px-C_Sharp_wordmark.svg.png" alt="C# logo" width="350" height="350" \> <div class="title">
<h1>LangProg - C#</h1>
<img src="../img/ProgrammingLanguage1-1.jpg" alt="ImgTitle" />
</div>
<nav>
<a href="../index.html">Menu Principal</a>
<a href="galerie.html">Galerie</a>
<a href="donnees.html">Données</a>
</nav>
</div> </div>
<div>
<article> <img class="logo" src="../img/1024px-C_Sharp_wordmark.svg.png" alt="C#Image">
<h2>Le language de programmation C</h2>
<p>C# est un langage de programmation <strong>orientée objet</strong>, <div class="main-content">
fortement typé, dérivé de C et de C++, ressemblant au langage Java. Il <section class="articles">
est utilisé pour développer des <strong>applications web</strong>, <h2>Le language de programmation C#</h2>
ainsi que des <strong>applications de bureau, des services web, des
commandes, des widgets ou des bibliothèques de classes</strong>. En <article>
C#, une application est un lot de classes où une des classes comporte <p>C# est un langage de programmation <strong>orientée objet</strong>,
une méthode <strong>Main</strong>, comme cela se fait en Java. </p> fortement typé, dérivé de C et de C++, ressemblant au langage Java. Il
<p>C# est destiné à développer sur la plateforme .NET, une pile est utilisé pour développer des <strong>applications web</strong>,
technologique créée par <strong>Microsoft</strong> pour succéder à ainsi que des <strong>applications de bureau, des services web, des
COM. </p> <p>Les exécutables en C# sont subdivisés en assemblies, en commandes, des widgets ou des bibliothèques de classes</strong>. En
namespaces, en classes et en membres de classe4. Un C#, une application est un lot de classes où une des classes comporte
<strong>assembly</strong> est la forme compilée, qui peut être un une méthode <strong>Main</strong>, comme cela se fait en Java. </p>
programme (un exécutable) ou une bibliothèque de classes (une dll). Un <p>C# est destiné à développer sur la plateforme .NET, une pile
assembly contient le code exécutable en MSIL, ainsi que les symboles. technologique créée par <strong>Microsoft</strong> pour succéder à
Le code MSIL est traduit en langage machine au moment de l'exécution COM. </p> <p>Les exécutables en C# sont subdivisés en assemblies, en
par la fonction <strong>just-in-time</strong> de la plateforme .NET4. namespaces, en classes et en membres de classe4. Un
</p> <strong>assembly</strong> est la forme compilée, qui peut être un
</article> programme (un exécutable) ou une bibliothèque de classes (une dll). Un
assembly contient le code exécutable en MSIL, ainsi que les symboles.
Le code MSIL est traduit en langage machine au moment de l'exécution
par la fonction <strong>just-in-time</strong> de la plateforme .NET4.
</p>
</article>
</section>
</div> </div>
<footer> <footer>
<p>Auteur: Alexandre Agostinho</p> <p>Auteur: Alexandre Agostinho</p>
<p><a href="mailto:alexandre.agostinho@etu.uca.fr">alexandre.agostinho@etu.uca.fr</a></p> <p><a href="mailto:alexandre.agostinho@etu.uca.fr">alexandre.agostinho@etu.uca.fr</a></p>
</footer> </footer>
</body> </body>
</html> </html>

@ -17,9 +17,9 @@
</div> </div>
<nav> <nav>
<a href="./index.html">Menu Principal</a> <a href="../index.html">Menu Principal</a>
<a href="pages/galerie.html">Galerie</a> <a href="galerie.html">Galerie</a>
<a href="pages/donnees.html">Données</a> <a href="donnees.html">Données</a>
</nav> </nav>
</div> </div>

@ -0,0 +1,7 @@
.logo {
width: 260px;
margin-top: 6%;
margin-right: 3%;
display: block;
float: right;
}

@ -1,5 +1,6 @@
body { body {
background-color: #ebebeb; background-color: #ebebeb;
margin: 0;
} }
a { a {
@ -16,7 +17,7 @@ a:active { color: darkgrey; }
/* HEADER */ /* HEADER */
.header { .header {
border-left: 6px solid cadetblue; border-left: 10px solid cadetblue;
background-color: #ebebeb; background-color: #ebebeb;
position: sticky; position: sticky;
top: 0px; top: 0px;
@ -29,6 +30,7 @@ a:active { color: darkgrey; }
.header h1 { .header h1 {
margin-left: 10px; margin-left: 10px;
margin-bottom: 4px; margin-bottom: 4px;
margin-top: 0;
} }
.header img { .header img {
@ -53,7 +55,7 @@ a:active { color: darkgrey; }
/* MAIN CONTENT */ /* MAIN CONTENT */
.main-content { .main-content {
border-left: 6px solid cadetblue; border-left: 10px solid cadetblue;
border-right: 2px solid cadetblue; border-right: 2px solid cadetblue;
margin-right: 20%; margin-right: 20%;
} }
@ -82,6 +84,11 @@ a:active { color: darkgrey; }
padding-bottom: 4px; padding-bottom: 4px;
} }
.main-content p, li {
padding-right: 20px;
text-align: justify;
}
.main-content .actus h4 { .main-content .actus h4 {
margin-bottom: 0; margin-bottom: 0;
padding-bottom: 2px; padding-bottom: 2px;

Loading…
Cancel
Save