diff --git a/docs/src/04_solution_strategy.adoc b/docs/src/04_solution_strategy.adoc index 0dd2b698..927a82f6 100644 --- a/docs/src/04_solution_strategy.adoc +++ b/docs/src/04_solution_strategy.adoc @@ -56,11 +56,12 @@ For branch naming we used a variation of Conventional Commits commit naming, nam Pull Requests were the main method of contributing to the project, these needing to be validated by at least 2 other teammates before merging to ensure code quality. -=== Code Style +=== Code Style/Structure Regarding the code style, we must make two important distinctions: the frontend and backend. In the latter, we will mainly use Object-Oriented Programming because our language of choice is Java, which strongly favours it. Regarding the former, it will be more of a case-by-case approach, as for instance, OOP-oriented React is deprecated in favor of a functional approach, but sometimes we may need OOP's strengths. -==== API +==== Backend +===== API In the backend, the structure will be that of a typical Maven project, using different packages for different modules of the project: * The `auth` package is used for *authentication* related endpoints and configuration. @@ -83,7 +84,10 @@ In our Spring Boot project the following structure is found in each of our modul A crucial part of the design is that the models are the ones handling the logic, as described in Jimmy Bogard's talk: https://www.youtube.com/watch?v=UYmTUw5LXwQ -With regards to testing, a Test First approach was employed when possible, and the logic of the *Models* and the *Services* was tested, as well as the responses given by the *Controllers* in different situations. +In regard to testing, a Test First approach was employed when possible, and the logic of the *Models* and the *Services* was tested, as well as the responses given by the *Controllers* in different situations. + +===== Question Generator + //fill in here pls ==== Frontend * In the frontend, the structure will be quite different: