거짓말사냥꾼
552
2019-10-06 12:13:04
13
1228

라이브러리를 사용한다는 것이 요령을 부린다고 보여질 수도 있나요?


안녕하세요. 신입으로 들어와서 안드로이드 프로젝트를 하고 있는데요.

이번에 추가하게 될 기능은 C#의  WPF로 만들어진 회사의 솔루션이 있는데

거기서 어떤 버튼을 누르게 되면 FCM을 통해 안드로이드 앱에 푸시 메세지가 들어가게 하는 것입니다.

제가 C#은 학교 수업용으로 다루어봤을 뿐입니다. 버튼 이벤트만 작성하면 된다고 생각해서 크게 어렵다고 생각 하지는 않고 있는데요.

아무래도 안드로이드를 많이 하다보니 Okhttp같은 http 라이브러리나 GSON 혹은 Jackson 같은 json 파싱하는 라이브러리를 많이 사용해서 c#에서도 비슷한 기능을 하는 라이브러리를 찾아서 적용을 하려고 하고 있습니다.

현재 wpf 프로젝트는 http통신과 Json 파싱 같은 건 사용한 적이 없어서, 회사에서도 제가 하고 싶은대로 하면 된다고 했는데요.

그래서 닷넷에서 많이 쓴다는 RestSharp과 Newtonsoft.Json을 찾아서 소스를 작성 중인데..

나중에 wpf를 담당했던 분이 저한테 와서 신입이 벌써부터 라이브러리 찾아서 요령을 피우는 것은 좋지 않다고 하네요.

뭔가 황당하기는 했는데... 신입이다보니 제가 잘못했을 수도 있어서 그냥 가만히 있었습니다.

공부하는 입장에서는 닷넷에서 기본적으로 제공하는 모듈을 이용해서 사용할 수도 있었겠지만..

제가 닷넷을 전문적으로 하는 개발자도 아니고, 단지 필요한 부분에 이벤트만 작성하면 되서 빠르고 간편하게 만들 방법을 찾은거 뿐인데.. 크게 잘못한 것인지 궁금합니다.

