>  기사  >  웹 프론트엔드  >  문제 다루기

문제 다루기

DDD
DDD원래의
2024-09-14 10:16:03853검색

Dealing with issues

파일을 처리하고 설명과 함께 코드 블록을 출력하는 CLI 도구인 explainer.js를 만들었습니다. 따라서 파일에서 무슨 일이 일어나고 있는지 전혀 모르는 경우 도움이 될 수 있습니다.
Commander.js 및 Groq SDK를 사용하여 구축되었습니다!
@https://github.com/aamfahim/explainer.js

에서 확인해 보세요.

즉각적인 응답

코드 검토를 위해 내 파트너인 @sych_andrii(일명 Andrii)와 저는 디스코드 통화 기능을 사용했습니다. 일반적으로 코드 검토에서는 동기화 접근 방식을 선호합니다. 화상 통화와 화면 공유를 실시간으로 수행하면 git 문제에서 비동기식으로 수행하는 것과 달리 프로세스를 빠르게 추적하는 데 도움이 될 수 있습니다. 세부 사항이 많으면 비동기식도 실행 가능하지만 그런 경우는 거의 없습니다. 그래서 가능하다면 동기적으로 하는 걸 선호합니다.

우리의 첫 번째 로데오가 아니었어

저희 둘 다 코드 리뷰에 매우 익숙합니다. 우리 둘 다 서로의 코드를 검토했습니다. 서로 미리 알고 있었기 때문에 리뷰 부분이 훨씬 쉬웠던 것 같아요.

내가 먼저 할게, 넌 내 것을 나중에 해

제목 그대로. 내 파트너가 내 코드를 먼저 검토했습니다. 내 문제의 대부분은 README.md와 관련이 있었기 때문에 질문이 많았습니다. 그리고 나는 그에게 내 도구를 사용하게 했습니다. 그가 원했던 대로 초기 문제는 OpenAI API 키를 사용하려고 시도했지만 Groq에서 오류가 발생했다는 것입니다. 그래서 우리는 Groq에서 생성한 API 키를 사용하여 시도했고 작동했습니다. 그런 다음 (기술적으로) 작동하는 OpenAI 기본 URL을 시도했지만 제공된 기본 URL이 올바르지 않다는 응답을 받았습니다. 그러다가 다양한 모델을 시험해 본 결과 Groq 지원 모델만 사용할 수 있다는 것을 알게 되었습니다.

이것은 그가 내 저장소에 제출한 문제입니다

내 저장소에 제출된 문제

  1. https://github.com/aamfahim/explainer.js/issues/9 README.md는 급하게 만든거라 정확한 정보가 많고 틀린 곳도 많았습니다.
  2. https://github.com/aamfahim/explainer.js/issues/10 Andrii는 gpt-4o 모델을 사용하려고 시도했지만 Groq가 이를 지원하지 않는 것 같습니다. 그런 다음 문제에 대한 결과를 제공하는 콘텐츠 안전을 위한 지원 모델을 시도했습니다. 그래서 README.md에서도 한계점을 언급해야 했는데요.
  3. https://github.com/aamfahim/explainer.js/issues/11 --outout은 아직 구현되지 않았지만 README.md 및 도움말 설명에 있었습니다.
  4. https://github.com/aamfahim/explainer.js/issues/12 -t 플래그가 제대로 구문 분석되지 않았습니다
  5. https://github.com/aamfahim/explainer.js/issues/13 예상 인수가 파일 경로에 대한 설명이 명확하지 않았습니다.

WSL 또는 Powershell?

그럼 다음은 제가 리뷰할 차례였습니다. 첫 번째 장애물은 설치였습니다. 처음에는 기본 터미널인 WSL을 Ubuntu와 함께 배포판으로 사용하고 있었습니다. 솔직히 말해서 저는 Python을 많이 사용하지 않으며 내 버전도 꽤 오래되었습니다. 그리고 파이썬을 설치한 기억도 없습니다. 그래서 버전 때문에 종속성을 설치할 수 없었고 어떤 이유로 버전을 업데이트할 수도 없었습니다. 그래서 저는 cmd로 전환했고 Windows 노트북에 Python이 설치되어 있다는 것을 알고 있습니다. 그래서 cmd를 사용해야 했는데 문제는 모든 명령 후에 --python 버전을 언급해야 한다는 것이었습니다. 그리고 그렇게 하려면 파일 디렉터리 어딘가에 있는 파일 경로도 전달해야 했습니다. 설정을 실행한 후에는 꽤 좋았습니다. 버그는 발견하지 못했지만 Readme 구조에 대한 피드백은 있었습니다. 또한 도구를 실행하려면 매번 API 키를 복사하여 붙여넣어야 하는 다소 지루한 작업이 필요했기 때문에 .env 지원을 요청했습니다. 또한 그는 파이썬으로 그것을 했습니다. 정말 대단해요!

Andrii의 저장소에 제출된 문제

  1. https://github.com/SychAndrii/infusion/issues/8 README.md를 따라가기가 약간 어려워서 몇 가지 권장 사항을 추가했습니다.
  2. https://github.com/SychAndrii/infusion/issues/9 사용할 때마다 API를 붙여넣지 않아도 되도록 .env 지원을 요청했습니다.
  3. https://github.com/SychAndrii/infusion/issues/10 도움말 섹션의 특정 부분에 약간의 리팩토링이 필요했습니다.
  4. https://github.com/SychAndrii/infusion/issues/11 파일에 관련 없는 내용이 있으면 오류가 발생하는 경우도 있고 발생하지 않는 경우도 있습니다.

다 고쳐졌나요?

모든 문제를 해결했습니다. 문제가 워낙 간단해서 시간은 많이 걸리지 않았습니다. 대부분의 작업은 Commander.js 문서를 통해 진행되었습니다. 그 사이에 리팩토링도 했습니다.

테스트하고 리뷰하는 과정에서 무엇을 배웠나요?

經驗教訓

有時在開發過程中很容易迷失在醬汁中。我非常專注於讓程式碼更乾淨,所以我把 README.md 作為第二個想法。我認為與程式碼一樣,文件也應該受到同樣的重視。另外,在 Node 中使用純 JS 和 ESM 並不有趣。學到了很多關於純 JS 的東西,這些東西我從來不知道或忘記,例如 + 是將 sting 轉換為適當資料類型的簡寫,而參數在箭頭方法中不可用。我完全同意這個評論。

위 내용은 문제 다루기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.