Maison  >  Article  >  interface Web  >  Faire face aux problèmes

Faire face aux problèmes

DDD
DDDoriginal
2024-09-14 10:16:03853parcourir

Dealing with issues

J'ai créé expliquer.js, un outil CLI pour traiter un fichier et afficher les blocs de code avec des explications. Donc quelque chose qui peut être utile si vous n'avez aucune idée de ce qui se passe dans un fichier.
Construit à l'aide de Commander.js et du SDK Groq !
Découvrez-le @ https://github.com/aamfahim/explainer.js

Réponse instantanée

Pour revoir le code, mon partenaire @sych_andrii alias Andrii et moi avons utilisé la fonction d'appel Discord. Habituellement, pour les révisions de code, je préfère l'approche de synchronisation. Passer un appel vidéo et partager un écran et le faire en direct peut aider à accélérer le processus plutôt que de le faire de manière asynchrone dans un problème git. Bien que l’asynchrone puisse également être viable s’il y a beaucoup de détails, c’est rarement le cas. Donc, si possible, je préfère le faire de manière synchrone.

Pas notre premier rodéo

Nous sommes tous les deux très familiers avec la révision de code. Nous avons tous les deux examiné le code de chacun. Je pense que la partie révision était beaucoup plus facile puisque nous nous connaissions auparavant.

Je ferai le tien d'abord, tu feras le mien après

Comme le titre l’indique. Mon partenaire a d'abord examiné mon code. Comme la plupart de mes problèmes étaient liés à README.md, il avait beaucoup de questions. Et je l'ai laissé utiliser avec mon outil. Comme il le souhaitait, le problème initial était qu'il essayait d'utiliser la clé API OpenAI, mais Groq lançait des erreurs. Nous l'avons donc essayé avec la clé API générée par Groq et cela a fonctionné. Ensuite, nous avons essayé l'URL de base OpenAI qui fonctionnait (techniquement) mais la réponse indiquait que l'URL de base fournie n'était pas correcte. Ensuite, nous avons essayé différents modèles et découvert que nous ne pouvions utiliser que les modèles pris en charge par Groq.

Voici les problèmes qu'il a déposés sur mon dépôt

Problèmes déposés sur mon dépôt

  1. https://github.com/aamfahim/explainer.js/issues/9 README.md a été généré à la hâte, il contenait donc beaucoup d'informations précises et était également incorrect à certains endroits.
  2. https://github.com/aamfahim/explainer.js/issues/10 Andrii a essayé d'utiliser le modèle gpt-4o mais je ne pense pas que Groq le prenne en charge. Ensuite, nous avons essayé un modèle pris en charge pour la sécurité du contenu, ce qui lui a donné un résultat sur le problème. J'ai donc dû également mentionner les limitations du fichier README.md.
  3. https://github.com/aamfahim/explainer.js/issues/11 Le --outout n'a pas encore été implémenté mais il figurait dans le README.md et la description de l'aide.
  4. https://github.com/aamfahim/explainer.js/issues/12 -t l'indicateur n'était pas analysé correctement
  5. https://github.com/aamfahim/explainer.js/issues/13 La description n'était pas claire quant à l'argument attendu qui était le chemin du fichier.

WSL ou PowerShell ?

Donc, après ça, ce fut à mon tour de réviser. Le premier obstacle a été l’installation. Au départ, j'utilisais mon terminal par défaut, WSL avec Ubuntu comme distribution. Et je vais être honnête, je n'utilise pas beaucoup Python et ma version était assez ancienne. Et je ne me souviens même pas d'avoir installé Python. Donc, à cause de la version, je n'ai pas pu installer de dépendances et je n'ai pas pu mettre à jour ma version pour une raison quelconque. Je suis donc passé à cmd et je sais que Python est installé sur mon ordinateur portable Windows. J'ai donc dû utiliser cmd mais le problème était qu'après chaque commande, je devais mentionner la version --python. Et pour ce faire, je devais également transmettre le chemin du fichier qui se trouvait quelque part dans le répertoire des fichiers. Après avoir effectué la configuration, c'était plutôt bien. Je n'ai trouvé aucun bug mais j'ai eu des retours sur la structure du readme. J'ai également demandé un support .env car pour exécuter l'outil, je devais copier-coller la clé API à chaque fois, ce qui était un peu fastidieux. Il l'a aussi fait en python. Quel fou !

Problèmes déposés sur le repo d'Andrii

  1. https://github.com/SychAndrii/infusion/issues/8 J'ai trouvé README.md un peu difficile à suivre, j'ai donc ajouté quelques recommandations.
  2. https://github.com/SychAndrii/infusion/issues/9 J'ai demandé un support .env pour ne pas avoir à coller l'API à chaque fois que je l'utilise.
  3. https://github.com/SychAndrii/infusion/issues/10 Une partie spécifique de la section d'aide nécessitait une légère refactorisation.
  4. https://github.com/SychAndrii/infusion/issues/11 Si le fichier a un contenu sans rapport, il générerait parfois une erreur, parfois non.

Est-ce que tout a été réglé ?

J'ai résolu tous mes problèmes. Cela n’a pas pris beaucoup de temps puisque les problèmes étaient assez simples. La majeure partie du travail passait par la documentation commander.js. J'ai également fait quelques refactorisations entre les deux.

Qu'avez-vous appris au cours du processus de test et de révision ?

배운 교훈

가끔 개발하는 동안 소스에 빠져들기 쉽습니다. 나는 코드를 더 깔끔하게 만드는 데 너무 집중했기 때문에 README.md를 다시 생각해 보았습니다. 코드와 함께 문서화도 마찬가지로 중요하다고 생각합니다. 또한 ESM과 함께 Node에서 Pure JS를 사용하는 것은 재미가 없습니다. 내가 전혀 알지 못했거나 잊어버린 순수 JS에 대해 많은 것을 배웠습니다. +는 sting을 적절한 데이터 유형으로 변환하는 약칭이며 화살표 메서드에서는 인수를 사용할 수 없습니다. 그리고 저는 이 의견에 진심으로 동의합니다.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn