Commit 67d3f797 authored by lhommeni's avatar lhommeni

Ajout du hdoc-to_opale qui n'est plus present

parent e11606ad
This diff is collapsed.
<?xml version="1.0" encoding="UTF-8"?>
<grammar xmlns="http://relaxng.org/ns/structure/1.0"
xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"
ns="http://www.utc.fr/ics/hdoc/xhtml">
<a:documentation>Last update : 2014-12-04</a:documentation>
<a:documentation>Changes since last update :
In order to manage quiz :
- Adding multiple-choice-question and fill-in-the-blank to section
- Adding question, choice-correct, choice-uncorrect and explanation to div
- Adding blank to span
- Externalizing ObjectType and VideoType from main schema
</a:documentation>
<!-- Type Microdata -->
<define name="SectionType">
<optional>
<attribute name="data-hdoc-type">
<choice>
<value>introduction</value>
<value>conclusion</value>
<value>unit-of-content</value>
<value>multiple-choice-question</value>
<value>fill-in-the-blank</value>
</choice>
</attribute>
</optional>
</define>
<define name="DivType">
<optional>
<attribute name="data-hdoc-type">
<choice>
<!-- block management -->
<value>emphasis</value>
<value>complement</value>
<value>definition</value>
<value>example</value>
<value>remark</value>
<value>warning</value>
<value>advice</value>
<!-- quiz management -->
<value>question</value>
<value>choice-correct</value>
<value>choice-incorrect</value>
<value>explanation</value>
</choice>
</attribute>
</optional>
</define>
<define name="SpanType">
<optional>
<attribute name="data-hdoc-type">
<choice>
<value>syntax</value>
<value>latex</value>
<!-- quiz management -->
<value>blank</value>
</choice>
</attribute>
</optional>
</define>
<define name="ObjectType">
<attribute name="type">
<choice>
<value>application/vnd.oasis.opendocument.graphics </value>
<value>application/vnd.oasis.opendocument.spreadsheet</value>
<value>application/pdf</value>
</choice>
</attribute>
</define>
<define name="VideoType">
<attribute name="type">
<choice>
<value>video/mp4</value>
<value>video/ogg</value>
<value>video/webm</value>
</choice>
</attribute>
</define>
</grammar>
<?xml version="1.0" encoding="UTF-8"?>
<project basedir="." name="myantce">
<property name="in" location="${basedir}/input"/>
<property name="out" location="${basedir}/output"/>
<property name="tmp" location="${basedir}/tmp"/>
<property name="xsl" location="${basedir}/xsl"/>
<property name="lib" location="${basedir}/lib"/>
<property name="log" location="${basedir}/log"/>
<echo message="Hello World !"/>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?><?oxygen RNGSchema="http://scenari.utc.fr/hdoc/schemas/xhtml/hdoc1-xhtml.rng" type="xml"?>
<html xmlns="http://www.utc.fr/ics/hdoc/xhtml">
<head>
<title>Constructeur (programmation) — Wikipédia</title>
<meta charset="utf-8"></meta>
<meta name="generator" content="HdocConverter/wikipedia"></meta>
<meta name="author" content="Wikipedia"></meta>
</head>
<body>
<section data-hdoc-type="introduction">
<header>
<h1>Introduction</h1>
</header>
<div>
<p>Un
<em>constructeur</em> est, en
<a href="http://wikipedia.org/wiki/Programmation_orient%C3%A9e_objet">programmation orientée objet</a>, une
<a href="http://wikipedia.org/wiki/Fonction_informatique">fonction</a> particulière appelée lors de l'
<a href="http://wikipedia.org/wiki/Instanciation">instanciation</a>. Elle permet d'
<a href="http://wikipedia.org/wiki/Allocation_de_m%C3%A9moire">allouer</a> la mémoire nécessaire à l'objet et d'initialiser ses
<a href="http://wikipedia.org/wiki/Attribut_(informatique)">attributs</a>.
</p>
<p>Si le langage l'autorise, la
<a href="http://wikipedia.org/wiki/Surd%C3%A9finition">surcharge</a> est possible et les constructeurs se différencient par le nombre et le type des paramètres
passés et renvoyés mais aussi par le formalisme employé. Dans de nombreux langages,
on distingue certains constructeurs en particulier :
</p>
<p>Ces deux constructeurs ont souvent une définition attribuée par défaut par le
<a href="http://wikipedia.org/wiki/Compilateur">compilateur</a>. Le constructeur par défaut n'a alors aucun effet ; le constructeur de recopie par
contre recopiera les valeurs de tous les membres de l'objet donné vers l'objet courant.
Ceci peut s'avérer particulièrement dangereux, spécialement dans le cas où des
<a href="http://wikipedia.org/wiki/Pointeur_(programmation)">pointeurs</a> sont alloués par le constructeurs et libérés par le
<a href="http://wikipedia.org/wiki/Destructeur">destructeur</a>.
</p>
</div>
</section>
<section>
<header>
<h1>
En Java
</h1>
</header>
<div>
<p>En
<a href="http://wikipedia.org/wiki/Java_(langage)">Java</a>,
<i>new</i> est un opérateur unaire de construction qui crée un nouvel objet ou un nouveau tableau.
</p>
<p>Pour créer un nouvel objet, le mot-clé
<i>new</i> doit être suivi d'une méthode qui soit un constructeur. Par exemple, on pourra avoir :
</p>
<p>si toutefois la classe
<i>MaClasse</i> a un constructeur qui possède deux paramètres : un entier et une chaîne de caractères.
</p>
<p>Pour créer un nouveau tableau, on peut par exemple écrire :</p>
</div>
</section>
<section>
<header>
<h1>
En C++
</h1>
</header>
<div>
<p>En
<a href="http://wikipedia.org/wiki/C%2B%2B">C++</a>, le constructeur est une fonction membre publique de la classe portant le même nom
que celle-ci. Il est appelé lors de la déclaration de l'objet ou lors de l'utilisation
du mot-clé
<i>new</i>. Le constructeur peut utiliser la syntaxe constructeur(argument) : variable(argument) pour initialiser les variables.
</p>
</div>
</section>
<section>
<header>
<h1>
En C#
</h1>
</header>
<div>
<p>Exemple de constructeur en
<a href="http://wikipedia.org/wiki/C_sharp">C#</a> :
</p>
<p>Il existe par ailleurs en C# des
<a href="http://wikipedia.orghttp://msdn.microsoft.com/fr-fr/library/k9x6w0hc.aspx">constructeurs statiques</a>, qui permettent d'initialiser une donnée statique et d'effectuer une action particulière
devant être effectuée une seule fois. Les constructeurs statiques sont appelés implicitement
avant qu'une instance ne soit crée. Tout appel à une classe (appel statique ou constructeur),
déclenche l'exécution du constructeur statique.
</p>
<p>Exemple d'utilisation d'un constructeur statique :</p>
</div>
</section>
<section>
<header>
<h1>
Critique
</h1>
</header>
<div>
<p>Dans les langages tels
<a href="http://wikipedia.org/wiki/Java_(langage)">Java</a>, l'appel à un constructeur est équivalent à l'appel d'une méthode statique, ce qui
rend plus difficile l'écriture de
<a href="http://wikipedia.org/wiki/Test_unitaire">tests unitaires</a> pour une méthode. L'
<a href="http://wikipedia.org/wiki/Injection_de_d%C3%A9pendance">injection de dépendance</a> permet au programmeur de ne plus devoir écrire aucun appel de constructeur car le
<a href="http://wikipedia.org/wiki/Framework">framework</a> d'injection de dépendance s'en charge à sa place.
</p>
</div>
</section>
</body>
</html>
\ No newline at end of file
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment