8장. 패키지
이 작품은 AI를 사용하여 번역되었습니다. 여러분의 피드백과 의견을 환영합니다: translation-feedback@oreilly.com
Go는 좋은 소프트웨어 엔지니어링 관행을 장려하는 언어가 되도록 설계되었습니다. 고품질 소프트웨어의 중요한 부분은 코드 재사용이며, 이는 "반복하지 마라"라는 원칙으로 구체화됩니다.
6장에서 살펴본 것처럼 함수는 코드 재사용을 허용하기 위해 사용하는 첫 번째 계층입니다. Go는 코드 재사용을 위한 또 다른 메커니즘인 패키지도 제공합니다. 지금까지 살펴본 거의 모든 프로그램에는 패키지가 포함되어 있습니다:
import"fmt"
fmt 는 화면 서식 지정 및 출력과 관련된 다양한 기능을 포함하는 패키지의 이름입니다. 이러한 방식으로 코드를 번들링하는 목적은 세 가지입니다:
-
이렇게 하면 이름이 중복될 가능성이 줄어들고 함수 이름을 짧고 간결하게 유지할 수 있습니다.
-
재사용하려는 코드를 더 쉽게 찾을 수 있도록 코드를 정리합니다.
-
프로그램의 작은 청크만 다시 컴파일하면 되므로 컴파일러 속도가 빨라집니다. 저희는
fmt패키지를 사용하지만 프로그램을 변경할 때마다 다시 컴파일할 필요가 없습니다.
핵심 패키지
대부분의 실제 프로그래밍은 모든 것을 처음부터 새로 작성하는 대신 기존 라이브러리와 인터페이스하는 능력에 따라 달라집니다. 이 장에서는 Go에 포함된 가장 일반적으로 사용되는 몇 가지 패키지를 살펴봅니다.
먼저 경고의 말씀을 드리자면, 이러한 라이브러리 중 일부는 매우 당연한 것이지만(또는 이전 장에서 설명한 바 있습니다) Go에 포함된 많은 라이브러리에는 전문적이고 도메인별 지식(예: 암호화)이 필요합니다. 이러한 기반 기술을 설명하는 것은 이 책의 범위를 벗어납니다.
문자열
Go에는 strings 패키지에 문자열로 작업할 수 있는 많은 함수가 포함되어 있습니다.
큰 문자열에서 작은 문자열을 검색하려면 Contains 함수를 사용합니다:
packagemainimport("fmt""strings")funcmain(){// Contains(s, substr string) boolfmt.Println(strings.Contains("test","es"))// => true}
큰 문자열에서 작은 문자열이 나타나는 횟수를 계산하려면 Count 함수를 사용합니다:
packagemainimport("fmt""strings")funcmain(){// func Count(s, sep string) intfmt.Println(strings.Count("test","t"))// => 2}
큰 문자열이 작은 문자열로 시작하는지 확인하려면 HasPrefix 함수를 사용하세요:
packagemainimport("fmt""strings")funcmain(){// func HasPrefix(s, prefix string) boolfmt.Println(strings.HasPrefix("test","te"))// => true ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access