달력

12

« 2024/12 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
2011. 9. 10. 09:28

GRails 대한 나의 생각... 공부하는 것/GRails2011. 9. 10. 09:28

내가 RubyOnRails를 처음 알게된 것도 괘 오래전 이었던 것 같다.
2008년 이후로, ROR을 비롯해서, RedRails와 JRuby, Groovy를 개인적인 흥미로 인해서 설치해 보고 사용해 보기도 했지만, 그렇게 오래가지는 않았던 것 같다.

 왜냐하면, 내가 주로 하고 있는 업무는 JAVA 기반의 서비스이다보니, JAVA Virtual Machine위에서 동작해야 하고, 이를 보다 효율적인 측면에서 활용하기 싶었기 때문에, ROR을 직접 이용하기 보다는 다르지만 같은 환경에서 이용해 보고 싶었기 때문이다.

ROR의 쉽고 빠른 개발을 내가 하고 있는 프로젝트에 적용을 한다면, 생산성의 향상과 직관적인 관리를 통해서 보다 효과적이고 효율적으로 프로젝트를 진행할 수 있다고 생각했기 때문이다. (사실은 개발 시간을 줄여서 개발자들이 편해질까하는 순수한 의도와 흥미도 있었다.)
그러나, 개인적인 프로젝트라면 모를까, 팀 프로젝트와 실 운영을 위한 프로젝트 적용에는 많은 어려움들이 수반되고, 안정화와 검증되지 않은 부분에 대한 책임등을 고려할 때, 적용이 쉽지 않았기 때문에 프로젝트에서는 사용하지 못했었다.

GRails를 처음 접하게 된것은 2009년 상반기 였던것 같은데, ROR과 JRuby와 비교하면 굉장히 앞선 무엇이 있다라고 생각하지 않고, 또하나의 메이져는 아니지만, "흥미로운 프로젝트가 또 하나 나왔구나"라는 생각뿐, 큰 감흥은 없었던 프로젝트 였다.

그러가다, SpringSource에서 개발하고 있는 Eclipse기반의 개발툴인 Spring Tool Suite을 사용하다 보니, 
Grails와 Groovy를 쉽게 플러그인으로 설치할 수 있도록 되어 있어서, 설치해서 사용해 보게 되었는데, ROR과 같이 자동으로 Scaffolding해주고, Springframework를 사용할 수 있도록 해주고, groovy 대신에 java를 사용할 수 있다는 것이 마음에 들었다.
 

그리고, 기본 내장되어 있는 in-memory DB인 Hbase와 Tomcat를 통해서 Grails 프로젝트 생성과 동시에, Deploy해서 테스트 할 수 있는 환경이 바로 제공된다는 것이 무척 마음에 들었었다.

단, 새로운 파일들의 생성과 빌드를 위해서 HDD의 I/O가 많아서 불필요한 시간이 든다는 점과, Plug-in간의 
Dependency에 대한 문제가 있어서 인지, 일부 플러그인은 정상적으로 업데이트가 안되곤 했다.
특히, STS를 이용할 경우는 여러가지 편리한 점이 많지만, STS에 대한 Dependency로 인한 Plug-in의 업데이트가 정상적으로 진행되지 않았기 때문에, 문제점 해결에 많은 시간을 보내곤 했다.

그러다가, STS 2.7 버전이 나오면서, 기존에 2.5와 2.6버전에서 가지고 있던 Dependency 문제를 어는 정도 해결해 주었는데, 이직도 Plugin에 대한 Dependency문제가 있다. 특히, Hibernate와 Tomcat은 기본 프로그인으로 설치시 포함되어 있지만, Google App Engine SDK 설치를 위해시, 이들 플로그인들이 정상적으로 제거되지 않는 문제들을 가지고 있고, STS를 종료하고, 수동으로 삭제해주어야 한다.
 

사실, 이는 Grails의 문제가 아니라, STS와 윈도우즈7간의 권한의 취득에 대한 것이므로, 직접적인 책임은 없으나, 제대로된 IDE의 지원은 절실하다.

