JEP's Diary

GitHub Copilot 본문

Development/개발일지

GitHub Copilot

지으니88 2023. 2. 14. 01:15

오늘 개발팀 회의에서 얘기가 나왔던 Copilot!

GitHub Copilot 이란?

깃허브 코파일럿(GitHub Copilot)은 2021년 GitHub에서 출시한 자동 코드 완성 인공지능이다. OpenAI의 GPT-3 모델을 이용하여 깃허브의 수많은 레포지토리들을 학습시키는 방식으로 개발되었다. 주석이나 함수 이름에 담긴 의미를 파악하여 코드를 자동 완성해, 단순하고 번거로운 작업을 자동화한다는 점이 특징이다. 현재시점으로 두달 무료사용이 가능하다.

 

아이폰 앱 개발할때 copilot을 사용하고싶다면 VS Code를 사용할것!
간단한 세팅 절차는? 요기에서

 

Visual Studio Code에서 GitHub Copilot 시작하기 - GitHub Docs

GitHub Copilot 사용해 보기 GitHub Copilot 및 Visual Studio Code 정보 GitHub Copilot은 코딩할 때 AI 쌍 프로그래머의 자동 완성 스타일 제안을 제공합니다. 자세한 내용은 "GitHub Copilot 정보"를 참조하세요. Visual

docs.github.com

 

Copilot? 이게뭐지?

듣기만 했을때는 코딩을 하다보면 알아서 변수 이름도 추천해주고, 함수도 만들려고 하면 안에 함수내용도 자동으로 작성 해주고 한다고 들었을때는 신기하다, 네이밍 고민 덜 할 수 있나?, 이러다 개발자 역할이 사라지겠다 라는 등 재밌는 감정이 들었다.

Android Studio는 플러그인이 제공되지만, XCode 는 플러그인이 없다고 들어서 VS Code로 작성해보는거를 추천받아 해봤다.

 

10분 사용해본 소감은?

결론부터 말하자면 지금 추가로 개발중인 부분이 있어서 뷰와 뷰모델 쪽에 잠깐 테스트를 해봤는데, 생각보다 제법 다음의 코드를 미리 알려주는것이다... 내일 본격적인 모듈 내 작업을 수정할 예정인데 그때 좀 더 디테일하게 사용해봐야겠다 ㅋㅋ 신기해. 플러그인 설치하고 프로젝트 열어서 바로 테스트해보는데도 제안해주는 코드를 보면 내가 썼던 형식이랑 유사해서 어느 타이밍에 학습을 한거지? 라는 궁금증도 생겼다!

 

테스트해보기

간단히 테스트해본 부분!

화면을 구성하는 부분인데 "Te"만 입력했더니 힌트로 Text의 속성값을 제안해준다. 제안해준 내용을 보면 내가 원래 사용했던 속성값의 형식이랑 거이 유사했고, 심지어 Text 안에 들어가는 값은 타이틀로 사용하려 했던 값으로 제안해부분을 보니 정말 내 코드를 학습했구나 라는 느낌이 들었다. 이때 제안한 코드를 사용할때는 Tab을 눌러주면 된다. 그 결과는 아래 이미지에!

뷰모델 안에서도  onAppear 될때 이벤트 스트림을 발생하는 부분인데, 타입을 자동으로 추천해준다. 항상 다른 뷰모델에서도 저렇게 사용하고 있는데 바로 추천해주니 사용하지 않을 이유가 없다. 바로 Tab하여 채택!

 

며칠사용해본 후기 (2023.02.20)

Copilot 자체가 제안해주는 코드는 너무 매력적이다. 특히나 반복해서 사용해야 하는 stream을 만들때 코드량이 확 줄어든다.

예를 들면 stream을 만들때 filter { $0 < 0 } 를 작성했고, 반대 케이스의 stream을 작성하려고 하면 filter { $0 >= 0 } 이라는 코드를 바로 제안해준다. 다만 Xcode에서는  Copilot을 사용 할 수 없어서 VS Code를 사용했는데, 이때 한계점을 느꼈다ㅜ 클래스 정의로 바로 이동할 수가 없었고, swift 언어 문법에 대한 에러를 바로 볼 수 없었기도 했다. 특히나 여러 파일을 수정해야 하는 작업을 할 때는 결국 Xcode로 와서 코딩을 하게 되었다. 음 아직은...여러 가지 재료를 만들어서 ViewModel 상단에 미리 다 선언해놓고 stream을 만들어 줄 때 요때만 사용하게 될 것 같지만.. 좀 더 사용해봐야 겠다.

 

 

https://docs.github.com/ko/copilot

 

GitHub Copilot - GitHub Docs

GitHub Copilot을 사용하여 코딩할 때 AI 쌍 프로그래머의 자동 완성 스타일 제안을 받을 수 있습니다.

docs.github.com

https://namu.wiki/w/GitHub%20Copilot

'Development > 개발일지' 카테고리의 다른 글

Concurrency와 쓰레드  (1) 2023.04.18
시간기준 때문에 생긴 이슈  (0) 2023.03.05
올해의 회사일의 목표, Xcode Cloud 사용해보기  (0) 2023.02.08
git flow 전략  (0) 2023.02.07
오늘의 Compose 키워드  (0) 2022.11.10