태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.


* jquery는 정말로 편하고 좋은 라이브러리이다. 최적화도 잘되어있고 다양한 기능이 아주 쉽게 들어가있다. 하지만 자바스크립트 개발자라면 이 jquery의 활용에 대해서 고민을 해봤을수도 있고, 좋은 라이브러리라니까 가져다 쓰고 활용을 할수도 있을 것이다. 하지만 적어도 이유는 알고 사용하고, 사용을 안 한다면 왜 사용을 안 해야하는지에 대해서 고민을 해보자.


* 서론

: 자바스크립트를 숱하게 해오다가 처음으로 jquery라는 라이브러리를 대충 듣게 되고, 이것이 무엇인지도 모른체 지내다가 나중에 jquery를 처음 알게 되었을 때에는 너무나도 놀라웠다. 기존에 자바스크립트로 사용했던 DOM 탐색의 경우 끽해야 id 탐색, class 이름과 태그명으로 탐색했었는데 이러한 것들을 CSS 의 검색 스타일로 너무나 쉽게 적용을 해서 나타난 것이다.

document.getElementById("divId");
document.getElementsByClassName("className");
document.getElementsByTagName("input");

: 매번 document.getElement어쩌고 이러한 구문을 쓰고 있을 때에 떡하니 $ 이러한 요상한 문자 하나의 함수가 나타난 것이다. 그래서 위의 구문들을 이렇게나 간단하게 바꿔놓은 것이다.

$("#divId");
$(".className");
$("input");

: 허구헌날 document.getElement어쩌고 함수들을 치는 것이 귀찮았는데 너무나 간단하게 바꿔버린것이다. 게다가 CSS의 selector 규칙도 따라서 따로 어렵게 공부할 필요도 없었던 것이었다. 그래서 jquery를 사랑하기로 했다.


* jquery

: jquery는 아래의 사이트에서 말하길 가볍고, DOM 탐색이나 이벤트, 애니메이션, ajax등을 활용할 때 유용하게 사용할 수 있는 라이브러리라고 하고, 아래의 사이트에서 다운로드/API 문서를 확인할 수 있다.


http://jquery.com



로고도 쌈빡하다.


: jquery는 모질라 소속이었던 John Resig이 개발한 라이브러리로 현재 가장 인기 있는 자바스크립트 라이브러리 중 하나로 꼽히고 있다. jquery 자체에 대한 이야기를 많이 하지는 않을 것이니 아직 jquery를 한번도 접해보지 않은 사람이라면 위의 사이트를 방문해서 간단하게 둘러보는 것도 괜찮을 것이다. 사용은 안 하더라도 현재 제일 잘나가는 자바스크립트 라이브러리 중 하나인니까 소스를 다운 받아서 보는 것도 재미있을 것이다.



* jquery의 장점

: 그렇다면 jquery의 가장 큰 장점이 무엇이라고 생각하는가? jquery를 사용해본 사람이라면 단축된 문법이라던가 여러 가지 말을 하는 것보다는 '멀티 브라우져 지원'을 말할 것이다. 어느 브라우져에서나 동일하게 작동을 한다는 것은 자바스크립트 개발자로서는 너무나 매력적인 일이다. 특히 IE의 독자노선 행보로 인해 IE와 다른 브라우져들은 자바스크립트에서 지원하는 기능이 다르거나, 같은 기능이 있더라도 사용 방법이 다른 경우 jquery에서는 이것을 전부다 해결해준다는 것이 제일 큰 장점이라고 말할 수 있을 것이다.


jQuery 지원 브라우져: IE 6 지원! 이것만으로 말 다했다


: 멀티 브라우져에서의 ajax이용, 이벤트 설정, DOM 탐색이야말로 jquery의 핵심적인 기능인 것이다.


: 또 다른 장점은 바로 간단하게 이용할 수 있는 핵심 기능들을 포함하고 있다는 것이다. 다른 것보다도 아마 가장 많이 이용할 기능은 바로 toggleClass나 removeClass가 아닌가 생각한다. 일을 할 수 밖에 없게 되는 것을 toggleClass 하나로 해결하게 된 것이다. addClass는 그냥 += 을 이용하면 간단하게 해결되지만 제한된 상황이 아닌 용도에서 정규표현식을 잘 모르면 indexOf, replace, substring 등등 매우 복잡하고 무거운 함수를 만들어야 할 것이다.


: 특히, jquery-mobile을 이용해본 사람이라면 모든 모바일 단말에서의 똑같은 UI와 동작으로 인해 그 매력에 빠졌을지도 모른다. 단순히 attribute를 설정해주는 것만으로 UI들이 바로바로 적용되는 놀라운 기능들을 소개해주고 있다. 물론, 그 디자인을 보게 되면 너무나 투박하기 짝이 없기는 하지만 말이다.



jQuery mobile의 themeRoller: 마음대로 테마도 설정할 수 있다


: 모든 모바일에서 동일한 디자인이 적용된다는 것은 또한 아주 매력적인 장점이 될 수 있을 것이다.


: 그 외에도 클래스로 선택했을 경우 $("className").click() 와 같이 이용할 경우 forEach를 하듯이 모든 element에 속성 부여나 이벤트 부여를 쉽게 해줄 수 있다는 것이 매우 큰 장점 중 하나이다.


* jquery의 단점

: 하지만 언제나 만능은 없는 법. jquery도 단점은 있기 마련이다. 무엇보다도 jquery라는 라이브러리를 이용하기 위해 새로운 API를 학습해야한 다는 것이 큰 이슈일 것이다. 이는 jquery를 한번도 접해보지 않은 사람이 처음으로 jquery를 보고 겪게 되는 그 충격을 기억하고 있다면, 공감할 수 있을 것이다. 게다가 그것에 자바스크립트라는 언어를 잘 모를 때, 겉핥기 정도로 밖에 모를 때 이것은 큰 이슈일 것이다. 심지어는 jquery를 자바스크립트가 아닌 새로운 하나의 언어로 받아들이게 되는 지경이 될지도 모른다. (처음에 실제로 그렇게 느꼈었다. 이건 자바스크립트가 아닌것 같았다.) 게다가 API로 기존의 자바스크립트와는 상이하기 때문에 효과적으로 사용하기 위해서는 jquery API를 별도로 공부해야하기까지 한다.


