antoinecellier / raccord

5 stars 0 forks source link

Decouple the schema and resolvers #41

Closed antoinecellier closed 7 years ago

antoinecellier commented 7 years ago

Sources: http://dev.apollodata.com/tools/graphql-tools/generate-schema.html

https://github.com/apollostack/GitHunt-API/blob/master/api/schema.js

hgwood commented 7 years ago

Et encore un nouveau langage ? ;)

antoinecellier commented 7 years ago

Pas vraiment un nouveau langage, c'est le format pour déclarer des type/query/mutation définis dans la spéc. Ca rend le code bcp moins verbeux et plus clair je trouve.

hgwood commented 7 years ago

Sémantique cachée dans une string == nouveau langage (il faut un parser). Pourquoi ne pas utiliser du JS ?

type FavoriteStop {
  id: String!,
  label: String!,
  routes: [Route]
}

vs

const FavoriteStop = type({
  id: required(String), // ou String.required
  label: required(String),
  routes: listOf(Route) // ou Route.list
})
antoinecellier commented 7 years ago

@hgwood ready for review

antoinecellier commented 7 years ago

Pour les champs à mettre en camel case je le ferais dans une autre PR

hgwood commented 7 years ago

Dans mon commentaire précédent je voulais dire "on va pas tout changer". Après si tu veux le faire y'a pas de soucis mais je ne pense pas que ça vaille le coup du temps.