Je sais, je ne respecte pas les conventions de codage, mais c'est parce qu'elle ne me conviennent pas.
Je suis plutôt pour un code très aéré, donc avec des tabulations de 8 caractères, des accolades à la ligne, etc. Ce n'est pas parce qu'on utilise Qt qu'on doit suivre ses conventions de nommage, qui sont jolies, mais parfois difficiles à lire.
Pour le code que tu montres, avec QHttp, ben justement, c'est le seul morceau de copier/coller de la doc de Qt, dans un des exemples qu'ils donnaient, donc ce morceau n'est pas de moi.
Pour les commentaires, oui, il y en a énormément, mais ils ont l'avantage de vraiment montrer mon raisonnement, car à la base, je les écrits pour me fixer les idées. Ainsi, quand les gens viennent, ils comprennent le code rapidement. J'ai eu l'occasion de me plonger dans le code de Plasma, et je peux te dire que j'aurais vraiment, mais vraiment aimé avoir plus de commentaires. La doc de cette partie de l'API est très succinte, et les commentaires secs. Bref, avec tous ces DesktopCorona et autres, j'ai du tatoner pendant près d'une semaine pour arriver à un truc qui marche de mon côté.
Pour le design des classes, j'avoue. La classe Package contient tout ce qui touche au fichier XML des paquets, sa sous-classe Private tout ce qui ne doit pas être exposé à l'extérieur (et tu remarqueras que je suis la convention du pointeur d ici, comme quoi j'en suis capable). Effectivement, la classe PackageSystem est boiteuse, avec des fonctions statiques et d'autres non. J'ai essayé d'en mettre quelques-unes en statique, pour permettre de facilement faire un "PackageSystem::package(nom, version, méthode)" sans avoir besoin d'une instance (et donc d'un pointeur d en mémoire, ainsi quele classe private, et tout un QObject).
La classe Util est vraiment tordue, je l'avoue. Son but premier est de fournir des méthodes qui ne sortent pas de libpackages, comme download() (méthode qu'on retrouve, statique, dans PackageSystem).
Si tu trouves encore du code que je peux améliorer, dis-le, et je me ferai un plaisir de le corriger. En attendant, je vais regarder de bien plus près le code de KDE, pour apprendre.
[^] # Re: Le Francais te tuera...
Posté par steckdenis . En réponse au journal Aider au développement d'un nouveau gestionnaire de paquets. Évalué à 2.
Je suis plutôt pour un code très aéré, donc avec des tabulations de 8 caractères, des accolades à la ligne, etc. Ce n'est pas parce qu'on utilise Qt qu'on doit suivre ses conventions de nommage, qui sont jolies, mais parfois difficiles à lire.
Pour le code que tu montres, avec QHttp, ben justement, c'est le seul morceau de copier/coller de la doc de Qt, dans un des exemples qu'ils donnaient, donc ce morceau n'est pas de moi.
Pour les commentaires, oui, il y en a énormément, mais ils ont l'avantage de vraiment montrer mon raisonnement, car à la base, je les écrits pour me fixer les idées. Ainsi, quand les gens viennent, ils comprennent le code rapidement. J'ai eu l'occasion de me plonger dans le code de Plasma, et je peux te dire que j'aurais vraiment, mais vraiment aimé avoir plus de commentaires. La doc de cette partie de l'API est très succinte, et les commentaires secs. Bref, avec tous ces DesktopCorona et autres, j'ai du tatoner pendant près d'une semaine pour arriver à un truc qui marche de mon côté.
Pour le design des classes, j'avoue. La classe Package contient tout ce qui touche au fichier XML des paquets, sa sous-classe Private tout ce qui ne doit pas être exposé à l'extérieur (et tu remarqueras que je suis la convention du pointeur d ici, comme quoi j'en suis capable). Effectivement, la classe PackageSystem est boiteuse, avec des fonctions statiques et d'autres non. J'ai essayé d'en mettre quelques-unes en statique, pour permettre de facilement faire un "PackageSystem::package(nom, version, méthode)" sans avoir besoin d'une instance (et donc d'un pointeur d en mémoire, ainsi quele classe private, et tout un QObject).
La classe Util est vraiment tordue, je l'avoue. Son but premier est de fournir des méthodes qui ne sortent pas de libpackages, comme download() (méthode qu'on retrouve, statique, dans PackageSystem).
Si tu trouves encore du code que je peux améliorer, dis-le, et je me ferai un plaisir de le corriger. En attendant, je vais regarder de bien plus près le code de KDE, pour apprendre.