로드맵입니다. 오늘은 세계에 안부를 해보려고 합니다.
먼저 Go를 설치를 했으니 에디터를 선정해봐야할 것같습니다.
여기선 GO전용 IDE 인 liteIDE를 설치해보겠습니다.
01. 에디터
저는 에디터로 LiteIDE를 씁니다. 모두 프로그래밍과 컴퓨터에 친숙하다는 가정하에 알아서 설치(!)하실 거라 믿습니다. 다운로드 링크 첨부합니다.
다운로드 주소 : http://sourceforge.net/projects/liteide/files/
02. 헬로월드 띄워보기
Go를 하실 정도면 어느정도 컴퓨터를 하신다는 가정하에(이런 제멋대로의 가정;)
에디터를 알아서 설치하셨다고 간주하고.. ㅎㅎㅎ
아참( View - Option 메뉴에서 각종 옵션 변경 가능합니다.
제 화면은 서브라임텍스트처럼 보이게 설정 된 것입니다)
화면 왼쪽 에서 Folder를 활성화시키신 후에 ADD Folder 하셔서 이미 만들어진 폴더를 작업폴더로 만드실 수도 있구요.
그럼 헬로월드를 띄워보겠습니다.소스를 그림처럼 써줘보겠습니다.
package main import ( "fmt" "net/http" ) func main() { fmt.Println("Hello world Board Server") http.HandleFunc("/", handler) http.ListenAndServe(":8000", nil) } func handler(w http.ResponseWriter, r *http.Request) { fmt.Fprintf(w, "Hello I will be a Board. %s", r.URL.Path[1:]) }
소스분석
먼저 import는 생략하구요~
fmt.Println 메시지 출력하는 기능입니다.
http.HandleFunc( 경로, 메서드) : http 패키지의 기능 중 HandleFunc 를 이용하여서 "/" 경로에 handler 를 다루게 합니다.
http.ListenAndServer(포트이름, nil) : 서버를 시작합니다.
handle 메서드 : Go 에서는 http.ResponseWriter 로 응답할 것과, *http.Request로 요청인터페이스(아마?) 받습니다.
그래서 저것은 응답에다가 "hello 어쩌고 하는 문자열을 서주는 것인데요. 뒤에 파라미터는
URL 주소에서 앞에 좀 짜르고 뒤에 부분 보여주는 것입니다.
일단 이렇게 알아두죠. 실행해보면!
그러면 다음과 같이 실행됩니다 ~짜잔
자, 그럼 세계에 안부를 전했으니, 다음 할일은 라우팅입니다.
라우팅으로 가면서 스프링 비슷하게 컨트롤러 폴더를 만들고서 리퀘스트 매핑을 해보겠습니다~ ㅎ