node.js 공부 중입니다. 탬플릿 엔진 Jade & EJS 와 NoSQL MongoDB & OrientDB 에 대해서 궁금합니다.

조회수 5710회

Node.js 공부 중입니다.

질문이 매우 간단하지만, 중요한 부분인 것 같아 질문 드립니다.

  1. 탬플릿을 사용하여 개발하려고 하는데, jade 와 ejs 중 어느 것을 공부해야할지 선택하는데 어려움이 있습니다.

  2. 마찬가지로, DB도 node.js와 연동하여 사용할 것인데요. 웹 사이트를 개발하는데에 MongoDB 와 OrientDB 중 고민입니다.

실무 개발은 해보지 않아서, 현업에서 어떻게 사용하는, 어떤 것을 범용적으로 사용하는지, 장 단점이 궁금합니다.

ps. 둘 중 하나를 선택하여 공부하는데에 도움이 될 수 있게...

1 답변

  • 좋아요

    3

    싫어요
    채택 취소하기

    jade vs ejs

    기능상으로만 보면 jade가 훨씬 앞섭니다. block을 정의하거나 mix-in으로 여러 블럭을 섞는 등 보다 더 선언적이며 높은 수준의 추상화가 가능합니다. 그러나 반면 순수 HTML과는 많이 이질적이고, bootstrap등과 같이 복잡한 구조의 HTML을 표현할 때는 들여쓰기 기반이 오히려 가독성을 해칠 수 있습니다. 마지막으로 선언적 문법이 항상 장점만 있는 것이 아니라서 쉬운 문제를 돌아가야 하는 경우가 발생할 수 있습니다.

    ejs는 이름 그대로 HTML안쪽에 코드를 포함시키는 형태이기 때문에 순수 HTML에 비해 이질감이 덜 하며 학습곡선이 아주 낮은 장점이 있습니다. 다만 아주 빠르게 HTML이 스파게티화 될 수 있습니다.

    ejs vs jade는 어떤 한쪽을 선택함으로서 포기해야 하는 부분이 많이 없기 때문에 취향 차이로 경정되는 경우가 많습니다.

    실무에서라면 HTML마크업을 당당해 주시는 퍼블리셔분이 계신 구조라면 ejs를 택하시는게 유리할 것이고, 직접 마크업을 계속 작업해야 한다면 jade를 선택하는게 좋을 것이라 생각됩니다.

    mongo db vs oriend db

    이 부분은 제가 경험이 많지는 않은점 참고해서 읽어주세요. 먼저 두 디비는 성격이 조금 다릅니다.

    기능적으로 보면 oriend(graph db)mongo(document db)의 슈퍼셋 입니다. 또한 전자의 경우 acid 수준의 트랜젝션과 쿼리 언어로 sql지원 등 기존 rdb가 제공하는 몇가지 기능을 함게 제공하는데 반해 후자는 그렇지 않습니다.

    조금 더 자세한 차이점은 몽고vs오리엔트를 참고하시는게 좋을것 같습니다.

    mongo db의 경우 초반에 문제가 아주 많았던 것으로 들었는데, 최근(v3.0) 버전은 많이 개선 된 것으로 알고 있고, 무엇보다 몇몇 큰 서비스에서 사용된 레퍼런스가 있습니다.

    성공적인 레퍼런스는 기술 선택에 있어서 매우 매우 중요합니다.

    p.s: 공부하시는 것이라면 하나를 선택해서 하지 마시고 모두 해보시는게 좋습니다.

    • (•́ ✖ •̀)
      알 수 없는 사용자
    • (•́ ✖ •̀)
      알 수 없는 사용자
    • 좋은 말씀 감사드립니다. 공부를 하면서 서비스를 만들고 있어서 둘 다 해보지 못하고 질문하게 되었습니다. mongo db 와 orient db 가 심히 고민되는 이유는 전자가 후자보다 인터넷에 정보가 훨씬 많더라구요. 강력함은 후자인 것 같으나... 아무튼 감사드립니다. 상남자 2016.4.9 13:18
    • @상남자 서비스에 적용 예정이시라면 `mongo`를 추천드립니다. 적어주신것 처럼 자료도 많고 성공적 레퍼런스도 몇 있으니까요. 알 수 없는 사용자 2016.4.9 13:50
    • 그래야겠네요!! 아무래도 구현하려면 정보가 많아야하니까... 정말 감사드립니다!! 상남자 2016.4.9 16:19

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)