필로매스
52
2021-09-17 10:48:33 작성 2021-09-17 11:19:59 수정됨
12
753

선배님들, 기술에 대한 이해(라이브러리/패키지)를 어디까지 해야 하는지 궁금합니다.


안녕하세요 선배님들!


언어, 라이브러리 및 패키지를 배울 때 어디까지 이해를 해야 하는지 궁금합니다. 


강의를 듣고 있는데, 강사님이 "여기 왜 중괄호를 쓰는지 이해하려고 하지 마세요. 여기 왜 이게 있어야 하는지 이해 하려고 하지 마세요. 현업에 있는 사람들도 다 이해 못해요. 구글에 검색해서 복사해서 다 써요." 라고 하며 가르치는데, 자꾸 듣다보니 "이게 인터넷에서 말로만 듣던 코딩몽키인가?" 하는 걱정이 됩니다. 


현업 종사자 분들, 라이브러리나 패키지 쓸 때 기술의 이해를 어디까지 하시는지 궁금합니다. 공식 docs를 읽자니 양이 엄청 방대하고, 이걸 다 읽는게 효율적인 공부가 맞는지 궁금합니다. 


언어는 책을 읽고, 철학을 이해하는 게 맞는 것 같은데, flask, beautifulsoup, jquery, ajax등은 어디까지 이해를 하고, 어디까지 그냥 복붙하는지 아직 감이 잘 안 잡힙니다. 

글 읽어주셔서 감사합니다 선배님들.  

