Avoir installer la dernière version de BlueJ
Avoir installer la dernière de git pour windows (ou git pour linux)

Utilisation de BlueJ et récupération/soumission de vos travaux dans votre projet github dédié à ce cours
  1. Créer votre compte github avec vos adresse email de l'@isae.edu.lb et le nom d'utilisateur identifiant Cnam Liban [Voir la vidéo](https://youtu.be/UShoAaZihRU)
  2. Créer un fork du projet github https://github.com/ISSAE/nfp121.tp1/
  3. cloner en local votre projet issue du fork par exemple dans c:\sharing\mesgit\
  4. Lancer Bluej, puis ouvrir le projet qui se trouve c:\sharing\mesgit\nfp121.tp1\tp1

Vous obtenez :

Les 3 questions correspondent aux 3 paquetages
  • si vous avez cloner dans c:\sharing\mesgit\ Votre projet tp1 se trouve maintenant dans le répertoire : 'c:\sharing\mesgit\nfp121.tp1\tp1'
  • L'énoncé du TP/TD ('tp1') est dans ce répertoire en 'c:\sharing\mesgit\NFP121\tp1\tp1.html'. ou encore https://issae.github.io/nfp121.tp1/tp1/tp1
Introduction
Champs, constructeurs, méthodes et instances d'une classe (introduction extraite du livre Objects First de M .Kölling, chapitre 1 de Objects-First).
  1. Allez dans le paquetage question1
  2. Puis créer plusieurs instances,
  3. Déclenchez les méthodes d'instance,
  4. Vérifier les champs d'instance des classes "Circle, Square et Triangle"
  5. Une première documentation , ( générée par Bluej Menu Outils en fait javadoc)



Introduction suite
  1. Créer une instance de la classe Picture, Modifier le source "Picture.java" afin que le soleil soit bleu,
  2. Ajouter une nouvelle donnée d'instance : un nouveau soleil (jaune...),
  3. Ajouter une nouvelle méthode à la classe Picture permettant au soleil ( bleu) de se coucher (si la terre est fixe...), voir la méthode slowMoveVertical de la classe "Circle"

Répondre aux autres exercices du chapitre 1 de Objects-First



Introduction, tests, mise en oeuvre
  1. Le paquetage question3 contient la classe AuditeurCnam fondée sur le squelette de programme suivant :
  2. public class AuditeurCNAM {
        /** l'attribut nom de chaque auditeur. */
        private String nom;
        /** l'attribut prenom de chaque auditeur. */
        private String prenom;
        /** l'attribut matricule de chaque auditeur. */
        private String matricule;

        /**
         * "Création", le constructeur d'un auditeur avec son nom, son prénom et son
         * matricule.
         
         @param nom
         *            le nom de l'auditeur
         @param prenom
         *            son prénom
         @param matricule
         *            sur la carte d'inscription, près de la photo
         */
        public AuditeurCNAM(String nom, String prenom, String matricule) {
            this.nom = nom;
            this.prenom = prenom;
            this.matricule = matricule;
        }

        /**
         * le login au Cnam : 6 premières lettres du nom suivies de la première
         * lettre du prénom séparées de '_' . le login retourné est en minuscules,
         * le trait d'union, ou spéciaux <i>(pour unix)</i> sont remplacés par des
         * '_' pas de caractères accentués pour le login voir les classes
         * prédéfines, java.lang.String : les méthodes replaceAll, toLowerCase et
         * substring java.lang.Math : la méthode min<br>
         <b>BlueJ : Menu Aide</b>
         
         @return le login du Cnam simplifié, sans les adaptations dues aux
         *         homonymes...
         */
        public String login() {
            return "";// à compléter
        }

        /**
         * Lecture du nom de l'auditeur.
         
         @return son nom
         */
        public String nom() {
            return null;// à compléter
        }

        /**
         * Lecture du prénom de l'auditeur.
         
         @return son prénom
         */
        public String prenom() {
            return null;// à compléter
        }

        /**
         * Lecture du matricule de l'auditeur.
         
         @return son matricule
         */
        public String matricule() {
            return null;// à compléter
        }

        /**
         * méthode toString ( méthode redéfinie de la classe Object).
         
         @return la concaténation du nom, du prénom et du login, selon cette
         *         syntaxe
         *         <code>nom() + " " + prenom() +  " login : " + login()</code>
         */
        @Override
        public String toString() {
            return nom() " " + prenom() " login : " + login();
        }
    }
  3. Lire la documentation de cette classe
  4. Complétez cette classe
  5. Créer plusieurs instances (clic droit sur la classe), vérifiez la valeur des données d'instances avec l'inspecteur d'objets
  6. Exécutez les tests unitaires proposés, ceux-ci sont minimaux
  7. Ajoutez vos propres tests, voir le tutoriel "Unit Testing in BlueJ"
Envoyer votre projet sur le github

</div>