[영문 내용정리] Go를 안드로이드 백엔드 개발에 사용해야 할까?
Alex Lockwood라는 현재 구글 소속 개발자분이 만들 블로그에서 읽은 글을 한글로 번역해 보았다.
원래 내용을 보고자 하시는 분은 아래 링크로
"Use Go to Implement your Android Backends"
http://www.androiddesignpatterns.com/2013/01/gcm-appengine-golang-android-backends.html
여기서 부터 번역..
Go를 안드로이드 백엔드 개발에 사용하기 몇 주전 나는 Go기반 애플리케이션 서버와 구글 클라우드 메시지 서버간 인터렉션을 단순하게 하는 라이브러리를 작성했다. 추후 블로그에 GCM (서버와 애플리케이션 단 모두) 에 대한 얘기를 더 커버할 예정이지만 지금은 더 많은 사람들이 그들의 GCM 애플리케이션 서버를 Go 언어를 사용하도록 라이브러리 링크만 남겨둘 예정이다. 하지만 왜 Go일까? 이 질문에 감사하고 몇 가지 이유가 존재한다. 1. Go는 현대적이다. C, C++, Java는 멀티코어 머신, 네트워킹, 웹 앱 개발 이전에 설계된 오래된 랭귀지다. Go는 웹서버 같은 큰 구글 프로그램을 작성하는데 적합하게 설계되었다. 2. Go는 간결하면서도 친숙하다. Java에서 40줄 이상의 라인을 요구하는 테스크가 단 1~2줄로 완성된다. Go는 단순한 프로그램을 작성하기 위해 요구되는 작업량을 상당하게 감소시키면서도 언어의 문법이 철저하지 않으며 가장 일반적인 절차형 언어를 닮아 있다. 3. Go는 배우기 쉽다. 언어를 하루만에 배울 수 있다. 튜토리얼 사이트 (A Tour of Go 또는 Effective Go) 4.Go는 구글에서 발명되었다. 충분히 말함 :) |
현재로서는 여기까지... 하지만 GCM, 구글 앱 엔진, Golang에 대해 더 많이 보여주겠다고 한다.
그치. 얼마전 GCM 서버가 동작하는 것을 실험하면서 안드로이드 백엔드 서버를 하나 만들어야 겠다는 생각을 하던 중
구글 GCM 공식 홈페이지에서 제공하는 샘플 푸시 앱 서버를 Go로 만들어 놓은 것을 보았다.
사실은 node.js가 제일 간편하지 않을까? 아니면 C로 작성된 게 안정적일까? 다른 사람들은 어떤 것을 사용할까? 고민하고 있던 차에
이 글을 보니 그래 일단 Go로 만들어봐야 겠다는 생각이 든다.
튜토리얼 A Tour of Go에 들어가니 문법을 정말 알기 쉽게 설명하고 있긴 하다. 정말 이걸로 되나? 싶을 정도인데
우선은 시도해보고 후기를 올려 보도록 해야겠다.