django 는 공부하면 공부할수록 어렵네요 사람들은 잘쓰는데 저는 왜이렇게 어렵게 느껴

 
공대영

django 는 공부하면 공부할수록 어렵네요

사람들은 잘쓰는데 저는 왜이렇게 어렵게 느껴지는지 모르겠습니다

장고를 하다가 flask, rails 를 접해 봤는데 재밌고 멋진 녀석들입니다. 각자 장단점이 부각 되는 멋진 놈들이죠
다만 flask는 sqlalchemy 랑 같이쓰려는데 조금 어렵긴 하네요

처음엔 파이썬, 친근한 발음과 멋진 django 포스터(?) 란 이유로 재밌게 공부를 했었는데 지금은 배우면 배울수록 배울게 더 많아지는 느낌입니다

함수형 뷰 익숙해진지 얼마안돼서 클래스형 뷰 도 나오고 Mixin 은 또 무엇인고.. 허허

여러분들의 생각은 어떤가요?


  • Tae-lim Oh

    내용이 많긴 하지만 결국 누군가 제가 해야했을 일을 대신 해놨기 때문이라고 생각합니다 🙂 쓰는 게 즐겁습니다

    Kwon-Han Bae

    http://scienceon.hani.co.kr/?mid=media&category=221&page=6&document_srl=198522

    Seungho Kim

    갈수록 어려워서 충격인데, 그래봐야 튜토리얼에서 못 벗어난다는게 더 충격인 플랫폼. ㅋㅋ 여래신장같은 장고 튜토리얼 ㅋㅋ

    Jung Kyoung Up

    웹이 원래 어렵습니다…..

    JeongHwan Kim

    저도 하면 할 수록 어렵네요

    박영록

    django가 그냥 어려운 게 아니라 약간 설계가 잘못되서 어려운 면도 있죠. 클래스형 뷰는 사실 처음에 http method를 고려하지 않고 설계한 urls의 문제점을 극복하기 위해 땜빵으로 나온 거라 urlconf에서부터 제대로 분기되는 것도 아니고 그냥 클래스의 as_view를 통해 다시 한 번 분기되는 거라 decorator 적용 방법도 달라지고 여러 모로 구립니다. mixin도 다중상속을 가장 나쁘게 활용하는 방법 중 하나라서 별로 좋아보이지 않구요. mvc를 제멋대로 해석한 것도 맘에 안 들고, 그 결과로 튀어나온 django template도 별로죠. mvc는 rails가 더 깔끔하게 잘 되어 있다고 봐요.

    하지만, 그럼에도 불구하고 전 django가 flask나 rails보다 더 좋아요. flask는 도무지 context local을 참기가 어려웠고, 뭔가 기능이 늘어갈수록 결국 django만큼, 혹은 그 이상으로 복잡해져가죠. 튜토리얼할 때만 심플한 게 flask라고 봅니다. rails는 익숙해지면 몹시 높은 생산성을 낼 수 있지만, 익숙해지기까지는 django보다 더 오래 걸립니다. ActiveRecord도 예전엔 참 좋았지만, django에 south가 등장하고 migration이 메인스트림에까지 들어온 지금은 django model이 더 편한 것 같아요.

    여튼, 웹 프레임워크의 이상향 같은 게 있다면 django는 그 거리가 제법 멀고, 이상향으로 접근해가고 있지도 않지만, 현 시점에서 단점이 가장 적은 프레임워크인 것 같아요.

    제가 권하는 방법은 django에서 어렵고 복잡한 기능들은 안 쓰는 것입니다. 제가 볼 때 django의 많은 부가기능 중에서 활용할 때의 이득이 학습비용을 크게 초과하는 것은 auth 패키지 뿐인 것 같아요. 나머지는 그냥 파이썬으로 직접 코딩해서 때워도 나쁘지 않아요. 특히 urls 같은 경우는 유연하고 강력한 기능들을 제공하지만, 가장 단순한 형태로만 쓰는 것에 비해 별달리 큰 이득을 주지 않아요. forms도 좀 좋다 만 것 같은 느낌이고, django template에서 제공하는 수많은 기능들은 그냥 파이썬 코드를 쓸 수 있는 템플릿 언어(mako, cherrypy 등)로 바꾸면 다 필요 없는 것들이죠.

    마지막으로, 전 sqlalchemy 비추입니다.

    Jung Kyoung Up

    웹에 대한 이해를 올릴 수록 조금씩 django가 왜 그렇게 만들어지고 있는지 이해도가 오르고 내가 하고자 하는 일에 django의 어떤 기능을 써야하는지가 조금씩 보이면 그땐 조금 쉬워보이지 않나 싶네요. django로 웹을 배우는 것도 좋고 그냥 웹에 대해 다른 방식으로 알아가는 것도 좋은데 django를 배우려 하기 보다 웹에 대해 더 탐구해보는게 도움이 되는거 같습니다. 억지로 django로 다 만들 필요도 없고 django를 깊게 알아야하는 것도 아니고, 해결해야하는 문제에 집중하려면 결국 웹 자체에 대한 고민이 더 커집니다. django 왜 이리 어려워? 보다, 왜 django는 이렇게 되어있을까를 고민해보는건 좋은거 같습니다.

    Kyung Il Choi

    웹 개발 도구라는 것이 결국 실제로 무언가 만들 툴킷을 제공하는 정도 같습니다. 해결할 문제의 본질적 복잡성도 있고 웹이 가진 본래의 복잡성도 있지만… 장고의 슬로건답게 마감시간 잘 지키는 완벽주의자가 되기에는 참 좋은 도구라고 생각합니다.
    한편으로… 레일즈를 잘하기 위해서 레일즈 자체를 숙달해야한다는 생각이 자꾸 드는 반면, 장고는 파이썬을 잘하게 되면 장고도 잘하게 되는 것 같아서 왠지 기분 좋은 것도 있어요ㅎㅎㅎ

    임대림

    배우기 쉬운 프레임웍 찾다 django 스터디 모임 없어서 rails 잠시 배워 봤지만, 직관적인 맛과, orm 은 django 가 rails 보다 나은듯.
    rails 같은 경우는 빠른 개발 속도와, 약간 진보적인 개념이 그리고 탐구 정신과 각종 약속들이 많더군요.
    제가 이해력이 떨어져서 django 보다 rails 는 tutorial을 이후 응용에 한계를 많이 느껴진듯 합니다.

    Kwon-Han Bae

    그럼 장고 meetup 이나 해볼까요? 사실 제가 python korea 만으로 여력이 없는데.. 누가 해주실분 없나요 ㅎㅎ

    Lim DongHyeon

    장고교의 부흥을 위해 그럼 제가 진행을 한번..

    박준복

    Django 어렵기도 하고~ 좀 마음에 안드는 부분도 많이 있습니다. ^^;

Advertisements