1
0
  • 댓글 13

  • pooq
    3k
    2019-10-06 12:33:42

    WPF 담당하는 사람은 왠만한 라이브러리쯤은 직접 다 만들어서 사용하나보네요? ㅎㅎㅎ

    잘 만든 오픈소스 냅두고(못 믿고) 직접 만들어 사용하려고하는 사람이 더 무식한거 아닌가요? ㅎㅎㅎ

    개발 기간 단축 및 추후 A/S할때를 위해서라도 오픈소스를 사용하는게 당연한거죠.

    1
  • seize the day
    328
    2019-10-06 12:34:26

    그냥 꼰대식 마인드라 그런거 아닌가요?

    라이브러리를 사용한다는게 프로그래밍적 문제가 있어서 지적을 한 것도 아니고

    '요령을 피운다' 라고 지적을 한건데 

    무슨 군대에서 이등병한테 '야 니가 그런거 할 짬이냐?' 라고 물어보는 것도 아니고 ㅋㅋ

    4
  • defult
    2k
    2019-10-06 12:41:11 작성 2019-10-06 12:45:30 수정됨

    실제 제품만드는경우 c#자체인지 외부인지에 달렸습니다.

    msdn등재된 c#자체라이브러리는 아무문제없고 태클이 안들어오는게 정상이고

    외부라이브러리 사용시에는 각각의 라이브러리별로 라이센스규약이 있는데 상업용프로그램에대한 라이센스규약 제재로 검토안하고 사용했다가 큰일날수 있으므로 외부 라이브러리사용시에는 타당성검토 및 보고후 사용해야하죠.


    일단 “ 신입이 벌써부터 라이브러리 찾아서 요령을 피우는 것은 좋지 않다”이런말하는 선임도 별로 좋은선임은 아닙니다.

    일단 사용사용하면 안되는경우는 제대로된 이유명기가 필요한데 그게 신입이 요령피유기 위한거다는 절대 정상적인 사유가 아닙니다.

    1
  • black_p
    93
    2019-10-06 12:42:10

    라이브러리 사용 이유가 시간 단축 말고도 검증이 되서 사용하는게 아닌가요?

    신입 한테 오히려 작성해서 쓰라는게 더 불안하지 않나...?

    1
  • DizY
    167
    2019-10-06 14:17:42

    검증된 라이브러리를 사용한다면 라이브러리를 쓰는게 훨씬 낫다고 생각합니다.

    주니어가 짠 코드가 어디까지 검증되었는지도 모르는데 직접 짠 코드를 쓴다는게 오히려 더 위험할 수 있죠. ㅎㅎ

    2
  • Fleet
    82
    2019-10-06 15:05:29

    그 담당자분은 다른 의미인듯

    신입사원이 자기가 생각지도 못한 기발한 라이브러리나 오픈소스를 혼자 활용해서 개발하니

    그 담당자의 자격지심과 본인의 무능함을 인정하지 않으려고 님께 그런 캐소리를 했을 가능성이 매우 큽니다


    1
  • 방가방가2
    1k
    2019-10-06 15:49:10 작성 2019-10-06 15:49:45 수정됨

    오픈소스 라이센스 때문일 수 있습니다. GPL과 같은 (회사 입장에서 이익극대화를 방해하는 성가신) 라이센스에 걸리면, 모든 소스코드를 공개해야 할 수도 있습니다. 이런 문제 때문에, 오픈소스로 이미 개발된 것이 있음에도 아예 참조하지 않고 새로 개발하기도 합니다. 

    1
  • 거짓말사냥꾼
    552
    2019-10-06 16:39:59

    pooq seize the day defult black_p DizY Fleet 방가방가2

    그냥 넋두리로 쓴 글인데 답글을 많이 주셨네요 ㅎㄷㄷ. 라이선스 확인은 저도 생각지 못한 부분입니다. 이 점에서는 반성을 해야 되네요 ㅜㅜ 

    각각의 라이브러리가 아파치,MIT 라이선스를 가지고 있는 것으로 확인했습니다. 라이센스 내용은 좀 더 자세하게 검색을 해봐야 할 것같습니다.

    라이브러리 사용으로 크게 충돌이 있지는 않았습니다. 저도 코드 막 작성하다가 문득.. 함부로 외부 라이브러리를 넣어도 되는건가... 라는 생각이 들어서 담당분께 문의를 드렸는데 그런 얘기를 들었네요 ㅎㅎ

    제가 글을 올린건, 담당에게 그런 얘기를 듣고나니, 잘 만들어져서 생산성이 높아지는 라이브러리 사용이 개발자로서의 성장에 문제가 될까? 라는 의문이 갑자기 들어서였습니다. 답글 감사합니다.!


    2
  • 제타건담
    6k
    2019-10-06 16:41:12

    검증된 라이브러리나 라이센스 문제라면..
    라이브러리에 대해 충분히 알아보고 진행하는거냐..또는 라이센스 관계는 어떻게 되냐..하고 묻지..

    요령을 피운다고 말하진 않자너요..

    선임이 돌+아이..네요..

    글치만 그렇다고 선입견을 갖지는 마시구요..

    이런 케이스 하나만 가지고 사람 전부를 단정 짓지는 마시고..

    좀더 지켜보시는게 좋을듯 하네요..

    1
  • zepinos
    19k
    2019-10-06 19:19:09

    일본이 아니고서야...


    (일본은 좀 요상한 마인드가 있어서요)

    1
  • ZETT
    797
    2019-10-06 20:54:26

    이상한 선임이네요...

    적당히 맞춰주다가 나중에 실력 쌓이면 적당히 무시하세요;;;


    1
  • 저스트쿠카롱
    62
    2019-10-07 04:40:21
    글쎄요 제 생각은 다릅니다. 오픈소스의 장점만 이야기하시는데 제 전임자가 오픈소스로 떡칠해놔서 나중에 수정할때 죽는줄 알았습니다. 오픈소스는 쓰려면 조건이 "아주아주아주 검증된" 오픈소스여야만 사용해야 한다고 생각합니다. 개인적으로 부트스트랩, jQuery, OKHttp등의 검증된 라이브러리는 쓰는게 좋습니다. 그런데 그게 아니라면 나중에 성능 튜닝도 힘들고 커스터마이징도 힘듭니다. 그리고 만드시는게 ui관련된거라면 더더욱 안쓰는게 좋다고 생각합니다. 신입이라서 요령부린다는 직장 상사분은 좀 잘못된거 같지만 그렇다고해서 무작정 오픈소스를 사용하는건 아니라고 생각합니다.
    1
  • CyanGlint
    570
    2019-10-07 13:19:13

    라이브러리 남용이 유지보수 측면에서 생산성을 오히려 저하시킬수도 있다는 문제는

    저도 어느정도 동의합니다.


    앞으로 해당 코드를 만지는 모든 인원이 해당 오픈소스 라이브러리를 사용할 줄 알아야 한다는

    얘기가 되니까요.


    순서를 따지자면 기본 구현을 먼저 알아보고

    구현체가 복잡해질 것 같으면 라이브러리를 알아보는게 맞다고 생각합니다.


    그런데 Newtonsoft.Json쯤 되면 ASP.NET MVC 프로젝트 생성하면 기본으로 딸려올 정도로 

    .NET 계열에선 폭넓게 사용하는 라이브러리라서...

    .NET에서 json 다루는법 구글링 해 봤자 기본 구현 자체가 안 나올겁니다. 

    이걸 가지고 뭐라 하는건 닷넷에서 json 다뤄본적이 없던지 

    오픈소스랑 아예 담쌓고 살았던지 둘중 하나인데 어느쪽이든 썩 유쾌하진 않겠군요.


    뭐 어쨋든 제 생각으로는, Newtonsoft.Json는 사용하는 것이 맞고

    RestSharp은 1회용으로는 조금 과했다고 생각이 드는군요.

    WebClient로 구현해도 큰 차이 없었을겁니다.

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