: 뭐, 위의 단점은 충분히 극복이 가능한 단점이지만, jquery로 극복하지 못하는 아주 큰 단점이 하나 있다. 바로 퍼포먼스의 문제이다. 어플리케이션마다 다른 요구사항에 최적화를 하기 위해서는 직접 jquery를 파고 들어가야하는 경우도 있을지도 모른다. 물론 이러한 최적화는 라이브러리를 잘 구성해 놓은 jquery에서는 큰 고민이 아닐지도 모르지만, 그것보다도 더 큰 퍼포먼스의 문제는 32k나 되는 용량의 문제이다. gzip까지 했는데도 32k라는 용량을 왠만한 사이트 자바스크립트의 전체를 합친양 정도 될지도 모른다. 그런데 단순히 한두 기능을 사용하려고 jquery 전체를 가져오는 것은 너무나도 비효율적인 투자다.


32k를 투자할만한 가치가 있는지 판단하고 사용하자


: jquery의 $ selector는 document.querySelector와 document.querySelectorAll을 통해서도 충분히 구현이 가능하고, 멀티브라우져 ajax와 event 핸들러는 함수 몇가지만 이용하면 쉽게 구현이 가능하다. toggleClass와 removeClass 또는 regular expression을 이용하면 3~4줄이면 가능하다. 1k이면 충분히 해결하고도 남는 기능들만을 사용하기 위해 32배가 넘는 용량을 가져오는 것은 지양해야할 것이다. 또 다른 예로 document.getElementById 이런 구문 백번이면 될 간단한 자바스크립트를 $로 표현하기 위해 jquery를 가져오는 것은 배보다 배꼽이 커지는 실수인 것이다.


: 하지만 퍼포먼스가 그다지 필요하지 않은 웹페이지라면 이러한 단점들도 그다지 커지지는 않는다.



* 왜 jquery를 사용하는가?

: 그러면 다시 제목의 질문으로 돌아와서 왜 jquery를 사용하는가? 하는 질문을 하고 싶다. jquery를 쓰기 좋을 때는 멀티브라우져 지원, 이벤트+애니메이션+복잡한 CSS 변환+AJAX의 기능 모두를 다양하게 사용할 때, 그리고 위의 기능들을 구현할만한 시간적 여유가 없고 jquery에 대해서 이미 알고 있을 때. 그리고 무엇보다도 페이지가 퍼포먼스를 크게 요구하지 않고 사용자와의 인터렉션이 많지 않을 때 사용해야할 것이다.


: 그리고 반대로 자바스크립트에 대해 충분히 이해하고 jquery의 소스를 볼줄 안다면, jquery의 소스를 전부다 가져오는 것 보다는 일부 기능만 가져오거나 그 구현을 보고 자기만의 라이브러리를 만드는 것이 웹페이지의 퍼포먼스상 도움이 많이 될 것이다.


: 인터넷 속도가 1Gbps까지 올라가는 시대에 고작 32k를 가지고 퍼포먼스를 이야기하는 것도 웃긴 이야기지만, 이것은 http request가 하나 더 늘어난다는 점, 페이지의 구동이 느려진다는 점, 이후 최적화가 부족하다는 점이 완제품인 jquery를 가져오는 것의 단점이라고 말할 수 있다. 또한 중요한 것은 인터넷 속도 뿐만아니라 자바스크립트가 실행되는 브라우져 자체의 속도이기도 한데, 이것을 최적화하기 위해 jquery가 웹페이지의 목적에 맞게 튜닝이 되어있는지 뒤지는 것보다는 최적화된 자기의 라이브러리를 만드는 것이 훨씬 더 빠를 것이기 때문이다.


: 하지만 분명한 것은 jquery는 최적화가 잘 된 좋은 라이브러리이며 멀티브라우져 지원에 대해 고민할 필요를 없애주는 너무나 고마운 라이브러리라는 것이지만, 페이지의 궁극적인 목적에 따라 그 사용 여부를 조심스럽게 결정을 해야한다는 것이다.



끝.



저작자 표시 비영리 동일 조건 변경 허락
신고

