02 프로그래밍
package & import #1
※ package & import 파트에서는 구름EDU 실습 환경을 사용할 수 없어 별도 제공하지 않는 점 참고해주시기 바랍니다.
이전 강의에서 package
는 파일명이라 했는데, 그게 무슨 말인지 의아하신 분들이 있을 것 같습니다.
일단, 파이썬 코드로 예시를 보겠습니다.
실행 언어: py3
- 각 파일들이 같은 위치에 있을 때 test.py를 실행하면 'something'이 출력됩니다. test.py를 실행하기 위해 test2.py를
import
했죠. 즉, 만든 모듈을 가져오기 위해선import <모듈(파일명)>
이라고 작성해야 합니다.package
는 어떤 한 모듈이라고 생각하시면 됩니다. 파이썬에서는 한 파일에 비슷한 행위를 하는 다른 여러 파일을 가져오려면 여러 번import
해야 하지만, golang은 비슷한 행위를 하는 다른 여러 파일을 가져올 때package
만 같다면import <package>
만으로, 즉import
한 번만으로 충분합니다. - golang에선
package
이름에 따라 용도가 구분됩니다. 만일package
이름이 'main'이라면 "컴파일하고 실행하는 파일"이고, 'main'이 아니라면 그냥 "개발자가 사용할 수 있는 어떤 모듈"이라는 것입니다. 그러니 main.go에 새로 코드를 작성하면package main
이라고 첫 줄에 써야겠죠. 컴파일 후 실행해야 하니까요. - golang에서는 진입점을 써야 하는데, 앞서 잠시 소개했던
main
함수가 그 역할을 수행합니다. 파이썬에선 없지만 golang에선 진입점이 있습니다. 전에 봤다시피func main() { ... }
입니다. (...
안에 이어서 쓸 겁니다) fmt
라는package
안에 출력하는 함수Println
이 있다 했으니 그대로 쓰면fmt.Println()
가 됩니다.- 인자는 큰따옴표로 줍니다. 파이썬에선 작은따옴표와 큰따옴표 모두 같은 type을 갖지만,(
str
) golang에선 다릅니다. 무조건 큰따옴표나 '`'로 묶어야하죠. (string
) 참고로 문자열은 파이썬에서str
, golang에서string
입니다. 이름만 다릅니다.
(ex)fmt.Println("아무거나 입력해주세요.")
실행 언어: go
이대로 실행하시면 에러가 나면서 실행되지 않을 겁니다. import
를 하지 않았기 때문이죠!
import
는 파이썬에서 하던 방식과 동일하게 하면 됩니다. package
와 main
함수 사이에 작성한 뒤, 큰 따옴표로 사용할 package
이름을 묶어주시면 됩니다.
실행 언어: go