GRails는 STS의 지원 없이도 사용이 가능하지만, IDE를 이용하는 것은 생산성을 위해서 이기 때문에, 이를 이용하는 것이 사용하지 않는 것보다 이득이 크다.
Ggrils를 통한 개발에서 STS를 이용하지 않는 다는 것은 굉장히 불편한 길을 찾아서 걷는다라는 기분이 든다. 자바 개발에서 사용하던 라이브러리들도 그대로 이용이 가능하므로, 자바로 개발하던 개발자에게는 추가로 개발을 위해서 들여야 하는 학습 시간을 많이 필요로 하지 않기 때문에 이전에 Eclipse를 사용하던 개발자라면, STS를 설치하지 않고, Plug-in 만 설치해서 개발이 가능하다.
하지만, 나는 개인적으로 Eclipse를 설치하는 것보다는 STS를 설치하는 것이 낫다고 생각한다.

올 10월 정도에는 GRails 2.0이 새로 나온다.
여러가지 다양한 Featuer들의 변화가 였보이는데, 어제인가 보니 Grails 2.0 M2버전이 Release 가 되었던 것 같다.
 



 
:
Posted by 행복상자
Spring Tool Suite는 Eclipse기반의 Java 개발 환경 툴로, Spring Framework로 유명한 Spring Source사에서 제작 배포를 하고 있다. STS를 사용하는 이유는 자동화된 환경을 통해서 필수적인 부가 Plug-in의 설치가 쉽고, Grails와 스프링 프레임워크의 구성이 쉽기 때문이다.

최근까지도 Eclipse 3.6 기반의 STS 2.5.2를 설치한 이후로 자동 업그레이트롤 통해서 STS 2.7.1을 사용했는데, Eclipse 3.7기반의 STS 2.7.1을 설치하고, Grails 1.3.7을 설치하기로 하였다.
사실, STS 2.5.0은 Plug-In의 업그레이드 기능에 문제가 있어서, Grails Plug-in들과 번들의 설치가 안되는 이슈가 있었는데, 2.5.2 버전에서는 이러한 문제가 해결되어서 업그레이드를 하거나 다시 설치할 필요성을 느끼지 못했었다.  

간략히 설치 방법과 순서에 대해서 설명을 하면, 
http://www.springsource.com/ 로 웹브라우저를 통해서 이동을 하며 화면 하단에 아래 이미지와 같은 화면이 보일 것이다. 여기서 SpringSoruce Tool Suite를 클릭해 주거나,
직접 브라우저에서 http://www.springsource.com/downloads/sts 로 이동해서 다운을 받아도 된다.

■ Spring Tool Suite 다운로드


이번에 설치할 버전은 Eclipse 3.7 기반으로 구성되어져 있고, STS 2.7.1 버전이다.
다운로드 사이트로 이동하면, 아래와 같은 화면이 나오는데, 운영 환경에 맞추어서 설치를 하면 되다.
(화면에는 표시되지 않았는데, 하단에 다른 버전들오 이동할수 있는 링크가 있다.)
 

■ STS 설치
다운로드해서 압축을 풀고, 원하는 경로에 옮겨높고 JAVA SDK의 경로(PATH)를 설정하면 설치는 마무리된다. (다 알고 있다고 생각하기에 별도 설명은 하지 않는다.)

■ STS 실행
STS를 실행하기 위해서는 "설치경로/springsource/sts-2.7.1.RELEASE/sts.exe"를 실행해주면 된다.

■ Groovy와 Grails 설치
실행후 나타나는 dashboard를 하단을 보면 두개의 tab이 있다. 하나는 dashboard 텝이고 하나는 Extensions이라는 템이다. Extensions 탭은 개발에 필요한 Plug-in 들을 쉽게 설치하도록 도와 준다.