이 글을 공유하세요.

  • 반버민 2013.01.02 11:45 신고  댓글주소  수정/삭제  댓글쓰기

    jquery의 속도 관련해서 자료를 찾아보다가 들렸습니다.
    퍼포먼스가 필요한 웹페이지와 아닌 웹페이지의 예는 어떻게 될까요?

    • Unikys 2013.01.07 15:19 신고  댓글주소  수정/삭제

      네, 일단 퍼포먼스도 2가지 관점에서 고려할 수 있겠는데요, 처음에 접속할 때의 로드가 빨라야하는 웹페이지와 인터랙션 속도가 빨라야하는 웹페이지가 있습니다.
      로드가 빨라야하는 것은 많은 사용자의 유치가 목적으로, 사용자에게 최대한 빠르게 정보를 던져줘야하는 사이트나 사용자의 페이지 이동이 잦은 사이트가 있습니다. 대표적인게 포털사이트겠죠. 구글에서도 로딩 속도 0.1~0.2초에 따른 사용자 감소가 있었다라는 조사도 High performance 관련 동영상에 나온적이 있는데, 정확하게 어떤거였는지 기억이 잘 안 나네요. 특히 페이지 이동이 많으면 쌓여진 퍼포먼스 차이는 피부로 다가오게 되겠죠. 따라서 사용자를 계속 끌어들이기 위해서는 그러한 불만을 느끼지 못할 정도의 퍼포먼스 유지는 항상 해야합니다. 이러한 퍼포먼스 실패의 대표적인 예가 한국의 거의 모든 신문사 웹페이지입니다. 플래시와 광고로 메워진 웹페이지를 사용자들이 계속 브라우징할 때에 거부감이 들기 때문에 웹페이지로 바로 들어가기보다는 포탈을 통해서 들어가길 선호하죠. (물론 무리한 광고 도배의 역할이 더 크긴 합니다만^^;)
      다음으로 퍼포먼스를 고려해야하는 웹페이지는 단일 또는 적은 수의 웹페이지에서 자바스크립트(AJAX)를 위주로 만들어진 사용자와의 인터랙션이 잦은 사이트라고 보면 됩니다. 대표적인게 지메일이나 구글맵, 페이스북과 같은 사이트가 있지요. 이러한 사이트들은 사이트 리프래쉬가 거의 없고, 인터랙션이 느려지면 사용자가 불만을 가지게 되는 사이트들이기 때문에 퍼포먼스 점검은 필수입니다. 한국의 수 많은 지도 서비스들의 성능차이에는 맵의 로딩 알고리즘도 크게 기여하고 있지만 자바스크립트 최적화도 한몫을 하고 있으리라 보고 이들의 성공 여부를 좌우할 정도이고, 인터렉션 속도 개선은 싸이월드가 이 부분을 개선하지 못한 대표적인 예라고 생각합니다. 페이스북의 반응 속도와 싸이월드의 반응 속도를 비교해보면 많은 것을 느낄 수 있을거라 생각합니다. 데스크탑에서는 큰 차이를 못느낄지라도 모바일이 되면 자바스크립트로 생기는 차이는 엄청납니다. 모바일은 http request 하나, 그리고 jquery의 34k도 퍼포먼스에 큰 영향을 미치는 것으로도 볼 수 있죠.
      그리고 사이트가 굳이 퍼포먼스를 따지지 않아도 되는 웹사이트라면 많은 사용자 유치가 목적이 아닌 그냥 특정 목적을 가진 정보를 제공하는 홈페이지류가 되겠죠. 사용자가 페이지와 인터랙션이 잦은것도 아니고 페이지 이동도 많지 않고 한페이지에 머무는 시간이 기니까 굳이 퍼포먼스를 따질 필요가 없습니다. 예로는 이런 블로그라던가 기업용 홈페이지, 제품 홈페이지 등이 있습니다. 이러한 경우는 목적을 가지고 들어왔기 때문에 굳이 플래시를 도배해놔도 뭐라고 하는 사람이 없지요. (물론 플래시의 사용은 지양되어야할 사장되어가는 기술이라는건 틀림이 없지만요)
      jquery는 물론 퍼포먼스 최적화가 정말 잘 되어있기는 하지만 일반적으로는 jquery 기능의 10%를 이용하기 위하여 불필요한 90%까지 전부다 가져오는 양상이 대부분이지요. 만약 자바스크립트를 어느정도 안다면 자기의 사이트에 맞춰서 자기만의 최적화 라이브러리를 구축하는 것이 하이 퍼포먼스 사이트를 구축하는데 제일 좋지 않나 생각해봅니다^^

  • 2013.09.24 11:31 신고  댓글주소  수정/삭제  댓글쓰기

    동의하기 힘든 글입니다. 34k란 용량은 요새 웹에서 아무런 의미가 없죠. 모바일 3G에서조차요. 게다가 구글이 괴물 엔진 만든 이후로 자바스크립트 느린 동네가 어디 있나요. 이 정도 사소한 단점을 극복하기 위해 자기만의 라이브러리를 구축하는 것보다, 더 생산적인 일을 할 수 있지 않을까요? 예를 들어, '진짜' 성능 문제를 야기하는 부분을 찾아 고친다든지 말입니다. 어설픈 설계로 만들어진 페이지가, jQuery가 아닌 자체 제작한 라이브러리(또는 평범한 DOM Object)를 썼다고 해서 빨라질 것 같진 않네요.

    찰나의 반응속도까지 고려할, 초거대 규모의 웹사이트나 아주 특수한 목적의 페이지인 경우에는 이야기가 다르겠죠. 하지만 그건 'jQuery가 다른 언어로 느껴졌다.'는 내용과는 아주 어울리지 않는 전문적인 내용입니다. 또 반대로, 그런 사이트를 제작하고 있다면 이미 js 해커라고 생각되기에, '간단한 라이브러리는 직접 만드세요.' 같은 조언도 전혀 의미가 없겠죠.

    글 내용이 영 틀리다고는 생각하지 않습니다만, jQuery를 잘 모르는 사람이 오해하기에 충분할 정도로 과장되어 있다고 봅니다. 그렇게까지 겁을 줄 필요가 있을까요? 전 오히려 반대로 말하고 싶네요. jQuery를 습관처럼 불러온 뒤, 그 아름다운 문법을 마음껏 누리라고요. 다만 jQuery의 성능을 심각하게 저하시키는 코딩 습관을 지양하라고요.

    jQeury기능의 10%를 만들기 위해 코딩하고 버그를 수정하고 예상치 못한 성능 문제를 해결하는 과정이, 그냥 jQuery를 사용하면서 성능 문제를 해결하는 과정보다 더 편리하거나 빠른 해결책이라고 결코 생각하지 않습니다. jQuery는 그 정도씩이나 느리지 않으니까요. 불필요한 DOM 탐색 같은 걸 남발하는 개발자라면, jQuery로 짜지 않아도 당연히 코드는 느리게 작동할 겁니다.

    많은 초보 웹 개발자들이 좀 더 자신의 시간을 절약하길 바라는 마음에서 적습니다. jQuery는 문법도 아주 쉽고, 충분히 빠르고, 알면 알수록 매우 편리하니까요.

    • Unikys 2013.09.25 11:43 신고  댓글주소  수정/삭제

      한산한 블로그에 좋은 의견 감사합니다^^ 말씀하신 많은 내용은 본문에 마지막 결론에도 이미 써 놓은 내용이라 어짜피 생각하시는 방향이 크게 다른 것은 아닌것 같습니다만, 객님은 프로젝트 중심 관점이라면 저는 개발자 중심 관점으로 보고 있다는 점이 다른 것 같네요.

      일단 제가 걱정하는 것은 적어주신 '습관처럼' 불러온 뒤 사용하는 것에 대해 개발자들이 최소한의 지식을 일깨우기 위해서, 빠른 프로젝트 진행과 효율을 위해서 jquery가 정답이고 최고이고 장점밖에 없다고 생각하는 개발자들이 많은 상황에서, 많은 사람들이 jquery를 쓰는 것은 당연시 여기지만, '언제 안 써야하나'에 대한 관점에 주목을 한 것입니다. (그러다 보니 다소 과장 된 것은 인정합니다만 글에서 이 내용에 대한 언급도 다 되어있습니다)

      그리고 제가 위의 댓글에서 라이브러리를 만들어서 사용하라는 것은 사실 말씀하신 초대형, 하이퍼포먼스를 요구하는 사이트에 국한되는 것이라고 첨언을 해야될 것 같지만, 사실 생각해보면 jquery나 라이브러리를 사용할정도로 큰 웹사이트는 손에 꼽을 정도라 말씀하신 초보 개발자들은 별로 생각하지 않을 옵션이기도 합니다. 그정도면 라이브러리가 아닌 inline또는 1k도 안되는 하나의 js파일이면 끝일 확률이 높고요, 초대형이면 이미 그렇게 커스터마이징이라도 하고 있겠지요.

      초보 개발자들이 단순히 메뉴의 mouseover 이벤트 몇개를 등록하기 위해서 jquery를 사용하기도 하는가 하면, jquery를 사용하면서도 '이 웹사이트는 IE8에서 최적화되었습니다'라는 문구를 '굳이' 띄우면서 무분별한, 지식이 없는 상태에서 jquery를 사용함으로써 나오는 현상입니다. 그리고 jquery는 좋은데 자바스크립트는 안 좋다고 말도 안되는 생각을 하기도 합니다(jquery가 자바스크립트인데 말이죠). 인터넷에 검색을 해봐도 jquery 찬양일색인 와중에 저는 그 단점들을 꺼낸것 뿐입니다. 개발자들에게 최소한 이러한 것은 알고 쓰라는 것이지요. 그래서 결론에서는 쓰지말라고 안했습니다. 엄청 좋다고도 했고, 어떠한 상황에서 써야하는지에 대한 설명도 해놨죠. 하지만 적어도 '어떠한 상황에서 쓰면 더 좋겠구나, 이러한 상황에서는 굳이 jquery를 안 써도 충분하구나'라는 것에 대해서 다룬 것입니다.(물론 실제적 예가 없어서 쉽게 받아들이지 못하는 사람도 많겠지만요)

      아무튼 초보 웹 개발자가 일단 jquery를 습관처럼 일단 불러오고 사용하는 것은 '프로젝트에는 좋지만, 개발자한테는 안 좋다'라는게 제 생각이고, 개발자의 역량 강화를 위해서 위의 내용을 생각하는 것은 기본이라고 생각합니다. 프로젝트의 생산성과 효율성을 위해서 jquery는 좋습니다만, 개발자의 역량 강화를 위해서는 위의 내용은 '당연히' 생각해야할 문제이기도 하고요.

      그리고 다른 이야기를 조금 더 하자면, 물론 아시겠지만, jquery는 단순히 34kb만 소요하는 것이 아니라 로딩 중에 파싱도 요구하게 됩니다. 자바스크립트가 느린 동네가 어디있냐고 물으신다면, 아직 한국 시장의 70%를 차지하고 있는 IE라는 동네가 있고 PC보다 컴퓨팅 자원이 적은 모바일이란 동네도 있지요. 구글이 좋은 자바스크립트 엔진 내놓아서 저도 크롬 좋아하고 크롬만 사용하지만 사용자들은 전부 그렇지가 못하지요. 일부는 아직 펜티엄쓰는 동네도 있을 것이고 일부는 웹을 로딩하는데 한세월이 걸리는 2g에 아이폰3gs를 사용하고 있을지도 모르는 상황이라면 개발자들은 이러한 사람들까지 고려해야하는 것이 '닫힌 마인드'에서 벗어나는 길이라 생각합니다. 초보 개발자들이라면 이러한 부분부터 생각하고 강화시키는 것이 고급 개발자로 가는 지름길이라고도 생각합니다.

      jquery는 정말 말씀하신대로 알면알수록 편리하고 좋습니다만 그것보다 더 깊이 있게 가기가 힘듭니다. 처음부터 jquery로 배워왔기 때문에 그냥 흔한 웹개발자가 되는 것이지요. 하지만 때로는 jquery말고 나만의 라이브러리도 만들어보고 자바스크립트를 깊이있게 공부하면 할수록 이건 정말로 너무나 심오한 세계가 나오게 되고 더 빠르게 고급 웹개발자가 될 수 있지요. 저도 jquery를 보면 이제는 내부가 어떻게 되어있겠구나 딱 봐도 압니다. 그래서 실제로 파고들어가보기도 하고 단점들도 찾아내고 강점들을 통해서 더 많이 배우기도 합니다. 웹 개발을 단순히 돈벌기 위한게 아닌 즐기려면 이러한 부분에서도 폭넓은 접근이 필요하다고 생각합니다. 근데 사실 제 생업은 이제 다른 분야라 그냥 즐기면서 하고 있어서 자기계발적인 면을 위주로 보지 생산성면을 잘 보지 못하고 있기도 합니다.

      그리고 말씀하신, '안 좋은 프로그래밍 습관'에 대해서도 사실 자바스크립트 강좌로 쓰고 싶었는데 언제가 될지는 모르겠지만, 쓰게 되면 방문해주셔서 많은 의견 부탁드립니다.

    • 2013.12.11 04:38 신고  댓글주소  수정/삭제

      0. 솔직히 그런 생각이 있었습니다. 작성한지 오래된 포스트이고 하니, 블로거님께서 아마 못 보지 않을까-하는 생각이요. 그래서 사실 직접적으로 블로거님께 쓴 댓글이라기보다는 처음 jQuery를 접하는 다른 분들이 읽었으면 하는 마음으로 적었더랬습니다. 저 또한 까먹고 우연히 다시 들어 왔는데, 댓글이 달려 있어서 반갑네요.

      1. 댓글을 처음 읽을 때는 갸우뚱 했는데, 두번째 읽다 보니 '프로젝트 중신 관점'과 '개발자 중심 관점'이 어떤 뜻으로 말하신 것인지 감이 잡히네요. 정말 그런 관점차가 있는 것 같습니다. :)

      그럼 저도 개발자 중심 관점으로 말해 보겠습니다. js와 jquery도 제대로 구분하지 못하는 분들을 저도 종종 접했습니다. 처음엔 많이 당황스럽더라고요. getElementById를 꾸역꾸역 쓰다가 jQuery를 보고 신세계를 느끼는 학습 과정을 거친 저에겐 이해하기 힘들었습니다. 심지어 jQuery를 라이브러리가 아니라 다른 언어쯤으로 일컫는 분도 계시고요. 그런 의미에서 블로거님께서 우려하시는 게 어떤 건지 이해합니다. 저건 확실히 문제가 있죠. 대체 어떤 학습 방식을 거쳤길래 저런 지름길로 갔는지 전 참 궁금합니다만.. 그런 방식이 있긴 한가 봅니다.

      그래도 전 적극적으로 편한 라이브러리를 쓰는 것을 긍정적으로 보는 편입니다. jquery를 대충 다루는 개발자라도, 언젠간 js에 대해 고뇌를 해야하지 않을까요? js의 그 심플함 뒤에 숨겨진 복잡한 문법에 대해서 말입니다. 개발하다 보면 공부의 부족함을 느끼고 책을 펼치고 싶을 때가 있으니까요. 만약 그런 욕구를 느끼지 않는 개발자라면.. 사실 어떤 방식으로 공부했든 거기서 별 발전이 없을 것이고, 블로거님도 이런 분들을 배려하고자 함은 아닐 것이라 생각합니다.

      단순히 초보자가 버튼 클릭하면 색깔 바뀌는 코드를 구현하기 위해서도, jquery가 나쁜 선택지인 것 같지 않습니다. 무엇보다 코드가 간단하니까요. 전 블로거님보다는 jquery가 초보 개발자에게도 가깝다고 생각합니다.

      2. IE. 한숨부터 나오는 단어네요. Save the developers 캠페인이 생각나기도 하고요. 그래도 조금 생각이 다른 부분을 말씀드리자면, 전 변화가 긍정적인 방향으로 이미 잘 일어나고 있다고 생각합니다. 대형 사이트들이 구형 IE 지원을 차차 중단하고 있는 것만 봐도 말이죠. 그리고 새롭게 웹 개발에 뛰어들 사람까지 옛날 ie 호환 신경쓰면서 시작하는 건 너무 큰 족쇄이지 않을까요? 아마 그런 분들은 크롬을 쓰고 있을 텐데요.(전 불여우 초기부터 쓴 골수 유저인데, 인기가 줄어서 참 슬픕니다.) 특별히 신경써야 할 경우나 대단히 많은 대중을 상대로한 서비스가 아니라면, 전 신규 서비스는 굳이 구버전 IE까지 전부 배려하면서 안 만들어도 되지 않을까, 그렇게 생각합니다. 특히 6까지는 과감하게 잘라내는 게 정신건강에 좋죠.

      3. 사실 사소한 부분에서만 생각이 다를 뿐, 아마 큰 줄기는 같다는 것에 동의해 주시리라 생각합니다. 아시겠지만, 전 단지 본문에서 너무 겁을 주고 계시는 것 같아서 그것을 반박한 것이니까요. 있는 라이브러리를 쓰는 것은 좋죠. 다만 장단점을 분명히 인지하고, 자신에게 도움이 되는 방향으로요. 여기서 무게를 조금 어디에 더 두었냐 정도로 의견의 차이를 정리할 수 있을까요? :)

      4. 초보자들에 대해서는 이런 생각이 드네요. 전 최소한 w3schools의 javascript, jquery 강좌는 읽어 보고 입문들 하셨으면 좋겠습니다. 영어라서 그렇지 쉽고 짧아서 금방 읽을 수 있을텐데. 물론 더 많이 공부하면 좋겠지만, 저거 읽는 것도 귀찮아하시는 분이 많은 것 같네요. 저도 안타깝습니다.

    • Unikys 2013.12.14 15:15 신고  댓글주소  수정/삭제

      (길게 써놨는데 회사에서 버튼 하나 잘못 눌러 다 날라갔네요 ㅠ 다시 씁니다..)
      1. 일단 개발에 있어서 지름길은 없죠. 저도 옛날에 jquery가 있기도 전에, 사람들이 자바스크립트로 개발하면 디버깅도 힘들고 안 좋다고 하면서 모두 플래시에 달려들 때부터 직접 부딪치면서 자바스크립트를 계속 쓰면서 구석구석 알게 되었지요. 개발자한테는 이렇게 몸으로 직접 부딪치는게 자신의 경험이 되고 노하우가 되어 고급 개발자로 만들어주게 되는데, 이러한 경험을 더 직접적으로 하기 위해서 '초보일때부터 jquery를 일단 불러오는 것'은 어떠한 면에서는 개발자를 더 돌아가게 만드는 상황입니다.

      예를 하나 들어볼까요? <div class="click_me">의 div에 이벤트를 걸고 싶습니다. jquery에서는 $(".click_me").on("click", 생략); 대충 이런식이 되겠지요. 그런데 페이지의 요구사항이 바뀌어서 이러한 div가 100개가 된다고 치면 jquery는 놀랍게도 그대로 수용이 가능합니다. 이렇게 jquery는 구문 자체가 확장성도 있고 아주 놀랍지요! 그런데 이렇게 구현한 것이 어떠한 문제점이 있는지 쉽게 알 수 있을까요? 웹사이트가 갑자기 느려져서 원인 파악을 해야한다면, 1차적으로 원인 분석을 할 때 jquery 소스는 그대로고 달라진건 html을 그려주는 jsp/php 이러한 웹언어이기 때문에 이러한 부분을 먼저 살펴보게 됩니다. 2차적으로 jquery에 문제가 있었다는 것이 파악되도 jquery 내부에서 어떻게 돌아가고 있는지 파악해야합니다.(이건 초보 개발자들에게 지옥입니다. 제가 그랬거든요.) 그리고 3차적으로 jquery 안에서 위의 선택자로 선택된 모든 div에 개별적으로 이벤트 핸들러를 할당하는 것이 성능상 이슈가 될 수 있다는 것을 알아야 합니다.(이 내용도 어디선가 우연히 들어봤어야 파악이 가능하겠지만, jquery의 코드만 봐서는 불확실하죠.)

      만약 개발자가 자바스크립트로 짰다고 하면, 본인이 div를 루프돌면서 이벤트 핸들러를 할당하기 때문에, 원인 분석을 훨씬 빠르게 할 수 있습니다. 자신이 직접 로직을 만들었기 때문이죠. 이러한 부분은 일반 자바스크립트로 하면 손은 조금 더 고생해도 그다지 구현이 어렵지 않지만, jquery로 개발할 때에는 원인 분석 면으로 가게 되면 몇배는 어려워지게 됩니다. 따라서, 만약 제가 초보 웹 개발자의 상사라면 저는 초보개발자의 역량을 강화시키는 훈련을 하거나 스터디를 할 때에는 jquery를 사용하지 말라고 할 것입니다.

      jquery를 사용한다고 꼭 고급 개발자가 되는 것이 느려진다는 말은 아닙니다. 하지만 스터디를 하고 있을 초보 개발자라면 적어도 순수 자바스크립트로 공부하라고 추천한다는 것이죠. C 개발자를 스터디 시킬 때에는 STL의 array나 linked list를 사용하지 말고 직접 짜면서 하라고 하는 것 처럼 말이죠. 하지만, 실제 프로젝트가 되면 STL을 사용하라고 하는 것과 같은 이치입니다. C와 STL을 보는 관점을 자바스크립트와 jquery를 바라보는 관점과 똑같이 해야한다는 것이 제 생각입니다.

      또 다른 예를 들어보면 자바스크립트부터 하고 jquery를 공부하게 되면(객님이나 저처럼 말이죠), getElementById는 dom을 가져온 것이고, jquery의 $는 이것을 하나의 wrapper로 감싼 것이라는 사실은 몇가지 테스트를 하면 바로 알 수 있습니다. 하지만 jquery부터 익숙해지면 $로 가져온 객체는 다양한 함수 기능이 있는데 getElementById는 왜 없는지, 이 2개가 다른건지 파악하는데 1차적인 분석이 필요하고 2차적으로 순수한 dom을 가지고 jquery의 함수를 어떻게 구현해야 할지 막막할 겁니다. jquery의 틀에서 벗어나기 힘든거죠. 물론 초보 개발자라면 이러한 '순수 자바스크립트로 자기 계발을 할 수 있는 기회와 jquery로 얻을 수 있는 생산성'의 조율을 잘 해야 하겠죠.

      위에서 말한 C와 STL 그리고 자바스크립트와 jquery의 관계 중 다른 점이라면, 사실 일반적인 C 개발자가 STL보다 더 효율적으로 짜기 힘듭니다. 하지만 자바스크립트는 jquery보다 효율적으로 짜기는 아주 쉽습니다. jquery는 언제나 wrapper가 같이 따라다닌다는 점에 있어서 특히 더 말이죠. (물론 잘못하면 개발시간은 훨씬 늘어나겠지만요.)

      2. 위의 글에서 썼지만, 저는 jquery의 최대 장점을 크로스 브라우져 지원이라는 점을 생각하는데, 이 부분은 약간 생각이 다른 것 같네요. 코딩을 편하게 해주는건 사실 function $(selector) { return document.querySelectorAll(selector);} 이라는 한문장이면 나만의 작은 jquery도 구현이 가능합니다. ECMAScript 5에 querySelector라던가 JSON 객체라던가 개발을 편하게 해주는 함수들이 많이 나와서 오히려 이러한 기능들을 지원안해주는 구버전 브라우져에 대한 지원을 해주는 것이 jquery의 특장점이라고 생각합니다. 따라서, IE라고 해서 jquery를 쓴다면 한숨이 나올 일은 없지요.(저는 IE도 좋아합니다. 맨땅에 헤딩을 같이 해왔었고 테스트용으로도 이만한 놈이 없습니다. 예상치 못하는 버그를 마구 뱉어주거든요.) 아무튼 이 내용은 만약 객님과 제가 생각하는 '지원해줘야하는 구버전'의 범위가 같다면 같은 이야기를 하는 것이겠죠. 저는 최소한 IE8은 반드시 지원, IE7은 사이트마다 고려, IE6는 저도 생각 안합니다.(jquery를 쓴다면 생각해줍니다. 아니, jquery가 알아서 해주기 때문에 생각할 필요가 없이 반자동으로 생각 된거죠.)

      하지만, 초보 개발자들이 '구버전을 생각하지 마라'라는 생각을 가지게 되는 것은 반대입니다. 어떠한 면에서 개발할 때 있어서는 족쇄가 될지도 모르겠지만, 이것도 개발자로서의 역량 강화의 일부입니다. 문법을 익히고 이러한 것보다 더 중요한 것은 '예외상황에 대한 처리'가 개발자로서 아주 중요한 능력 중 하나이니까요. 문법만 익히는 수준은 누구나 할수 있지만 고급 개발자가 되려면 이러한 상황처리가 중요하다 생각합니다. 그리고 개발자들은 언제나 사용자 입장에서 생각해야 합니다. 개발자들은 크롬/파폭 등 유용한 브라우져를 사용하지만 일반 사용자들은 그렇지 못하거든요. 그리고 '웹'이라는 공간은 누구든지 접근할 수 있기 때문에, '개인용' 사이트가 아니라면 반드시 고려해줘야한다고 생각합니다. 왜냐하면 VoC는 개발자가 아닌 일반 사용자들이 내는 것이니까요.

      그리고 말씀하신 대규모 사이트들은 구버전 브라우져를 지원 안하는 것은 아닙니다. 엄밀히 말하자면, '구버전 브라우져에서는 모든 기능을 100% 쓸 수 없다'가 맞을 것 같습니다. 대표적인 대규모 사이트 중 하나인 gmail은 IE8을 쓰는데도 경고를 띄우네요. 하지만 이러한 경고는 '우리의 모든 기능을 쓰려면 업그레이드해서 쓰세요'이지 필수적인 기능은 왠만하면 다 구버전 브라우져도 지원해줍니다. gmail을 예로 들면, 메일 읽고 쓰는 것이 필수 기능이라면 팝업이나 드래그앤드롭 이러한 기능이 부가 기능이겠죠. 대부분의 대규모 사이트는 이러한 방식으로 필수 기능은 구버전도 지원, 부가 기능은 업그레이드 요청을 하는 것이 일반적인 공식이라고 봅니다. 고객의 관점에서도 제일 중요한 기능은 이렇게 사용할 수 있게 해주는 것이 맞는 것 같고요.(물론 화려한 HTML5 기능을 탑재한 사이트면 지원 범위가 줄겠지요)

      3. 이 글에서는 다소 강하게 단점들을 부각시킨 것은 인정합니다(근데 저도 필요없어서 안 쓸 뿐이지 jquery 좋아합니다ㅠ 정말 이보다 라이브러리 잘 만들수 없다 생각합니다.) 하지만 jquery라고 검색하면 칭찬일색인 글이 100개라면 이러한 '신경써야할 부분'에 대해서 지적하는 글은 1개가 있을까 말까 하죠. 1대100으로 싸우려면 좀 강하게 나와야 되지 않겠습니까? ㅎㅎ 아무튼 이 글의 목적은 'jquery를 쓰기 전에 최소한 이러한 문제가 있을 수 있고 고려가 필요하다'는 것을 알리는 것이므로, jquery를 사용할 개발자들이 이러한 이미지를 강하게 받았으면 이 글의 목적은 달성한 것이라 생각합니다. 어짜피 이 글을 읽기 전에 칭찬일색인 글을 훨씬 많이 봤을테니까요.

  • 흐켱 2013.10.01 18:05 신고  댓글주소  수정/삭제  댓글쓰기

    초보 웹 개발자의 입장에서 좋은글 너무 잘 읽었습니다.

    감사합니다.~!

  • 구영탄 2013.12.04 10:12 신고  댓글주소  수정/삭제  댓글쓰기

    좋은 글 감사합니다.
    진정한 의견과 토론이 이뤄지고 있네요^^
    너무 잘 읽고 갑니다.

  • 우기 2014.03.21 15:43 신고  댓글주소  수정/삭제  댓글쓰기

    초보개발자입니다.
    java와 jsp만 공부해서 js를 모르는 상태로 입사를하게되었는데
    왠걸 js를 더 많이 쓰더군요.
    그때 jquery 가 보이더군요.. 엄청편하더군요.
    기능 구현에만 혈안이 되서 jquery만 썻습니다..
    js를 모르는 상태로 jquery 만 쓰다보니 소스도 난잡해지고
    실력이 전혀 늘질 안더군요.. 검색 c&p 만 햇습니다
    jquery 를 쓸수록 마음한구석으론 양심의 가책마저 느껴지더군요..
    이글을 좀더 일찍봤으면 어렵더라도 js부터 할걸 생각이 듭니다.

    • Unikys 2014.05.03 20:00 신고  댓글주소  수정/삭제

      양심의 가책을 느끼실 필요 없습니다. 이제부터 어떻게 짜면 고객한테 더 좋은 웹페이지를 제공해줄 수 있을지 어떻게 하면 더 깔끔하게 개발할 수 있을지 고민을 하면 되는 것이니까요. 그리고 그것이 바로 고급 웹개발자로 들어서는 길이라고도 생각합니다!

  • 강영주 2014.04.30 13:57 신고  댓글주소  수정/삭제  댓글쓰기

    초보 개발자입니다.
    요즘들어 JavaScript와 jQuery중 어떤걸 더 비중있게 써야 하는가 고민이 많았는데 ..
    많은 지식을 얻어갑니다. 감사합니다.

    • Unikys 2014.05.03 20:00 신고  댓글주소  수정/삭제

      어떠한 것을 하시던지 상관은 없지만 원리를 생각하면서 한다면 더 빠르게 고급 개발자가 될 수 있을거라 생각합니다~

  • 수월 2014.10.07 17:43 신고  댓글주소  수정/삭제  댓글쓰기

    초보개발자 입니다. 작은 중소기업을 다니고 있는데요
    언젠가 대리님한테 jQuery를 쓰면 편하지 않나요? 라고 질문을 한적이 있었는데
    이전 회사에서 jQuery를 썻다가 낭패를 본적이 있어서 안쓴다고 하시더군요

    이유를 들어보니 jQuery로 개발을 했었었는데 그때 썻던
    함수(?) API(?) 뭐라고 불러야 좋을진 모르겠으나
    갑자기 그 함수가 사라져버리고 작동을 안한다는게 이유였습니다.
    jQuery가 업데이트를 하면서 이전의 것을 없애버려서
    다시 수정한 기억이 있으시다는데요

    jQuery로 개발할때 그런 위험은 존재하는것이 맞는 이야기인가요??
    아니면 다른 방법이(jQuery소스를 복사해온다던가) 존재하나요?

    • Unikys 2014.10.08 14:11 신고  댓글주소  수정/삭제

      1. 네, 해당 위험성도 조건부로 존재합니다. 왜냐하면 jQuery의 함수들, 즉 API들은 자바스크립트의 ECMAscript와 같이 어떠한 표준을 토대로 개발된 것이 아니라, 단순히 개발자들이 개발자의 편의를 위하여 개발된, 언제나 jquery 개발자의 입맛에 따라 변경이 가능한 API이기 때문이죠. 따라서, 특정 함수가 없어지면 jQuery에서 어떠한 함수로 대체 했는지 재학습해야 하는 시간이 추가로 필요합니다. 하지만 위험성은 재학습 뿐이지 적어주신 낭패를 본 '재개발이 필요한' 경우는 아래에 추가로 별도 설명드리겠습니다. API가 없어졌을 때 낭패를 봤을 가장 대표적인 예 중 하나가 지금도 1.4버전에서 동적인 element를 추가할 때 해당 element에 이벤트 핸들러를 등록하는 함수인 live를 많은 개발자들이 사용하고 있을 겁니다. 그런데 이제는 없어졌죠. 그러므로 live 대신에 on 함수를 다르게 쓰는 것을 재학습해야 합니다. 저는 그러한 변경들은 충분히 타당한 이유가 있어서 생기는 변경들이기 때문에 재학습을 하는 것이 손해는 아니라고 생각합니다만, 많은 개발자들은 자기가 개발해오던 방식이 있어서 그러한 변화를 받아들이기 힘들어하죠.

      2. 그런데 적어주신대로 재개발이 필요한 낭패를 본 이유는 jquery의 첫 사용부터 잘못 되었기 때문입니다. 위에서 조건부로 위험성있다고 했는데 솔직히 말씀드리자면 개발을 잘못하신거죠. 지금도 jquery를 사용하는 많은 사이트를 보면 이렇게 개발하고 있을지도 모르는데, 아마도 jquery CDN에 있는 jquery-latest.js라는 항상 'jQuery의 최신버전'이 올려져 있는 자바스크립트 파일을 사용하신 것 같습니다. 많은 사람들이 최신 버전에는 최신 기능이 더 있을테니 항상 최신 버전을 쓰는 것을 선호할지도 모릅니다. 그런데 웹 개발을 하게 되면 특히 jquery등의 라이브러리를 이용할 때 아주 위험한 개발 방법입니다. '절대' jquery-latest.js를 사용하면 안되고, 특정 버전의 jquery를 사용해서 그 버전에 최적화된 사이트를 개발해야 하지요. 추가로 질문하신 부분이 그 부분을 해결하는 한 방법이기도 합니다. 만약 고정된 버전의 jquery를 사용한다면 그러한 낭패는 처음부터 걱정할 필요가 없었을 것입니다. 그렇게 하는 방법은 말씀하신대로 jquery소스를 복사해서 로컬 서버에 올려두고 사용하는 방법이 있고, 또는 jquery CDN에서는 과거의 모든 버전들도 함께 올라가 있습니다. 그러한 특정 버전, 예를 들면 jquery-1.11.1.js를 사용해서 개발하면 됩니다. 특정 버전 안에서는 함수가 없어지거나 하지는 않으니까요. 참고로 2014년 10월 현재 저는 1.11.1 버전을 사용하라고 추천드릴 것 같네요. jquery 2.x 버전은 IE8 지원을 안하고, 아직 IE8은 한국에서 주류 브라우져 중 하나이니까요.

  • 쿡스토리 2015.05.06 13:40 신고  댓글주소  수정/삭제  댓글쓰기

    긴글 잘 읽어 보았고 객님과의 설전(?) 같은 댓글도 잘 읽어 보았습니다. ㅎㅎ
    저는 개발자는 아니며 was 엔지니어으로 일하고 있으며,
    JavaScript 와 Jquery 에 대한 자세한 내용 고맙습니다.
    좋은 하루 되세요. ^^

    • Unikys 2016.05.01 03:31 신고  댓글주소  수정/삭제

      감사합니다. 백엔드 엔지니어이신데도 프론트엔드 공부하시다니 다른 영역까지 신경쓰는게 쉬운일은 아닌데 좋은 개발자이신 것 같습니다. 건승하시길 바랍니다.

  • jquery는 2016.02.14 09:59 신고  댓글주소  수정/삭제  댓글쓰기

    dom을 제어하기 위해
    크로스 브라우징 이슈를 해결하기 위한 라이브러리일뿐
    그 이상 그 이하도 아님돠

    자바스크립트를 모르는 상태에서
    제이쿼리를 마구 쓰다보면
    제이쿼리로만으론 극복할 수 없는 부분이 분명히 생깁니다.

    결국은 제이쿼리 뜯어야 할때가 온거죠.

    그리고

    그때는 자바스크립트 모르고서야
    라이브러리 분석도 안되고
    더 꽈지기만 할 뿐더러

    제이쿼리에 가두어져있는 자신의 모습을 볼 수 있을겁니다.

    여튼 제이쿼리 앞서서 자바스크립트를 먼저 정복하라는 말을
    웹 입문자분들께 전해주고 싶네요.

  • 행인 2016.05.29 01:49 신고  댓글주소  수정/삭제  댓글쓰기

    JS부터 하고 jQuery를 하는게 맞습니다 ㅎㅎ

  • UM 2016.06.22 11:36 신고  댓글주소  수정/삭제  댓글쓰기

    좋은 글 잘 읽고갑니다~ 요즘 jquery 에 대해서 공부중이에요.. 흡흡... 아직 초보자라 js와 jquery 를 막막 섞어 쓰고 있답니다 ㅋㅋㅋ큐ㅠㅠㅠㅠ

  • 촙촙이 2016.08.17 16:17 신고  댓글주소  수정/삭제  댓글쓰기

    약관 전체동의 체크박스 검색 및 완성 후 더 둘러보던 중, 도움이 되는 글을 읽었습니다.
    즐겨찾기 추가해놓고 다른 게시물도 읽어야겠습니다.

    감사합니다.

  • JQuery 2016.08.25 08:24 신고  댓글주소  수정/삭제  댓글쓰기

    jquery는 단순히 34kb만 소요하는 것이 아니라 로딩 중에 파싱도 요구한다고 하셨는데..
    이미 캐싱된 경우는 이러한 일련의 라운드 트립을 줄일 수가 있기 때문에 큰 고민꺼리는 아니지요.
    정말 34kb의 용량 때문에 문제가 되는 사이트라면, 문제의 해당 페이지에서 로딩을 의미하는 노틱만 해줘도 되는 일이고..

    • Unikys 2016.09.23 03:44 신고  댓글주소  수정/삭제

      라운드 트립은 캐싱 관련이고, 파싱은 자바스크립트 소스 자체를 분석하고 실행하는 자원소모를 의미합니다. $가 제기능을 수행하기 위한 라이브러리 자체의 전처리 부분은 필수죠. 그리고 34kb는 작은 사이트에서는 큰 차이가 없고 별 의미가 없지만 클라이언트 측 뿐만아니라 서버쪽도 고려한다면 대형 사이트라면 조금이라도 최적화하는게 맞다고 생각합니다.

  • 바다하늘구름사랑 2016.11.24 16:00 신고  댓글주소  수정/삭제  댓글쓰기

    크로스 브라우징 지원이 완벽하진 않습니다. 1.6 버전인가는 제대로 지원이 안되더군요.
    또하나 jquery.html 사용하게 되면 두번씩 동작합니다. 이런식으로 소소한 문제점들이 보이더군요. 글쓴님 말씀처럼 쿼리셀렉터 사용하면 jquery의 셀렉터와 거의 똑같이 동작하니 굳이 jquery를 쓸 이유가 있나 싶네요. 글쓴님 말씀처럼 선택의 문제이겠지만 첨부터 jquery로 기초를 다지는건 영 아닌듯 하네요. 좋은글 잘 읽었습니다... ♥♥

  • 바다하늘구름사랑 2016.11.24 16:13 신고  댓글주소  수정/삭제  댓글쓰기

    jquery를 사용하는 이유는 간단하고 편해서겠죠.
    document.getelementbyid 이거 쓰다가 $ 면 신세계 맞아요. 그런데
    왜 굳이 document.getelementbyid 를 굳이 쓸필요 있나요 $D 이처럼 함수를 만들어 쓰면 되지ㅠ않을까요. jquery 와 js 의 관계는 c와 c++의 관계 와는 완전히 틀립니다. jquery한줄은 거의 js 한줄과 같습니다. jquery 사용하는 대부분의 사용자는 selector 애기를 많이 합니다. 편하죠 getelementbyid 와 근본적으로 차이가 나니까요. 하지만 queryselector를 사용하면 selector와 거의 차이가 없습니다. jquery 예찬의 문제는 다른 클라이언트 프레임웍을 대할때 차이가 나기도 합니다. 어떤 클라이언트 프레임웍이든 js 가 기초이고 대부분 wrapper 일뿐인데 말입니다.

    • Unikys 2016.12.01 06:28 신고  댓글주소  수정/삭제

      저랑 같은 생각이시군요. 댓글 감사합니다. 이제는 jquery만큼 잘나가는 프레임워크들이 많이 늘어서 그런지 최근에 댓글 다시는 분들이 제 의견에 동의하고 계시듯, 이 글을 처음 썼을 때 보다 jquery 맹신이 많이 없어지지 않았나 생각합니다. 최근의 이러한 오픈소스의 대폭발을 보고 있으면, 어찌되었든 결론은 무조건 자바스크립트라고 생각할 수 밖에 없어진 것 같습니다.

  • LeoKevin 2016.12.14 22:32 신고  댓글주소  수정/삭제  댓글쓰기

    일리있는 글 잘 읽었습니다.
    주변에서 하도 jquery 하길래 써보는 중인데, 편한듯하면서도 구지 이걸 쓸 필요까지야..하는 생각이 들기도 합니다.ㅎ

    저만 그런지 모르겠는데, jquery mobile을 쓸때 라이브러리가 로딩되기 전 짧은 시간이긴 하지만, 스타일이 입혀지지 않은 쌩html 이 보여지는 시간이 잠시있더라구요.
    요거 어찌 빠릿하게 않될까 고민입니다.ㅠㅠ

  • takeU 2017.06.25 14:00 신고  댓글주소  수정/삭제  댓글쓰기

    아무리 제이쿼리라해도 최신 프레임워크 VanillaJS만한게 없는것 같아요 ㅎ헤헤헤

질문이나 의견을 댓글로 달아 주세요

티스토리 툴바