glog_td4/compteRendu.tex
2018-04-01 14:34:28 +02:00

60 lines
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}