Hooney
606
2017-01-11 22:20:23.0 작성 2017-01-11 22:20:54.0 수정됨
36
3710

선임님이 한분오셨는데 대화를 하면서 느낀점입니다.


안녕하세요. 연구소같은 스타트업회사서 개발하고있는 신입니다.

다름이 아니라 이전 선임분이랑 얘기를 많이 해서 SI나 한국 개발실정에 그리고 오키서 간접적으로 듣고왔습니다.(부정적으로)

그리고 오늘 새로 선임분이 오셨는데, sm하고 si하다오셨답니다. 근데 si를 군대쪽 2년 (인터넷도 안되는 상황) 동안하셨답니다.

문제는 저희회사가 맥을 쓰는데 잘 모르셔서 기본환경을 제가 잡아줬습니다. 그리그, 오늘 대화하면서 아이바티스랑 오라클, 스프링 2~3.X만 써보셨다고합니다. 회사환경과 좀 많이 다르시더라구여. 그리고 깃허브를 거의 첨들으신다하더라구여.

뭐. 개발실력은 별개지만, 가장 중요한 차이는 디비를 위주로 개발하고싶은 느낌을 받았습니다. 저흰 여러환경을 고려해서 JPA를 사용하려하는데 아예 받아들일수없는 표정을 지으시더라구여.

여기서 드는 생각이 아이비티스든 마이바티스든 jpa든 뭐든 상관없는데. 왜 자바개발자가 디비로 작업을 그렇게하고싶어하는지 의문이들었습니다. 앞으로 전 어떻게해야할까요. 전 자바를 기반으로 다른 기술로 나아가싶은데 말이죠(디비기술이 아닌).

