-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Fiche navire] Rechercher les JPEs par numéro de marée #2506
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
louptheron
changed the title
[Fiche navire] Rechercher les JPEs par numéro de marée
[WIP] [Fiche navire] Rechercher les JPEs par numéro de marée
Sep 13, 2023
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nommage
- ALL_UNDERSCORED_CAPS pour les constantes qui sont dans le scope global (bon sur cette PR mais précisé pour Env)
- https://www.syncfusion.com/blogs/post/10-javascript-naming-conventions-every-developer-should-know.aspx
- https://github.com/airbnb/javascript#naming--uppercase (leurs règles sont précises à ce sujet)
- Les enums échappent évidemment à cette règle puisqu'ils sont déjà conventionnés par TS en PascalCase
- On a un mélange de dossiers camelCase / snake_case. Ca serait pas mal de suivre la camelCase partout, ce qui est une convention "empirique" en JS. Du coup je propose
useCases
plutôt queuse_cases
ici. Pour les tests e2e, à voir, mais le snake_case ne me dérange pas dans les tests e2e car ils sont à part.
Types
- Je propose qu'on namespace ce qui est dérivé des entités. Ces namespaces devraient normalement du coup correspondre aux dossiers que l'on trouve dans
backend/.../domain/entities
. Ce qui veut dire queLogBookMessage
devientLogBook.LogBookMessage
sur cette PR par exemple. On le fait déjà un peu sur Fish même si ce n'est pas le cas sur cette PR. - Si l'on s'accorde sur cette proposition, ça ouvre peut-être la question d'avoir soit un sous-dossier
types
pour séparer le domaine des types "fonctionnels", soit d'avoir un fichier type à part lorsqu'il s'agit d'un namespace (ex :LogBook.types.ts
). Petite préférence personnelle pour la seconde solution. - Je profite de ce sujet pour proposer un pattern de nommage correspondant à un CRUD typique de l'API (en mode DTO) :
export namespace Foo {
// Ce qu'on reçoit via un GET
export interface Bar {
childIds: number[]
children: Other.Child[]
id: number
name: string
parent: Other.Parent
parentId: number
}
// ---------------------------------------------------------------------------
// Types
// Ce qu'on envoie via un PUT
export type BarData = Omit<Bar, 'children' | 'parent'>
// Ce qu'on envoie via un POST
export type NewBarData = Omit<BarData, 'id'>
}
Redux
- J'ai discuté avec Loup, puis Claire de ça : autant regrouper les dispatchers et les reducers via une même constante
myActions
qu'on exporte en une seule ajoute de l'indexation inutile et déclarifie la différence entre les deux, autant pour les reducers seuls, j'aurais tendance à toujours préférer n'avoir qu'une une seule constanteexport const fooActions = fooSlice.actions
pour clarifier la compréhension du code. Sachant qu'on utilise souvent les actions de plusieurs slices. Il y a aussi beaucoup d'actions, du coup le namespacing facilite la différenciation sans compliquer le naming, par ex :sideWindowActions.showModal()
VSshowSideWindowModal()
. En bonus, ça réduit le nombre des imports.
Test unitaires
- J'aurais tendance à préférer avoir une fichier par fonction testée (plutôt que le
utils.test.ts
sur cette PR par exemple).
Globalement d'accord avec toi @ivangabriele. Quelques retours :
|
|
louptheron
force-pushed
the
loup/navigate-in-logbook-trips
branch
from
September 15, 2023 13:37
ed5afdb
to
02b2049
Compare
Kudos, SonarCloud Quality Gate passed! 0 Bugs No Coverage information |
louptheron
changed the title
[WIP] [Fiche navire] Rechercher les JPEs par numéro de marée
[Fiche navire] Rechercher les JPEs par numéro de marée
Sep 15, 2023
1 task
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Cette PR introduit l'organisation par
features
à titre d'exemple et de discussion :La partie encadrée correspond au composant
VesselLogbook
, importé parVesselSidebar
:Linked issues