Skip to content
This repository has been archived by the owner on Mar 10, 2020. It is now read-only.

JavaMinor2015/T1-Case3

Repository files navigation

T1-Case3

Kantilever business logic, REST API & Angular Frontend.

Compiling

Technologie

Kantilever

  • Spring backend
  • Spring REST + Hateoas

Website

  • Angular Frontend

Android

  • Android 6.0
  • REST Volley

Structuur

Project

  • Kantilever

    • Modules
      • Domain Entiteiten die in alle modules gebruikt worden

      • PlatformServices Processen/utilities die in alle modules gebruikt kunnen worden, bijv. abstracte repository

      • BS_Catalogus Catalogus implementatie, bijv. repository implementaties

      • BS_Voorraadbeheer Voorraadbeheer implementatie met integratieservice / servicebus

      • BS_Klantbeheer Klantbeheer implementatie, bijv. repository implementaties

      • BS_Bestellingbeheer Bestellingbeheer implementatie, bijv. repository implementaties

      • PCS_Winkelen Processlogica voor winkelen, alle servicemethoden die aangeroepen worden door de frontends

      • PCS_Bestellen Processlogica (REST) voor bestellen, alle servicemethoden die aangeroepen worden door de android frontend

  • Angular

    • Modules
      • FE_WebWinkel Frontend klant bestellen, AngularJS
  • Android

    • Modules
      • App

Git

  • master - alleen releases via een release branch
  • dev - features/bugs etc. die afgerond zijn
  • release/naam - een nieuwe release voorbereiden
  • feature/naam - een nieuwe feature voorbereiden

Voor merge naar dev:

  1. merge dev naar feature: solve conflicts
  2. slagen unit tests?
  3. slaagt maven build?
  4. SonarQube issues?
  5. Feature request naar Tom

Tom

  1. Feature request accept/reject
  2. Merge in dev

Matthijs

  1. Maak release branch aan
  2. Slagroom op de taart
  3. Merge naar master

Code

Abstractie, bijv. Repository

  • Abstracte Repository (al dan niet interface) met daarin koppeling naar database type
  • Repository implementatie (al dan niet interface) met daarin extends naar abstracte repository, bijv:
    • CustomerRepo - findByFirstName(), findByLastName() etc.
    • ProductRepo - findByCategory() etc.

Documentatie

  • Elke publieke methode documentatie geven voor de feature af is.
  • Vage constructies inline documenteren (lambda)