0
0
  • 댓글 36

  • 나로호당
    512
    2017-01-11 22:36:26.0 작성 2017-01-11 22:38:03.0 수정됨

    그 선임이 공부하기 싫은거죠. Ibatis 나 스프링도 거부하고 스토어드 프로시져에 업무로직넣고

    자바는 껍데기로만 사용ㅎ 이런분입니다 okjsp랑 안맞는분  , 많이 싸우실듯

    Jpa.로 플젝경험쌓고 싶어해야 정상인데 

    그걸 거부하고 싫은 내색을 비추다니 할말 다했네요

    1
  • Hooney
    606
    2017-01-11 22:40:41.0
    아직모르지만, 정확히 말씀하셨네요. 프로시져로 다하고싶어합니다. 전 이부분은 제가 몰라서 일단 검색해서 보기만했네요... 무튼 걱정입니다.
    0
  • 술술
    134
    2017-01-11 22:42:02.0

    개발 프로젝트에 따라 다를 것 같네요. DB 위주로 작업을 하고 싶으신 이유가 명확하다면 상관없는데, 그게 아니라면 이유를 넌지시 여쭤보세요. 비합리적이라고 생각하다면 설득해보고, 그냥 강짜로 아무 이유없이 주장한다면 사장님과 면담을 ^^;

    0
  • Hooney
    606
    2017-01-11 22:44:27.0

    일단 이사님이 디비환경이 바뀔수있다는 말씀을 했습니다. 마리아에서 오라클로 갈수 있고 등등...;

    0
  • 손이시렵다
    1k
    2017-01-11 22:47:53.0

    디비 환경이 바뀔수있다면 더더욱 jpa가 좋지 않을까요..

    하지만 확실히 jpa는 어려운거같아요

    0
  • 나로호당
    512
    2017-01-11 22:48:33.0

    디비 인디펜던트  이니 당연히 jpa 개념들어간 오픈소스 프레임워크 로 해여 하는데  

    0
  • Hooney
    606
    2017-01-11 22:53:55.0

    그부분을 말씀드리긴했는데, 일단 낯설어서 그러신것같기하네요. 전 2년동안 인터넷이 안되는 환경에서 어떠헤하셨는지가 대단하긴합니다...

    0
  • 나로호당
    512
    2017-01-11 23:02:51.0 작성 2017-01-11 23:08:22.0 수정됨

    스마트폰도  안되고, 인터넷연결된 피씨가 한대없는 데서 개발하면  , 퇴근후 회사에서 잘 안풀리는 모듈은 구글링등  스택오버플로우에서 종이에 샘플코드 써가지고 회사출근해서 코딩해야 하는데 

    진짜힘듭니다

    1
  • 오로롱이
    1k
    2017-01-11 23:40:41.0

    근데 공공 플젝만 했으면 거의 전자정부 프레임워크 쓰고 스프링 환경이라 어쩔 수 없어요

    면접 볼 때 회사 업무 관련해서 얘기 안했나요?

    그 선임이 면접 볼 때 환경에 대해서 다 얘기를 듣고도 현재 반응이면 할 말이 없지만 웹 개발자로 들어와 봤더니 전혀 생소한 업무를 하게 된 상황이면 상호간의 대화가 필요합니다.

    누가 옳고 그르다 라고 판단하는 건 아니라고 생각합니다.

    그리고 선임분이 몇년차인지는 모르겠지만 솔직히 과장급이면 JPA건 뭐건 발등에 불 떨어져서 불가피 하게 해야 할 상황이면 몇주만 집중해서 파고들면 다 합니다. (귀찮아서 그렇죠...)

    제가 봤을 땐 우리 회사는 이거 쓰니까 니가 맞춰 이것 보다는 현재 회사가 구축하고 운용하는 환경에 대해서 설명하고 왜 이런 식으로 하고 있는지 차근차근 설명을 해 주고 설득을 잘 한다면 그 선임도 충분히 납득을 하고 작업을 할 듯 합니다.

    0
  • Hooney
    606
    2017-01-12 00:39:18.0 작성 2017-01-12 00:41:46.0 수정됨

    옳고 그른건없죠. 나머지도 또한 그렇게 생각하구요. 다만 아쉬운점은 무엇이 더 좋은지 기준을 세우고 그에맞게 파악해서 선택해야한다는 말을 했는데 좋은 표정은 아니었습니다.

    그리고, 제일 아쉬운게 이사님이 뽑는데. 대기업출신에 박사라 그러신지, 개발지식이 많지 개발에 대해선...... 그렇다고 설계를 할줄아셔서 필요능력자 뽑는 실력이있으신것도 아니라는 점이죠...여기서 연구 빡씨게하고 프로젝트해서 이직하려고합니다. 칼퇴에 다좋지만, 개발자 중심회사로 가고싶네요.

    0
  • 글보며 느낀점.

    신입이 선임을 무시하는 것 같습니다.

    선임이 나중에 들어왔으니 나에게 맞춰라..이런느낌입니다

    선임이 무능력한 사람이 들어와서 그렇겠지만 상당히 조심해야될 부분입니다.

    예전에도 하이버네이트가 좋다 아니다 말이 많았지만 각각 장단점이 있습니다. 

    쿼리 힌트가 괜히 있는게 아닙니다.

    ORM은 정말 단순한데만 사용이 가능할겁니다..

    아직 신입이라 잘 모르겠지만 생산성은 모두가 잘할수있는 환경을 가져가야 높아집니다.

    단순히 개발자적 욕심으로 신기술 사용만을 추구한다면 뒤에 똥은 누가치울까싶네요.

    맥환경은 저도모릅니다만. 궂이 운영체제 개발툴 고집하는것도 아니라고 생각합니다. 그정도는 자기가 편한거 써도 될텐데요. 

    저도 그곳에 들어간다면 조금 인상이 쓰일것 같네요..

    2
  • 나로호당
    512
    2017-01-12 08:03:23.0 작성 2017-01-12 08:07:52.0 수정됨

    디비독립적인 솔루션이면 , 신입말씀 처럼  jpa 로 가야죠.  쿠팡같은 서비스회사 sql이 상당수가 orm 기반에서  작동요 . Orm 기술 성숙도 , 레퍼런스 사이트 많습니다

    1
  • Hooney
    606
    2017-01-12 08:10:09.0 작성 2017-01-12 08:35:18.0 수정됨

    무시하지않았지만 3자가 그렇게 느끼셨다면 어느정도 가능성이있는부분이지요. 그 부분 반성합니다.

    하지만, 오해를 줄이자면 결정된건 없고, 이런 부분이 있어서 뭐가 좋고 타당한지 같이 얘기해야됨을 얘기했습니다.

    미지막으로, 아직 신입으로서 배울게 너무 많아 고민할 시간도 없지만, 말하고 싶은것이 있습니다.
    개인적으로 경력자분을 무시하는게 아니라, 왜 기존 기술로는 똥을 인싼다고(없다고) 생각을 하시는지 모르겠습니다. 사람이 하다보면 불완전한건 당연한지라, 그것을 지속적으로 줄이고 넖은 선택의 폭에서 적합한것을 찾으려고 노력해야 된다고 생각합니다.

    이 말에 동의를 못하신다면 기존 코드(방식으)로 SI 개발할때 만들어 놓은것을 유지보수 하실 분들까지 생각하고 개발하시는지도 묻고싶습니다.

    모두들 좋은 하루 되시길 바랍니다.~ 개발자분들 파이팅.

    0
  • 파람
    394
    2017-01-12 09:07:51.0

    저도 선임편 들고 싶어지는데요 왠지.....

    JPA를 개발 욕심 때문에 도입하는거란 느낌이 들고요, JPA가 편의성 및 생산성을 위해서 하는거지,

    스타트업 회사의 작은 개발건에서 굳이 도입해야 하는지 모르겠고요, 오히려 선임님 말씀처럼

    프로시저로 처리하는게 명확할수 있습니다. 그리고 자바 개발자라고 해서 굳이 프로시저 거르고

    자바 IF ~ ELSE, FOR로 해야한다? 라는 이유도 전혀 모르겠고요, 자바는 그냥 껍데기만 해놓고

    쿼리단에서 전부 프로시저로 처리해도 큰 문제는 없습니다. 물론 DB가 바뀌는 것을 고려한다면,

    자바쪽에 더 로직을 심어주는 것도 나쁘진 않고요.  어차피 자바로 하나 프로시저로 하나, 주석만

    잘 달려있다면 어느쪽이 더 이해하기 쉽다. 어렵다. 이런건 특별히 없고요. 글쓴분께서 본인이 프로시저에

    대해 아직 잘 모르셔서 더 피하고 싶어하시고, 신기술 개발 욕심도 있고, 그러신거 같네요.



    1
  • 파람
    394
    2017-01-12 09:15:11.0 작성 2017-01-12 09:15:48.0 수정됨

    글을 쓰고 나니, 너무 선임분 입장에서 쓴거 같아서 쓰는데, JPA로 해서 더 장점도 있을 수 있습니다.

    문제는 저 선임분이 새로 공부할 생각이 안 드는거 같고, 자기가 뒤쳐지는 영역을 해서, 뭔가 불리한

    입장에서 시작한다는 느낌 때문에 더 그런거 같습니다. 그리고 글쓴 분과 기존 사원분들도

    신기술 도입및 JPA의 장점 및 DB 위주로 하는 것에 대한 생소함 및 관리의 문제점등을 생각하실수도 있고요.

    어쨌든 회사의 규모나 프로젝트및 소스의 규모등에 따라서 다른데, 어쨌든 잘 절충하셔서 해결 방안을

    찾으시길 바랍니다.


    1
  • Hooney
    606
    2017-01-12 09:19:40.0

    좋은 답변 감사합니다.~!!

    좋은 하루 되세요.~


    0
  • 졸리다
    1k
    2017-01-12 09:24:13.0

    Hooney

    당연히 사람들이 많이 사용하는 대중적인 방식으로 개발을 해서 유지보수 할 것 까지 생각하는게 맞는겁니다.

    그게 내가 되었든 다른사람이 되었든 남들도 보고 쉽게 알아차릴수 있는 코드가 보기가 좋고 잘짠 코드인거지
    내가 쓰고싶은 기술 라이브러리 이거저거 다 가져다가 붙여서 퍼포먼스는 좋은데
    남들이 수정하지 못한코드는 그렇게 좋다고 생각들지 않습니다.
    그런건 개인개발할때만 하는거고 회사에 들어갔으면 내가 퇴사를 하더라도 남이 보고 이해할 수 있는 코드를 짜는게 중요한거죠...
    그래서 많은 회사들이 함부로 신기술을 접목시키지 못하는 이유도 그거구요 
    0
  • 더미
    5k
    2017-01-12 09:44:21.0

    이미 정해진 개발환경을 나중에 들어온 선임때문에 바꾼다는건

    스타트업이라고 해도 용인될게 아닌데요.


    그리고 일반적으로 프로시저를 걷어내기 시작한지 꽤 되었습니다..

    0
  • inyl
    1k
    2017-01-12 09:48:38.0

    다른건 몰라도 github를 잘 모른다니.

    학습의 의지가 없는 개발자는 죽은 개발자입니다.

    다른 사람에게 악영향 주기전에 윗선에 얘기해서 정리하는게 어떨까 싶습니다.

    0
  • 노예15년
    111
    2017-01-12 09:50:53.0

    JPA가 무슨 신기술 이라는 건지  EJB 3.0 스펙 발표 할때 본 이후로 어언 10년이 넘었습니다.

    금융 프로젝트에서 사용하면서 말도 많고 탈도 많았습니다.

    지금은 NO SQL DB 나오면서 주목 받는다고 신 기술이고 똥을 안만든다고 생각하시면 오산 입니다.

    오라클은 관계형 데이터 베이스이고 JPA는 관계형 데이터 베이스에서 제약이 많습니다.

    관계형 데이터 베이스는 가격도 비싸지만 그 만큼 안정적이고, 성능이 좋으며 다양한 기능을 제공하는데

    그 기능을 사용 할려면 SQL를 사용해야 합니다.

    데이터 베이스 일괄 작업 시 프로시져 만큼 성능  및 처리 속도 나오는 언어는 없는걸로 압니다.

    남용하면 문제이지만, 적절히 필요에 맞게 사용 하는 건 신 기술이던 구닥다리 코볼이던 상관 없는겁니다.

    선택 폭을 신기술이나 내가 한일로 한정 하는건  좋지 않습니다.


     


    0
  • LichKing
    5k
    2017-01-12 10:13:56.0

    총경력은 짧지만 여튼 SI에도 있어보고 서비스회사에서 있어봤는데요(여긴 지금 재직중).

    함부로 일반화는 하면 안되겠지만 여튼 제 경험상 제가 느낀건 SI에 계신분들이 특히 더 DB 맹신주의가 좀 강하다는 느낌을 많이 받았습니다.

    어떻게든 DB에서 최대한 처리하고 DB에서 하는게 영 아니다싶을때 자바단으로 끌고와서 처리를 하는 경우가 꽤나 있더라고요. 전 이게 싫어서 현재 회사로 옮긴건데..

    뭐가 옳고나쁘고를 떠나서 자기가 이직한 회사의 환경을 못받아들이고있다면...그분은 곧 떠나실거같네요.

    0
  • nusicaa
    2k
    2017-01-12 10:24:45.0 작성 2017-01-12 10:31:02.0 수정됨

    스타트업은  10k connecttions을 만들어 주는 폭발적인 회원증가와 이용을 꿈꿉니다.

    외국에서 10k connecttions을 논하는 것을 보면 가장 먼저 한계에 봉착하는 것이 rdbms입니다.

    또 스케일업할 때 제일 비싼 자원도 rdbms입니다. 오라클,mysql의 클러스터 옵션 가격은 상상을 초월합니다.

    지금 상황에서 오라클을 쓰겠다는 것은 독배를 마시는 겁니다.

    관공서에서 했던 아키텍트을 이곳에 적용하면 나중에 큰일 날 겁니다. 그분 바꾸겠다는 의지나 인식이 없으면  어쩔 수 없죠



    0
  • visualkhh
    2k
    2017-01-12 10:37:21.0
    이글재미있다~


    0
  • sajacaros
    531
    2017-01-12 11:17:52.0

    jpa 쉬어요. 더욱이 자체 솔루션이면 jpa로 가닥을 잡으시는걸 추천합니다.

    싸워서 이기시길...(순하게 말하면 잘 협의 하셔서 jpa로 가닥 잡으시길...)

    0
  • visualkhh
    2k
    2017-01-12 11:51:21.0
    0
  • 서비스지향개발자
    5k
    2017-01-12 12:17:06.0

    본문글과는 이제 상관 없이 가는 것 같습니다.

    위에 신기술 논란에 답변드립니다.

    JPA 명세는 오래되었어도 사용할만한 라이브러리 나온지는 

    조금 오래되었고 버전업 되면서 안정화되고

    알려지기 시작할때 해당 라이브러리를 도입 검토하는 부분을 

    신기술 적용이라 칭했습니다.


    일단 전 신입 개발자분 편들어드립니다. 열심히 하려는 의지가 돋보입니다.

    저도 왠만하면 새로운 기술 적용합니다. 

    하지만 전반적인 상황을 이해하고 결정하길 바래서 반대의견적인 댓글을 달았네요.

    홧팅하세요. 선임은.... ;

    0
  • 풋내기
    720
    2017-01-12 12:44:39.0

    모르는건 모를 수 있다지만 알려고 하지 않는 자세는 개발자로서 도태되기 십상입니다.

    그런 분위기를 느끼신거라면 저도 신입분 편을 들고 싶네요.

    0
  • 조프로
    1k
    2017-01-12 13:06:14.0

    개발자들이 유행에 민감하죠ㅎㅎ 실제 실력과는 무관할 것 같긴 한데..

    0
  • 코로나틱
    26
    2017-01-12 14:27:14.0

    그 선임분은, JPA 나 기타기술에 대해 익숙하지 않으신 것 같군요. 배울 생각도 없고.


    하지만, 저는 SP를 사용하는 기존의 방식도 훌륭하다고 봅니다. JPA가 일단 신기술(?) 이기도 하고, OR/M 을 사용하는것이 요즘의 개발 트렌드이기 때문이죠.

    하지만, 때에따라서는 SP 를 통해 개발해야 하는 경우도 있는데, '무조건 JPA를 사용해야 합니다!' 라고 주장하는경우도 있고, 사람에 따라서는 'JPA를 강요한다' 고 받아들여지는 경우도 있을겁니다.

    요즘 유행하는 여러가지 개발방법론에 대해, 개발방법을 받아들여 사용할 사용자가 제대로 준비되지 않은 상태에서 적용했을 때 벌어지는 일들은 상상을 초월하는 파괴력을 가지고 있습니다.

    정말 개발 프레임웍 하나때문에 회사가 아작나기도 합니다. 싸우고 막.. 어휴.

    제 경우, EF를 사용했었는데, EF로는 도저히 못 만들것같은 로직들 (스택오버플로우가 나는 등)은, 물론 EF를 통해서 작성 할 수도 있겠지만, 차라리 SP를 사용하는게 더 편하더군요.

    프레임워크/컴포넌트가 만능은 아니듯, 경력개발자의 위치에서는 아무리 당연한 이야기라 하더라도 재고하고 재고하게 되어있습니다. 왜냐면, 선임의 책임이니까요.

    JPA를 기피하는 그 개발자분도, JPA 장/단점을 파악하고, 기술의 사용용도를 알게되면 잘 적용하지 않을까 합니다.



    0
  • 스타
    2k
    2017-01-17 19:15:36.0 작성 2017-01-17 19:34:06.0 수정됨

    신중한 입장에서 ORM 개념은 좋으나 개발자 욕심 때문에 생겨 난 기술이라고 생각합니다.

    기술 접근도(조금만 기본을 벗어나도 SQL 학습보다도 학습 곡선이 더 큼) 어렵고,

    성능의 장점(힌트 등의 쿼리 튜닝 한계, 제어 불 가능한 쿼리 비용)도 없고,

    심플함(jpa, query dsl 등 함께 써야 함)도 없고,

    쿼리 검증(db 서버의 리소스 비용이 비싼데 비해 쿼리가 눈에 보이지 않음, SQL문은 실행 로그로 확인해야 하기 때문에 동적 쿼리는 다양한 케이스를 다 동작시켜 봐야 함, 소스에서 쿼리만 뽑아 내는 플러그인이 있을까요? 기술적으로 가능할지 모르겠으나 이것만 되더라도 긍정적 검토 가능)도 어렵고,

    단점이 너무 많은데, 개발자가 입장에서 백그라운드에서 처리되는 db 사용에 대한 비용은 모르겠고 나만 좋으면 된다라는 느낌을 받았습니다.

    물론 잘 사용하면 된다고 하는데 잘 쓰는 사람이 팀 내에서도 정말 드물게 있거나 없습니다. 거기에 반해 쿼리 기반으로 했을 경우는 누구나 아는 만큼 쓸 수 있고 DBA 검증이 쉬웠다는 것입니다.

    제게 감동을 준 것은 쿼리 유효성 검사가 컴파일 시점에 가능하다는 점과 crud만 있는 서비스는 정말 편하더라는 것(하지만 id 생성 시점 등을 모르면 안됨)입니다.

    ORM이 매력적이고 이상적인 컨셉이라는 부분에는 동의하지만, 현실적으로 왜 다들 JPA에 열광 하는지 모르겠습니다.

    0
  • 스타
    2k
    2017-01-17 19:27:06.0

    기술 배울 때 책보다 여기가 더 괜찮았습니다.

    http://www.slideshare.net/mobile/zipkyh

    0
  • byeworld
    2k
    2017-01-17 19:33:08.0

    기본적으로 회사의 채용시스템이나 채용을 결정한 사람들의 판단을 반박하는 것으로 보여

    상당히 안좋게 보입니다. 

    당연히 채용과정에서 경력자들이 어떤 것을 해봤고, 어떤식으로 했는지 물어보는 것은 기본입니다.

    필요하지 않은 사람을 뽑진 않습니다.

    새로 온 선임이 안 배우려 든다는 식으로 썼는데,

    자신과 생각이 다르다 하더라도 편견을 갖고 경솔하게 쓴 글로 보입니다.

    필요하고 좋은 기술이면 배우겠죠. 


     

    0
  • 스타
    2k
    2017-01-17 19:47:02.0

    추가로 git도 이야기 드리면

    버전 관리는 5~6개 사용했지만 저도 최근에 git을 제대로 접할 기회가 있어서 윗 댓글 다신 분의 말 대로라면 겨우 구닥다리 면했네요..

    여하튼 git은 가능하다면 무조건 배워야 합니다. git은 단순히 버전관리 기술이 아닌 개발 소스 관리 문화라고 생각합니다. 하지만 혼자 배우기엔 이것도 쉽지만은 않은 것 같아요.

    0
  • 아만다
    532
    2017-01-18 16:14:16.0 작성 2017-01-18 16:15:15.0 수정됨

    jpa는 잘알고 써야 득이 되고 어중간하게 알고 쓰면 안쓰는 것만 못합니다..

    신기술이라고 다 좋은 것도 아니고, 그리고 혼자 하시는것도 아니고 여러사람들이랑 같이하면 공통환경 잡고 시작하면 알아서 따라올텐데 그런 부분까지는 걱정할필요는 없다고 봅니다. 그리고 자신과 생각이 다르다는 이유로 남을 비판하는 성격은 참으로 잘못된 생각을 가지고 있는 것 같네요. 그리고 너무 의욕만 앞서신거 같아서 한말씀드리자면, 많은 것을 해본다고 좋은게 아니라. 하나를 알아도 정확하게 아는게 중요합니다. 

    그리고 디비 기술을 무시하시는 경향도 고치셔야할듯 합니다.. 

    0
  • otwm
    1k
    2017-01-18 20:46:24.0

    그냥 이야기 하자면 

    jpa  >> 좋와요. 결론 부터 이야기 하면 좋은 거고 버전도 상당히 올라가서 안정화 되어 있고, 몰라서 잘 못쓰는 건 있을 수 있지만 일단은 좋와요. 근데 mybatis 대비 3배 이상의 러닝 사이클을 가집니다.

    자바는 그냥 껍데기고 주요 로직은 프로시져로... >> 이건 좀 만이 잘못된거 같네요. 메인은 어플리케이션이고 저장소는 그에 비하면 도구일 뿐이죠. 이건 너무 올드합니다.

    관계형 데이터베이스 >> 누가 뭐라 할지라도 관계형 디비는 매우 견고합니다. 또한 jpa를 쓰더라도 이걸 블랙박스 취급하는 건 좀 안이합니다. 하지만, 최근들어 관계형 디비는 아니지만, 다양한 저장소 기술이 발전하였습니다. 데이터는 = 관계형 은 아닌 거 같습니다. ( 그러나 이제 저에게도 관계형 디비는 흥미를 잃은 떡밥이네요. )

    신기술 >> 개발자라면 당연히 수많은 기술들을 검토해야합니다. 신기술은 말그대로 신기술로서 이전의 기술의 단점을 보완하는 것들이 대부분입니다. 열심히 공부해서 써야죠. 


    글쓴이에게 ... 두고 보면 아시지 않을까요? 좋은 결과든 나쁜 결과든 현재로서는 할 수 있는게 없는거 아닌가요?


    0
  • otwm
    1k
    2017-01-18 21:09:04.0

    @스타 그냥 또 제 생각만 이야기 하자면 

    러닝 사이클이 크다는 건 사실 맞는 이야기고 , 성능에 관해서는 동일한 쿼리로 보았을 때, 떨어지는 것이 맞기는 하나, fetch type과 쿼리를 한번에 로드 할 건지 말 건지에 대한 조정이라고 보여집니다. 그러나 jpa 에 유리한 점이 있다면, 캐쉬로 성능을 올릴 수 있는 포인트가 있습니다. 힌트도 사용가능한 걸로는 알고있지만( 확실치 않음) 코스트 베이스로 넘어가면서 실제로 힌트는 거의 사용하지 않네요. 어쨋든 실제로 jpa가 더 높은 성능을 낼 때도 있지만, 대체적으로 직접 쿼리하는 만큼의 성능을 쥐어짤 수는 없겠죠. 하지만, jpa에서는 성능은 조금 포기하고 부족한 부분은 캐시로 충당한다는 마인드 인것 같습니다. 쿼리가 생각하지 못하는 방식으로 만들어 지지 않는 다는 단점이 있지만, 패턴은 비슷하고 사실 좀 이해하면 어느정도 추측 되지 않나 합니다. 

    제가 사용하면서 느꼇던 단점은 사실 이거 보다 다른 이유로도 많이 있습니다. jpa에 대해서 까자고 한다면 정말 많이 이야기 할 수 있을 거 같긴한데, 

    어쨋든 좋왔던 점은, 상황에 따라서 다르나 일단 설계 변경에 대해 큰 충격이 없고, 소스코드가 깔끔해지며( 역시 상황에 따라), 스키마 생성이나 테스트 코드에서도 괜찮았던거 같고, 스프링 데이터의 경우 관계형 뿐만 아니라 일라스틱 서치, 몽고 디비 .. 기타 등등 거의 대부분 지원하기도 하고요. 일단 스프링 데이터로 넘어가면 강력한 기능 지원들이 꽤 있고, 뭐 암튼 단점 만큼이나 장점도 많이 있습니다.

    마이바티스도 오래도록 써와서 경험상 보면 마이바티스도 잘 쓰지 못하는 사람들은 잘모릅니다. 

    러닝에 대한 부분이 커버 된다면 선택하지 말아야 하는 상황은 그렇게 없는 거 같습니다. 사이트가 온통 복잡한 통계 화면만이 존재한다?면 모르겠으나, ...

    아무튼 결론은 관계형 데이터베이스와 자바를 쓴다는 가정이면 다시는 마이바티스로 돌아가고 싶지는 않네요.





    0
  • 로그인을 하시면 댓글을 등록할 수 있습니다.