60 lines
No EOL
2.2 KiB
TeX
60 lines
No EOL
2.2 KiB
TeX
\include{macroTL}
|
|
\title{Génie logiciel \\ -- \\TD4}
|
|
\author{\bsc{Pietri} Yoann (A11)\\\bsc{Levy--Falk} Hugo (A11)}
|
|
\date{Mars 2018}
|
|
\usepackage{mathrsfs}
|
|
\usepackage{MyPack2}
|
|
\usepackage{pdftexcmds}
|
|
\usepackage{minted}
|
|
\begin{document}
|
|
\maketitle
|
|
\initPage{TL de Génie Logiciel}{\today}{\bsc{Pietri} Yoann, \bsc{Levy--Falk} Hugo}
|
|
\tableofcontents
|
|
\newpage
|
|
\section{Lecture d'une chaîne de caractères dans un fichier}
|
|
Le mot clé \mintinline{java}{static} permet d'appeler la méthode \mintinline{java}{lireTexte} sans avoir besoin d'instancier d'objet de la classe \mintinline{java}{Utilitaire}.
|
|
|
|
Code source de la classe Comparateur :
|
|
|
|
\inputminted{java}{td4/question1/comparateur.java}
|
|
|
|
\section{Implémentation de l'architecture logicielle}
|
|
|
|
\subsection{Code source de la classe \mintinline{java}{Comparateur}}
|
|
\inputminted{java}{td4/question2/Comparateur.java}
|
|
|
|
\subsection{Code source de la classe \mintinline{java}{AlgoCodage}}
|
|
\inputminted{java}{td4/question2/AlgoCodage.java}
|
|
|
|
\subsection{Code source de la classe \mintinline{java}{Cesar}}
|
|
\inputminted{java}{td4/question2/Cesar.java}
|
|
|
|
\section{Utilisation d'un patron pour ajouter un algorithme existant}
|
|
Les classe \mintinline{java}{EncodeurAClef} ne possède pas les méthodes \mintinline{java}{encode} et \mintinline{java}{décode}, mais possède des méthodes \mintinline{java}{chiffre} et \mintinline{java}{déchiffre}. De plus il n'hérite pas de \mintinline{java}{AlgoCodage}. La solution est d'utiliser le patron adaptateur.
|
|
|
|
La figure \ref{fig:rationalrose} montre le diagramme \bsc{UML} de l'application.
|
|
|
|
\begin{figure}[h!]
|
|
\centering
|
|
\includegraphics[width=0.7\linewidth]{td4/question3/rational_rose}
|
|
\caption{Diagramme UML}
|
|
\label{fig:rationalrose}
|
|
\end{figure}
|
|
|
|
Le code à ajouter dans la classe comparateur est alors:
|
|
\begin{minted}{java}
|
|
algoAComparer.add(new AdapteEncodeurAClef("mon secret"));
|
|
algoAComparer.add(new AdapteEncodeurAClef(""));
|
|
\end{minted}
|
|
|
|
\section{Tests unitaires pour codage d'Huffman}
|
|
Code source de la classe \mintinline{java}{ArbreTest} :
|
|
\inputminted{java}{td4/question4/ArbreTest.java}
|
|
|
|
\section{Documentation}
|
|
Code source de la classe Feuille :
|
|
\inputminted{java}{td4/question5/Feuille.java}
|
|
|
|
\clearpage
|
|
\listoffigures
|
|
\end{document} |