여기서는 Grails, Grails Support 그리고 Groovy Elipse를 설치할 예정이다.
아래와 같이 선택하고 하단 오른쪽에 있는 "Install" 버튼을 눌러서 설치츨 진행하면 된다.


설치한 플러그인들에 대한 설치에 대한 진행 화면이 아래와 같이 나오면, "Next"버튼을 눌러 설치를 진행하면 된다.


설치가 완료되면, STS를 재 시작을 해주어야 한다.

재 시작이 되면, Grails프로젝트를 시작할 수 있을 것이다.




'공부하는 것 > GRails' 카테고리의 다른 글

GRails 2.3 Async 지원과 Servlet 3.0  (0) 2013.03.31
GRails 대한 나의 생각...  (2) 2011.09.10
:
Posted by 행복상자
"시간이 흐른다는 것을" 인지하는 순간부터, 이전의 나와 다르다는 것을 알게된다.
물론 "나는 변하지 않고, 주변의 것들이 이전과는 다르다."라고 말할수는 있지만, 이는 내가 속한 세계의 변화를 인지하지 못하는 것일 것이다.

지금, NOW, 정말로 많은 것들이 빠르게 변화하고 있고, 이러한 변화들을 이전에 제한 적이었던 것들 까지도 바꾸고 있다. 특히 IT기술이라고 하는 것들은, 여러가지 변화를 이끄는 것들 중에서도 가장 두드러 진다. 

범인들은 모르지만, "나만은 이것을 알고 있어" 라고 발빠른 개발자들로부터 수년전부터 회자 되는 기술들과 용어들은 어느덧, 신문과 광고에서 흔하게 보게 된다. 그리고, 그 해의 트랜드를 이끌어가던 기술 용어와 세미나에 주제도 다루어졌던 주제들은 자연스럽게 삶속에 녹여들어가던지, 다른 새로운 용어로 대체되고 있다.

기술의 전환과 습득이 너무나도 자연스럽게 이루어 질수 있었고, 학습 능력과 경헝의 깊이에 따라서 얼마든지 새로운 트랜드를 자신 만의 것으로 바꾸고 변화시길 수 있었다.

이처럼, 얼마전까지만 해도, 최신 IT의 트랜드에 따라서 기술 습득이 가능했었다. 그러나, 지금은 이러한 습득화 학습이 쉽지 않은 시대로 가고 있다. 이전과는 다른 새로운 기술들은 분산화와 대량화라는 측면에서 비용과 안전성에 대해서 방향을 잡고 있는데, 기존 기술들이 성숙기 들어서면서 새로운 기술적인 요구사항이 나오면서 새로운 기술적 트랜드와 요구가 만들어진 것이다.

이전에는 개인이 PC한대면, 자신이 필요한 툴들과 WAS 그리고 DB까지 설치해서 개발이 가능한 시대였으나, 이제는 여러대의 PC로 구성된 분산 환경하에서 개발 요구사항들을 한가지 한가지 끝을 내야 하는 것이다. 그리고, 이러한 환경은 아직 성숙기의 기술들이 아니라, 성장기에 있기 때문에 개발자들이 좀더 세부적인 기능과 구성과 Architecture까지도 들여다 보아야 한다는 말이다.
DBMS와 같이 성숙과 안정화에 들어가 기술들은 영역의 구분이 명확하지만, 이는 그렇지 못하기 때문에 더욱 원하는 만큼의 기술 습득과 성장이 쉽지않고, 새로운 기능을 추가하거나 사용성을 개선하는 것은 이를 이용하는 개발자와 프로젝트의 몫이기 때문에, 신규 적용에 대한 부담을 지고 가야하다. 

그리고, 지금은 분산환경에 대한 하둡, 카산드라, MongoDB, Redis와 같은 기술들을 쓰기 위해서 많은 업체와 기업들이 검토와 연구를 하고 있지만, 성숙기로 접어드면 이러한 기술들도 경쟁 가운데서 몇몇만 살아남게 될 것이 때문에, 많은 주의가 필요하다. 그리고 이들을 적용하기 위해서 규모가 있는 투자가 선행되면 다른 것으로 바꾸기 어렵기 때문에, 결정에 많은 시간과 사전 분석.검토가 필요하다.