1
  • 댓글 12

  • 안전라이딩
    1k
    2021-09-17 10:53:46

    일단 코딩몽키라도 되고 의문이 드는 부분들 파고들어도 됩니다.

  • ruinnel
    540
    2021-09-17 11:03:03 작성 2021-09-17 11:10:30 수정됨

    블럭 쌓기 처럼 생각하시면 됩니다.

    근데 블럭이 여러개 모여서 창문, 벽, 지붕, 문이 만들어져 있으면? 

    그냥 벽에 창문 붙이고 문달고 지붕 올리면 집이 되겠죠?

    이렇게 미리 만들어 모듈(창문, 벽, 지붕, 문)이 있는데 당장 집짓는데 창문, 벽, 지붕, 문이 어떤어떤 블럭을 어떻게 쌓아서 만들어져 있는지는 당장은 몰라도 일단 집을 짓는데는 지장이 없습니다.

    모듈간의 접합부분(라이브러리의 인터페이스랄까요?)이 어떻게 서로 연결되는지 정도만 알면 됩니다.


    그러니까 처음에 만들때는 모듈의 세부사항은 신경쓰지 않으셔도 됩니다.

    근데 나중에 음.. 문 모양이 맘에 안드네 바꿔볼까? 벽도 디자인이 맘에 안드네 바꿔볼까? 하다보면....

    그때 하나씩 파보셔도 충분합니다.


  • Mambo
    6k
    2021-09-17 11:06:20 작성 2021-09-17 11:07:01 수정됨

    "현업에 있는 사람들도 몰라요" ???

    헷갈리는 부분에 대해서 문서를 찾아보지 단순히 복사 붙여넣기 하진 않습니다...

  • defult
    13k
    2021-09-17 11:10:23 작성 2021-09-17 11:11:18 수정됨
    라이브러리로 가져다쓰는내용의 세부 동작내용은 추구하지는 않아도 

    무엇을 넣는가와 거기서 뭐가나오는지는 공식문서를 보고 이해하고 써야하는게 현엽입니다.

    방대한 문서속에서 자신에게 필요한 내용만을 취사선택하는거지
    누군가가 이렇게 쓰라고해서 내용생각 안하고 가져다 쓰면 안됩니다.
  • 필로매스
    52
    2021-09-17 11:28:30

    답변 감사합니다 선배님들!


    @안전라이딩 - 역시... 그럴 것 같았습니다! 답변 감사합니다!


    @ruinnel - 비유가 쏙 이해 됩니다! 제가 조급한 마음이 들었는 것 같네요.. 감사합니다!


    @Mambo - 그렇죠? 역시... 답변 감사합니다!


    @defult - 공식문서, 취사선택. 알겠습니다! 감사합니다!



  • 장독깨기
    3k
    2021-09-17 11:29:15

    현업도 모르니 이해하려고 하지마라? ㅎㅎ

    도대체 프로그래머란 직종이 뭐라 생각하는지 모르겠네요.

    현업이 단일 인격체도 아니고 그런 사람 아닌 사람 당연히 다 있습니다.

    뭐가 될지는 스스로 정하는 거죠.

    프레임웍, 라이브러리 등 공식 문서 전체를 다 볼 필요 없습니다. 그걸 어느 세월에 다 보나요. ㅋ

    필요한 부분 찾아 읽어보고 이해하고 적용하고 잘 안되면 더 상세히 읽어보고 다시 적용해보고 하는거죠.

    가급적 동작원리와 그 이유를 이해하는게 실력 향상에 도움이 될 겁니다.

  • 0sfilm
    3
    2021-09-17 12:20:07

    문맥상 파악하기로는 6개월 국비교육과정이나, 그런 단기집중교육 같은 것을 들으시는 것 같은데요.


    맞다고 할 수는 없지만, 그런 교육 특성상 그런 심도있는 설명까지 부가하면서 교육을 해나가기에는


    커리큘럼상 정해진 스케줄이있어서 불가능하다고 보는게 맞을 것 같아요. 사용할 수 있는 수준의 이해를


    목적으로 가르치고 실제 그것을 사용할 때 생기는 의문에 대해서는 그때그때  실제 사용할 때 공부하는 것이 맞다고 생각돼요.

  • yeori
    2k
    2021-09-17 12:26:19

    우리가 자판기에 돈 넣고 음료수 고르면 음료수가 나오겠죠? 반환 버튼을 누르면 잔돈이 나올 수도 있고...

    이 과정에서 자판기 내부가 어떻게 생겼는지, 잔돈은 어떻게 나오는지는 굳이 알 필요가 없습니다. 그 절차만 숙지하면 됩니다.

    그 강사가 좀 오바한거같긴한데 진짜 말하고 싶었던 건 "너무 깊이 들어가지 말라"는게 아닐까 싶습니다.

    경력이 쌓이면 외부 라이브러리를 까서 들여다봐야 할 일이 생기기도 합니다. 그런데 지금은 배우는 입장이기때문에 그렇게 깊게 들여다 볼 필요가 없기도 하고, 그것 말고도 알아아 할게 많다보니 "시간을 아끼기 위해서" 그렇게 말한거 같네요.

    * 당장 몰라도 되는 것들

    * 반드시 알아둬야 하는 것들

    이 둘을 잘 구분해야합니다.

    많아봤자 6개월인데 이 짧은 시간에 당장 몰라도 되는걸 붙들고 시간을 낭비하거나 꼭 알아둬야 할 내용을 모른다거나... 이런 경우를 많이 봤습니다.

  • fender
    23k
    2021-09-17 12:36:29 작성 2021-09-17 12:38:41 수정됨

    전 아무리 단기 취업 과정이라도 강사라는 직을 가진 사람이 저런 식으로 입문 단계 개발자를 가르치는 것이 좀 화가 납니다.

    비전공으로 개발 입문하는 분들 수준은 거기서 거기지만 어떤 공부 방법을 택하고 어떤 개발 습관을 들이는지에 따라 2-3년 후 실력은 상당히 벌어질 수 있습니다.

    그리고 일정 압박이 있는 실무 프로젝트도 아니고 공부를 하려고 배우는 단계에서 조차 이유는 알 필요 없고 그냥 남이 만든 걸 짜깁기 해서 돌아가면 장땡이라는 식으로 배우면, 아마 몇 년이 지나도 실력은 반복 숙달한 패턴 짜깁기 하는 수준 이상 발전이 없을 겁니다.

    백 번 양보해서 수강생들이 버거워 할까봐 속도 조절을 했다 쳐도 그건 "이건 나중에 다시 설명하겠습니다"나 "이 부분은 시간 날 때 따로 공부해보세요"가 되어야지 "이건 알려고 하지 마세요, 어차피 현업도 모르고 씁니다"라고 하는 건 아마 강사 자신이 그 수준 이상 개발을 해본 경험이 없으니 남들도 다 그럴 것이라고 넘겨 짚은 결과가 아닐까 싶습니다.

  • 잉랑동딩
    94
    2021-09-17 12:40:13

    어느정도 문서 읽어보고 사용할지말지 다른 라이브러리랑 비교도 해보고 사용하면서 거슬리거나 부족한부분 있으면 수정도해보고 고쳐서 pr도하는 식으로 쓰는거같습니다.

  • 답정너심판자
    2k
    2021-09-17 16:42:52 작성 2021-09-17 16:44:23 수정됨

    간단한 이치입니다.

    기술력이 낮은 회사일수록 대충 복붙으로 쓰고, 기술력이 높은 회사일수록 원리를 이해하고 씁니다.

    이건 100퍼 팩트입니다.

    특정 라이브러리를 파서 이해하는것도 중요하지만 그러기 위해서는 근원 지식이 필요합니다. 결국 그 라이브러리를 만든 사람도 근원 지식에서 출발 하거든요. 

    한마디로 정의하자면 기본기가 제일 중요하구요. 라이브러리나 프레임워크는 그 기본기를 토대로 이해해야 기술로써 응용할 수 있습니다. 문서를 읽을때도 마찬가지구요.

    초보때 특정 라이브러리를 독파하겠다고 파는건 결국 사용법을 익히는거지 기술을 익히는게 아닙니다. 차라리 해당 라이버르러리가 주는 주요 키워드등을 분석해서 해당 개념을 공부하는게 근본적으로 도움이 된다고 생각합니다.

    아 사용법 익히는게 쓸때없다는건 아닙니다. 본인이 라이브러리를 사용해야하는 범위내에서 사용법은 당연히 익히는거구요 그걸 기술이라 착각하면 안된다는 의미입니다.

  • 필로매스
    52
    2021-09-17 22:58:51

    공부방법에 대해서 좀 갈팡질팡 했는데 선배님들의 주옥 같은 조언과 답변 감사합니다!!!! 선배님들 덕분에 조금은 방향성과 목적성에 감이 잡힌 것 같습니다. 선배님들 말씀 종합하니 결국 필요성에 따라  취사선택, 기본기인 것 같습니다. 감사합니다 선배님들!!!


    저도 나중에 후배님들에게 나눌 수 있는 개발자가 되도록 노력하겠습니다!!


    @장독깨기 - 필요한 원리와 이유. 감사합니다 선배님!! ㅋㅋㅋ 진짜 어느세월에 다 보지 라는 생각이 들었습니다. ㅎㅎㅎ


    @0sfilm - 교육이 짧아서 그런 것 같았습니다. 물리적 시간상 어쩔 수 없는 것을 이해하고, 다만 그러면 그 중에서 어떻게 가장 효율적이게 배울 수 있을까 고민되어서 선배님들께 조언을 구했습니다. 감사합니다 선배님!


    @yeori - "많아봤자 6개월인데 이 짧은 시간에 당장 몰라도 되는걸 붙들고 시간을 낭비하거나 꼭 알아둬야 할 내용을 모른다거나... 이런 경우를 많이 봤습니다." - 선배님 조언 안 들었으면... 제가 그럴 뻔 했네요... 감사합니다 선배님!!


    @fender - 어떤 습관을 들이냐에 따라 격차가 벌어진다고 하시니 경각심을 가지고 배워야겠네요... 감사합니다 선배님!

    @일랑동딩 - 감사합니다 선배님! ㅎㅎㅎ


    @답정너심판자 - 기본기. 기본기. "초보때 특정 라이브러리를 독파하겠다고 파는건 결국 사용법을 익히는거지 기술을 익히는게 아닙니다. 차라리 해당 라이버르러리가 주는 주요 키워드등을 분석해서 해당 개념을 공부하는게 근본적으로 도움이 된다고 생각합니다." 주옥 같은 말씀 감사합니다!! 





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