자바 웹 개발 하고 있습니다. 실무에서 lombok 사용하나요?


스프링으로 웹 개발 하고 있습니다.

회사에서는 사수가 주는 코트만 수정중이라...

개인적으로 공부를 하려합니다.

https://github.com/origoni/Spring-Blog

이 코트를 보니 이클립스에서 바로 실행이 안되고 lombok라는 플러그인을 깔아야 하는데요.

이 플러그인이 일반적으로 사용되는 것인가요?

  • 2016년 03월 16일에 작성됨

  • 실무에서 쓰인다 안 쓰인다는 것은 대부분 기술의 문제가 아니라 설득의 문제에 가까운 것 같습니다. 어떤 기술이 쓰일지 말지는 전적으로 그 팀이 결정하는 거에요.    Leonardo YongUk Kim   2016.3.19 13:08     
조회수 655


4 답변


좋아요
2
싫어요
채택취소하기

회사에서 개발 업무에서 사용하는 경우를 본 적은 있습니다. 다 그렇다고는 말을 못하겠네요.

lombok 자체는 getter/setter, toString, equals, hashcode 같은 단순 기계적으로 코드를 생산하는 것을 애노테이션으로 해결하는 기능을 제공합니다. 대체로 속성(멤버 이름)이 자주 바뀌는 경우에 상당히 편리해서 개발할 때 도움이 많이 되긴 합니다. 실제로 lombok이 없다고 프로그램 로직이나 기능에 지장은 없습니다. 다만 해당하는 것을 일일이 직접만드는 수고를 해야겠지요.

기능 자체는 자바 소스를 컴파일할 때 동작하여, 해당 애노테이션에 해당하는 멤버 함수를 자동으로 생성해서 컴파일 결과에 반영되도록 합니다. 다만, 소스 코드를 컴파일할 때에는 필히 lombok이 필요하기 때문에, 같이 개발하는 사람들도 lombok 플러그인을 사용해야 합니다.

이클립스에서 사용하려면 다음과 같이 하시면 됩니다.

  1. Lombok Download 에서 lombok.jar 를 다운로드합니다.
  2. java -jar lombok.jar 로 Installer를 실행합니다.
  3. “Specify Location”을 클릭한 후 플러그인을 설치할 Eclipse의 위치를 선택합니다.
  4. “Install / Update” 를 클릭합니다.
  • 2016년 06월 01일에 수정됨
    리눅스(유닉스) 기반의 시스템에서 웹 서비스를 개발하고 있습니다.
  • 2016년 03월 16일에 작성됨
    리눅스(유닉스) 기반의 시스템에서 웹 서비스를 개발하고 있습니다.

  • 전 실무에서 사용했었고 비생산적인 코드들을 줄이는데 상당히 도움이 되었습니다.    SangMin Choi   2016.3.16 21:30     

Entity 혹은 Domain 정의가 많은 프로젝트에서는 특히 많이들 사용합니다. 저 또한 신규프로젝트 셋팅 단계에서는 대부분 ORM을 도입하고 Domain 셋팅을 먼저 하다 보니 반드시 도입하는 편입니다.

IDE의 Code Generate 기능이 잘 되어 있어 효과가 반감되는 부분이 없진 않지만 라이브러리/플러그인 추가에 부담이 되지 않는 프로젝트라면 그 누구라도 lombok 도입 정도는 제안할 수 있습니다. 간혹 lombok을 싫어하거나 반대하는 개발자를 보기는 했지만, 그들 중에 제대로 된 equals() 나 hashCode() 코드를 작성하는 사람은 거의 못 본거 같네요.



종종 썼습니다. 프로젝트 초기에 멤버 변수가 빈번하게 바뀐다거나 할 경우에는 특히 유용합니다만, 어느정도 시점부터는 리팩토링이나 getter/setter 에 대한 call hierarchy 확인 등에 있어서 불편한 점이 생겨나면서 @EqualsAndHashCode@ToString 정도를 제외하고는 걷어내게 되는 경우가 많았습니다.



세계 50대 혁신적인 핀테크 기업 중의 한군데로 뽑힌 곳에서 사용하는것을 목격했습니다. 실무에서 사용해도 괜찮고, 실무에 쓰는곳도 생각보다 많구요. 자바가 언어적으로 지원하는게 적어서 이런게 나온건데, 다른 언어에는 이미 추가된 기능들이고, 롬복이 해주는것은 내가 수동적으로 해야할 일을 해주는거라서 쓰지 말아야 할 중요한 이유가 있다고 보지 않습니다.

그리고 플러그인은 개발할때만 필요하고 만드신 소프트웨어는 롬복 jar파일을 라이브러리로 넣어주기만 하면 됩니다. 즉, 개발 완료후 배포시에는 다른 라이브러리랑 다를바 없고 똑 같습니다.

  • 2016년 03월 23일에 작성됨
    Scala 개발자 이고 OOP, FP, Web, Library, Framework 개발에 관심이 있으며, 인터넷 방송인 입니다. :) youtube.com/c/KevTVKR

  • 세계 50대 혁신기업이 쓴다고 꼭 좋은것은 아니라고 생각합니다. ^^    Hyunsok Sean Oh   2016.3.24 21:17     

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close