Giter Club home page Giter Club logo

java-training's Introduction

Java Training

Java Training est une série de quêtes qui vont te permettre de t’entraîner au développement Java. Tu auras la possibilité de tester automatiquement le code de chacun des exercices.

Objectifs

  • Tester son code
  • Savoir lire des logs d'erreur

Etapes

Initialisation de ton dépôt

1. Initialiser un nouveau projet

Afin de réaliser l'exercice, fait un fork de ce projet sur ton compte GitHub, puis clone le fork sur ton dépôt local.

2. Tu as déjà un fork

Si tu as déjà fork le dépôt et que tu l'as récupéré en local, tu peux le mettre à jour.

D'abord, si tu ne l'as pas encore fait, relie ton dépôt local GitHub d'origine (pas le fork) en upstream :

git remote add upstream https://github.com/WildCodeSchool/java-training.git

Ensuite récupère les modifications de l'upstream et fusionne-les sur ton dépôt local :

git fetch upstream
git checkout master
git merge upstream/master

Vérifie que tu as tout bien add/commit/push sur ton dépôt avant de faire ces commandes !

Ressources

Arborescence du projet

Première étape avant de commencer l'exercice : vérifies que tout est bien en place pour travailler.

Si tu fais exécutes la commande "tree" dans ton dépôt, tu devrais avoir l'arborescence suivante :

.
├── lib
│   ├── hamcrest-core-1.3.jar
│   └── junit-4.12.jar
├── logs
├── README.md
├── src
│   ├── exercices
│   │   └── PrimitiveTraining.java
│   │   └── ...
│   └── tests
│       ├── MainTest.java
│       └── PrimitiveTrainingTest.java
│       └── ...
└── tester.sh

Le premier fichier qui va t'intéresser est tester.sh. C'est lui qui va se charger de la compilation et de l'exécution des tests.

Pour tester si le script fonctionne, place-toi dans le dossier java-training et écrit la commande :

./tester.sh

Si tu vois le message :

bash: ./tester.sh: Permission denied

C'est que ton fichier n'a pas les droits d'exécution ! Tu peux modifier ça avec la commande :

chmod u+x tester.sh 

Le message attendu est le suivant :

Please specify the class to test, e.g. : ./tester.sh PrimitiveTraining

Suivons les indications :

./tester.sh PrimitiveTraining

Tu vas voir apparaître un tas d'erreurs, c'est normal : ton but est de réparer tout ça !

Editer les sources de l'exercice

Chaque exercice va être contenu dans un fichier source, présent dans le dossier src/exercices/.

Commence par éditer le fichier src/exercices/PrimitiveTraining.java.

Tu vas y trouver une série d'actions à réaliser. Quand tu penses avoir terminé, lance la commande correspondante :

./tester.sh PrimitiveTraining

Une série de tests va être exécutée sur ton code. Soit des erreurs y seront relevées (et il faudra les corriger en regardant les logs), soit tu obtiendras le message suivant :

JUnit version 4.12
.....
Time: 0.004

OK (5 tests)

Challenge

Envoie ta solution

  1. Créé un fork du dépôt
  2. Modifie et teste ton code avec ./tester.sh Exercice
  3. Quand ton code passe tous les tests, add/commit/push sur ton fork
  4. Partage ton dépôt GitHub en solution de la quête

Critères de validation

  • Le code se compile sans erreur
  • Le code passe toutes les validations attendues
  • Le code respecte les conventions de Java (indentation, nommage de variable, classe, méthodes, etc...)

java-training's People

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.