모듈형 Go 프로젝트 구축

GolangBeginner
지금 연습하기

소개

이 챌린지에서는 소규모 유틸리티 라이브러리를 위한 패키지 관리 기술을 발휘하여 모듈형 프로젝트를 생성함으로써 Go 모듈에 대한 이해도를 증명하게 됩니다. 이번 과제는 문자열을 대문자로 변환하는 함수가 포함된 유틸리티 패키지를 만들고, 이 패키지를 임포트하여 사용하는 메인 패키지를 작성하는 과정으로 구성됩니다. 또한 두 패키지 모두에 대해 Go 모듈을 초기화하고, 메인 패키지가 성공적으로 실행되어 변환된 문자열을 출력하는지 확인해야 합니다.

모듈형 Go 프로젝트 구축

이 챌린지에서는 소규모 유틸리티 라이브러리를 위한 패키지 관리 기술을 활용하여 모듈형 프로젝트를 구축함으로써 Go 모듈에 대한 이해도를 테스트합니다. 원활한 진행을 위해 프로젝트 구조를 초기화하고 기본 코드 프레임워크를 미리 채워둔 설정 스크립트를 제공합니다. 여러분의 임무는 코드 내의 TODO 섹션을 완성하는 것입니다.

과제

  1. ~/project/utility/helper.go 파일로 이동하여 TODO 섹션을 완성하세요.

    // TODO: Implement the ToUpperCase function using strings.ToUpper
    
  2. ~/project/main/main.go 파일로 이동하여 TODO 섹션들을 완성하세요.

    // TODO: Call the utility.ToUpperCase function
    // TODO: Print the result using fmt.Println
    

요구 사항

  • 제공된 ~/project/utility/helper.go~/project/main/main.go 파일의 TODO 부분을 채워 완성합니다.
  • 유틸리티 패키지에는 문자열을 대문자로 변환하는 ToUpperCase라는 이름의 함수가 정의되어야 합니다.
  • 메인 패키지는 ToUpperCase 함수를 호출하고 그 결과를 출력해야 합니다.

예시

TODO 섹션을 모두 완료하면 프로젝트 구조는 다음과 같아야 합니다.

~/project/
├── utility/
│   ├── go.mod
│   └── helper.go
└── main/
    ├── go.mod
    └── main.go

메인 패키지를 실행했을 때의 결과는 다음과 같아야 합니다.

cd ~/project/main
go get utility
go run main.go
HELLO, WORLD

힌트

  • 표준 라이브러리의 strings.ToUpper 함수를 사용하면 문자열을 대문자로 쉽게 변환할 수 있습니다.
  • Go 모듈을 초기화하려면 go mod init 명령어를 사용합니다. (이 환경에서는 이미 초기화되어 있습니다.)
  • 메인 패키지에서 로컬 유틸리티 패키지를 가져오려면 go get utility를 사용하세요.

요약

요약하자면, 이 챌린지는 Go 모듈과 패키지 관리에 대한 이해를 바탕으로 모듈형 Go 프로젝트를 구축하는 과제였습니다. 문자열을 대문자로 변환하는 유틸리티 패키지를 개발하고, 이를 메인 패키지에서 불러와 사용하는 과정을 실습했습니다. 또한 각 패키지의 Go 모듈 초기화 방법과 로컬 패키지 참조 설정을 통해 메인 프로그램이 의도한 대로 결과를 출력하는지 확인했습니다.

✨ 솔루션 확인 및 연습