Eclipse Plug-in 학습 방법...

Posted 2009.01.02 02:01

이클립스 플러그인 개발을 시도해 보았는가? 좌절해 보았는가?

 Eclipse Plug-in 개발을 학습하기란 그리 쉽지 않다. (오해는 말길 바란다. 개발이 아니라 학습이 어렵다는 말이다.) 사실 Eclipse Plug-in 개발은 알아야 할 내용은 많은 편이지만, 정작 난이도는 알고 나면, 그렇게 높지 않다는 것이 현재 결론이다. 그럼에도 불구하고 Plug-in 개발을 배우는데 적잖은 고생을 했고, 지금도 하고 있다.

 일부 국내의 플러그인 관련서들이 독자를 고려하지 않은 번역 혹은 어지러운 내용 전개로 머리를 어지럽히고, 이 중 몇몇은 오타까지 남발하고 있다. 본인도 아직 플러그인 개발의 초급 단계라 생각하지만, 어쨌건 한 번 고생을 한 사람으로서, 플러그인 학습을 시작하는 사람들이 고생을 조금이라도 덜 하길 바라는 마음에서 "플러그 인 학습 로드맵"에 대한 개인적인 의견을 적어보게 되었다.

 본 학습 로드맵을 참고하는데 다음과 같은 주의 사항이 있다.

  • 필자는 학습 시 이해를 중시하는 스타일이다. 예를 들어, 예제를 작성할 때 "일단 해보세요. 이 중 일부는 저기 뒤에 챕터에 나와요"라는 스타일의 가이드는 본인에겐 매우 답답하다. 따라서 다른 스타일의 사람들에겐 RCP/Plug-in을 무조건 만들어 보고 따라하는게 더 좋을 수도 있다.
  • SWT JFace 부터 시작한다는 개념의 이 학습 로드맵은 전체적인 소요시간 면에서 더 비용이 많이 드는 방법이라 할 수 있다. 이해도와 학습 시간의 trade-off 관계를 생각하면 된다.
  • 상세한 정보는 계속 업데이트가 될 예정이다. 큰 흐름은 변하지 않겠지만, 사이트나 책을 검증하는 데로 업데이트 할 것이다.

 그럼 본격적으로 로드맵을 살펴보자. 우선, 이클립스 플러그인 개발은 하나의 기술로 이루어지지 않는다는 것을 이해해야 한다. 이클립스로 플러그인을 만들면 알게 모르게 SWT, JFace, OSGi(Equinox)를 기본으로 사용하게 되며, 이를 기반으로 이클립스에서 제공하는 plugin 혹은 rcp 관련 개발 프레임워크를 사용하게 된다. 이를 모르고 플러그인 관련 책/웹 사이트가 제시하는 예제를 무작정 따라서 학습한다면, 범벅이 되어 제시되는 여러 기술이 정리가 되지 않아 머리가 매우 어지럽게 된다.

 따라서, 각각의 기술을 단계별로 이해하는 것이 중요하다. 다음과 같은 흐름을 제시한다.

 국내의 몇몇 서적이나 Eclipse 도움말의 챕터 순서는 이와는 사뭇다르다. 그 순서도 나름의 의미가 있다. 그렇지만, 이렇게 기반이 되는 기술 순서로 학습하면 지금 작성하는 코드가 어디에서 나왔는지를 알 수 있음은 물론, 플러그인의 내부까지도 상상할 수 있게 된다. JFace는 SWT를 상위레벨로 재포장하고 있으며, 플러그인 개발은 다시 SWT/JFace와 OSGi 번들의 개념을 재포장하고 있다. 위의 로드맵을 따라가면 어떻게 재포장 되는지를 느끼게 되며, 이는 학습에 상당한 도움을 준다. 물론 앞서 제시했듯이, 시간은 더 많이 걸린다. 그러나 이것도 상대적인 개념으로, 배경과 구조를 이해하고 학습하느냐 마느냐의 학습량 차이에서 비롯된다고 본다.

 또 중요한 한가지는 플러그인 개발 이전 단계에 있는 SWT, JFace, OSGi 를 철저하게 외우고 있어야 하는 것은 아니라는 점이다. 전체를 가볍게 한번 보고 플러그인/RCP개발 시 "이런 뭐시기가 있었는데..." 하면서 참고했던 자료를 다시 보면된다.

 이하는 각 단계에 대한 간략한 설명이다. 사이트나 서적에 대한 정보는 계속 업데이트 할 예정이다.

SWT 사이트 http://www.eclipse.org/swt/examples.php
서적 오타가 좀 있지만, SWT를 맛보기에는 좋다.
JFace 사이트 Creating JFace Wizards(Eclipse Corner Articles) - http://www.eclipse.org/articles/article.php?file=Article-JFaceWizards/index.html
서적
OSGi 사이트 http://xguru.net/blog/451.html (Getting Started With OSGi를 번역함) 필수적인 것은 아니지만, 이클립스 플러그인 자체가 OSGi 번들이므로 개념을 대강만 알아도 플러그인에 대한 이해가 깊어진다. 다음을 참고한다.
플러그인 개발 관련 사이트

Eclipse Corner Articles - http://www.eclipse.org/articles/index.php (광범위한 101개의 글)
Observe Eclipse(일본, 추천)- http://www13.plala.or.jp/observe/index.html(단계별 정리가잘 되어있음)
Observe Eclipse의 네이버 번역 링크 - http://j2k.naver.com/j2k_frame.php/korean/www13.plala.or.jp/observe/index.html#pde

서적
RCP 관련 사이트 RCP Quick Start - http://rcpquickstart.com/
Eclipse Tips - http://blog.eclipse-tips.com/ (SWT/JFace ~ RCP)
영문 developerWorks -
http://www.ibm.com/developerworks/ (SWT/JFace ~ RCP)
서적


ps. 다른 좋은 학습 방법에 대한 아이디어가 있던가, 좋은 학습 컨텐츠를 발견한다면, 알려주면 감사하겠다.
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
« PREV : 1 : ··· : 30 : 31 : 32 : 33 : 34 : 35 : 36 : 37 : 38 : ··· : 87 : NEXT »

티스토리 툴바