[잠깐 홍보]
IT 개발자를 이해하기 위한 모든 개발지식 온라인 강의를 런칭했습니다 :) 현재 오픈 이벤트로 30% 할인 중에 있으니 많은 관심 바랍니다🔥🔥
IT 제품 개발 프로세스 파악하기 #3 - 코드 통합하기 1 (린트, 코드 빌드)
개발자가 최종적으로 코드를 짜면 바로 서비스에 반영될까요? 아쉽지만 그렇지 않아요. 개발자가 짠 코드는 개발자의 노트북에 있고 최종적으로 서비스를 제공하는 컴퓨터에는 적용되지 않거든요.
이때 서비스를 제공하는 컴퓨터 환경을 운영 환경이라고 합니다. 반면에 개발자가 코드를 치면서 실행하는 컴퓨터 환경을 개발 환경이라고 합니다. 개발 환경에서 짜인 코드가 최종적으로 운영 환경에서 실행되기까지 복잡한 과정이 있습니다(그래서 간단해 보이는 작업도 복잡한 절차를 거쳐야 적용되는 거죠 ㅠㅠ) 이번 글에서는 개발자가 짠 코드가 원격 저장소에 저장되는 과정을 간략하게 다뤄보려고 합니다.
프로젝트 소스코드를 관리하는 Git & Github에 대해 알아보기
1. 린트(Lint) - 코딩 컨벤션에 맞는 코드인지 확인하기
IT 회사에는 많은 개발자들이 있습니다. 보통 하나의 프로젝트를 여러 명의 개발자들이 같이 작업하게 됩니다. 이때 서로 짠 코드들을 쉽게 읽을 수 있도록, 코드의 복잡도가 높아지지 않도록 코딩 컨벤션을 정합니다. 코딩 컨벤션은 쉽게 이야기하면 코드 규칙입니다. 개발 조직마다 코딩 컨벤션을 지켜서 코드의 일관성을 유지하기 위해 노력합니다.
이렇게 코드를 원격 저장소에 업로드하기 전에 코딩 컨벤션을 지켰는지 확인하는 툴을 사용합니다. 이를 코드 린팅 툴이라고 합니다. 코드 린팅 툴을 사용해서 코드가 통합되기 전에 규칙에 맞게 짜여 있는지 확인합니다.
2. 코드 빌드 & 테스트 실행
코드 린트 과정을 통과한 코드는 합격일까요? 그렇지 않습니다. 코드의 외형을 잡아주는 게 코드 린트였다면 실제로 코드가 잘 동작하는 지를 확인해야 합니다. 만일 실행 도중에 에러가 발생하면 안 되겠죠?
이때 코드 빌드 작업을 거칩니다. 개발자가 짠 코드가 잘 빌드되는지 그리고 문제없이 실행되는지 확인하기 위해 툴을 사용합니다. 이 툴을 사용하면 툴을 제공하는 회사의 컴퓨터에서 코드를 빌드해보고 개발자가 짠 테스트 코드도 같이 실행을 시켜봅니다. 만일 문제가 있다면 해당 코드를 수정해야겠죠? 코드 빌드 작업과 테스트 코드를 미리 실행시켜주는 툴을 CI(Continuous Integration) 툴이라고 합니다.
GAN 무한도전 캐릭터를 사람처럼, 사람을 캐릭터처럼 By AI 타임스
- AI 타임스에서 기고한 'GAN 무한도전 캐릭터를 사람처럼, 사람을 캐릭터처럼'를 읽고 큐레이션합니다.
딥러닝, 머신러닝 용어 쉽게 이해하기 & 전이 학습을 포함한 머신러닝의 트렌드 알아보기
- 한 아티스트가 인공지능(AI) 기술 GAN을 이용한 겨울 왕국의 캐릭터 초상화를 공개해서 화제가 되었습니다 (사실 AI 모델을 돌린 후 포토샵 작업까지 했다고 하네요)
- GAN이라는 모델은 사실 이전에 딥 페이크(정교한 합성 영상을 만들어주는 AI 모델)로 유명해졌습니다. GAN는 진짜 원본 데이터(대표적으로 이미지)를 이용해서 진짜를 판별하는 모델과 가짜를 만들어내는 모델 2가지를 학습시키는 기술입니다. 서로 경쟁시키면서 가짜를 만드는 모델은 더 진짜 같은 가짜를 만들도록, 진짜를 판별하는 모델은 더 정교하게 진짜를 찾아내도록 성장합니다.
- 이 경쟁 과정을 계속 거치다 보면 자연스럽게 가짜를 생성하는 모델이 정말 진짜 같은 가짜를 만들어내도록 성장하는 거죠. 가짜라고 하니까 뭔가 부정적인 느낌이 나는데, 이 GAN이 주목받았던 건 적은 원본 데이터로도 진짜 같은 데이터를 만들어낼 수 있다는 거예요. 적은 데이터로도 머신러닝 모델을 학습시킬 수 있게 된 것은 AI 업계에서는 큰 호재죠.
의견을 남겨주세요
Hotae.noh@thedatahunt.com
잘봤습니다!
그랩의 IT 뉴스레터
감사합니다 :) 다음 편도 기대해주세요!
의견을 남겨주세요