한명의 개발자가 일어서기는 점점 어려운 시간으로 접어 들어가고 있다. 
기술의 규모와 성장은 이전과 다른 방향에서 진행되고 왔지만, 이를 적용하는 것은 너무나도 부지부식간에 일어난다. 무엇을 해야할지에 대한 고민도 더 많아지고 있다. 이는 이전에 어셈블러에서 C로 전환되는 것과 같이 큰 변화의 기로에서, 이전 것은 선택할지 아니면, 새로운 것을 선택할지에 대해서 요구되는 것과 유사하다. (물론 어셈블러를 더이상 쓸일이 없다는 말이 아니다.)  

새로운 것들을 알고 적용하는 것은 적지않은 노력과 시간을 요구한다.
작년 이맘때부터 준비하던 것들이 있었는데, 여러가지 이유로 제대로 적용을 하지 못했다. 
하지만, 가야할 길들이기 때문에 다시 하나씩 준비를 시작하려고 한다. 



:
Posted by 행복상자
2011. 7. 30. 09:18

사진없는 독일 출장기 (2) 행복/나의 생각2011. 7. 30. 09:18

작년에 쓰다가 만 들인데...그냥 남기기로 했다.

인천 공항에 독일행 비행기 티켓을 발권을 하고는, 비행기 타는 시간까지 남은 두여시간 동안, 환전도 하고, 로밍 서비스 등록을 했다. 아직도 2G폰을 사용하는 나에게 해외로 출장을 갈때 자동 로밍이 되지 않는 점이 제일 불편한 점이다. 
한동안 연락이 끊어졌던 친구들과 지인들이 예전 전화번호를 잊지않고, 전화를 했을 때에 언제나 처럼 내가 받는다는 장점 빼고는 더 나은 점도 없는데 나는 아직도 고집아닌 고집을 부린다.

비행기를 올라탔다, 여느 때처럼 비행기 출입구에 비치된 여러종의 신문들을 각각 하나씩 챙겨 들고는 복도쪽으로 예약되어 있는 내 자리로 갔다. 비행기는 가운데에 4개의 좌석이 좌우로 3개의 좌석을 갖추고 있었는데, 탐승객은 별로 많아 보이지 않았다. 전체 좌석수의 절반 정도였다.

독일까지는 약 11시간동안 비행을 하게 된다.
비행기에서 틀어 주는 영화들은 화질이 별로 좋지 않았기 때문에, 사실 그 동안 잘 보지 않았는데 그동안 시스템들을 보강을 했는지 제법 깨끗한 영상을 제공하고 있었다. 덕분에 프랑크푸르트 도착까지 영화를 5편이나 섭렵 할 수 있었고, 가져간 노트북과 책은 별 다른 도움이 되지 못했다.

드디어, 프랑크푸르트 공항.
도착 시간은 현지 시간으로 오후 5시경. 프랑크푸르트 공항을 그렇게 붐비거나 복잡하지 않았다.
독일 초행인 나를 챙겨 주겠다고 나온 후배가 차를 가지고 기다리고 있었다. 
차를 호텔까지 데리고 가는데, 많은 눈들로 뒤 덥힌 들판과 도로들이 어둠속에서 희미하게 보였다.
6시가 안된 시간인데도 겨울이라 그런지 한밤처럼 어둠이 가득했다.




'행복 > 나의 생각' 카테고리의 다른 글

하루를 반문하다.  (0) 2011.10.24
변화의 시절의 내가 살아가는 것.  (0) 2011.07.30
사진없는 독일 출장기 (1)  (0) 2011.01.16
벌써 1년이 지났다. 앞으로는...  (2) 2010.10.31
어떤 리더십을 원하는가?  (0) 2009.09.30
:
Posted by 행복상자