더북(TheBook)

7.1.2 별칭

패키지 이름에 별칭(alias)을 줄 수도 있다. 주로 이름이 길거나 중복되는 패키지가 있을 때 별칭을 준다.

import (
    "database/sql"
    "fmt"
    "log"
     
    sq "github.com/lann/squirrel"
)
 
func findUser(identifier string) (*User, error) {
    var (
        id int
        name string
    )
     
    err := sq.Select("id, name").From("users").
        Where(sq.Eq{"identifier": identifier}).
        RunWith(db()).QueryRow().Scan(&id, &name)
     
    switch {
    case err == sql.ErrNoRows:
        log.Printf("No user with that ID.")
    case err != nil:
        log.Fatal(err)
    default:
        fmt.Printf("Username is %s\n", username)
    }
     
    u := &User{id, name, identifier, avatar_revision.String}
    return u, nil
}

이 코드에서는 github.com/lann/squirrel 패키지를 임포트해서 사용하는데 패키지명(squirrel)이 길어서 별칭을 sq로 주어 사용했다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.