Skip to content

Instantly share code, notes, and snippets.

@ethanquix
Created October 30, 2017 12:17
Show Gist options
  • Save ethanquix/750bd00f7dd0da4b64e21c33e59fdf1f to your computer and use it in GitHub Desktop.
Save ethanquix/750bd00f7dd0da4b64e21c33e59fdf1f to your computer and use it in GitHub Desktop.
Area
# Area
## Objectif -> Créer un service de mise en relation de réseaux sociaux comme IFTTT marchant avec un système de action / réaction
```
- Entièrement en JAVA
- Serveur JAVA qui rend du code HTML
- Apprentissage d'un nouveau framework Spring
- Tests unitaires complets
- Déploiement sur serveur distant
- Design moderne et intelligemment pensé
- Multiplateforme (Linux / Mac / Windows)
- Modularité et Abstraction
- Projet a faire a 6 en 1 semaine
- Apprentissage du flow OAUTH et des API de divers services
- Services présents: Timer / Outlook / Facebook / Yammer / Twitter / Linkedin
- Documentation
```
Nous avons décidé de faire en sorte que les modules sociaux dérivent tous d'une interface. Ainsi, il a été extrèmement facile de les intégrer au projet par la suite.
L'utilisation du framework Java Spring nous a permis d'accélérer la vitesse du dévelloppement en laissant a ce dernier la gestion du serveur et de rendre les pages
Nous avons passé beaucoup de temps a discuter de l'architecture du projet et en faire l'uml, mais cela nous a permis ensuite de travailler bien plus efficacement et rapidement.
## Build System
Gradle est utilisé avec spring-boot-gradle-plugin afin de générer un exécutable .jar avec toutes les dépendances
## Unit Test
Nous avons mis en place des test unitaires avec JUnit. De plus, a chaque push, TeamCity va lancer un build et executer les tests, puis nous communiquer le résultat
![teamcity](https://i.imgur.com/9nLEJCx.png)
![gtest](https://i.imgur.com/2ixdXof.png)
## Communication et répartition du travail
Nous utilisons Trello, qui nous permet ainsi de créer un board kanban et de nous répartir le travail.
De plus, étant lié a TeamCity, a chaque test échoué, ce dernier crée automatiquement une nouvelle tache
![youtrack](https://i.imgur.com/edWOksh.png)
Pour communiquer nous avons utilisé Slack et Discord, avec un plugin github qui prévient a chaque push
## Code Review
Nous utilisons Upsource en outil de code review. Ce dernier s'intègre parfaitement a Youtrack mais aussi a l'IDE utilisé (Jetbrains Intellij IDEA) et permet de faire de la code review directement dans l'IDE
![upsource](https://i.imgur.com/u0PNSGr.png)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment