데보션앱 소개페이지 바로가기
로그인 선택

신고하기

CLOSE
신고사유 (대표 사유 1개)
상세내용 (선택)
0/200
  • 신고한 게시글은 더 이상 보이지 않습니다.
  • 이용약관과 운영정책에 따라 신고사유에 해당하는지 검토 후 조치됩니다.
  • 허위 신고인 경우, 신고자의 서비스 이용이 제한될 수 있으니 유의하시어 신중하게 신고해 주세요.
(이 회원이 작성한 모든 댓글과 커뮤니티 게시물이 보이지 않고, 알림도 오지 않습니다.)

미리보기

커뮤니티

      1,234

      badge 23.06.15

      글 등록

      카테고리를 선택해주세요.

      DEVOTEE를 활성화 시키면
      지금 작성한 커뮤니티 글에 대해 1개의 댓글을 달아줍니다.

      버튼을 누르면 글 수정 시 ChatGPT가 작성한 댓글이 수정됩니다.

      임시저장함에 저장되었습니다. 저장일시 : 2022.5.17 14:29:08

      임시저장함

      제목을 선택하시면 이어서 작성이 가능하며,
      최대 20건까지 저장합니다.
      컨텐츠 유형, 제목, 저장일시, 삭제로 이뤄진 임시저장 목록
      컨텐츠 유형 제목 저장일 삭제

      데보션 블로그 게재 요청

      CLOSE
      • *
      • *

      본인인증

      효율적인 데보션 서비스 이용 및
      고객님의 소중한 개인정보보호를 위해
      본인인증을 진행해주세요. 본인인증 미 진행 시 로그인이 제한됩니다.
      본인인증 실패

      본인인증 로그인에 실패하였습니다.
      회원이 아니시거나 본인인증 등록이
      완료되지 않은 사용자입니다.

      회원정보 연결

      웹개발 추천 스택 및 비교 (Django, Bootstrap, FastAPI, React)

      심재훈 22.07.21
      6,771 7 2

      짧은 결론: 비IT기업에서는 유지보수가 쉬운 Django + Bootstrap 스택 추천


      개요

      인하우스 툴 웹개발로 여러 웹 프레임워크중 어느 것을 사용할지 고민될 때가 있습니다. 한번 기술 스택을 정하면 변경하기 어렵기 때문에 신중하게 골라야 합니다.

      그래서 도움을 드리고자 비교 분석글을 작성하게 됐습니다. 특히 제조업 등 IT기업이 아닌 곳에서 일하는 분들이 참고하면 좋을 것 같습니다!


      Django, FastAPI 공통

      파이썬 언어는 데이터 분석에 자주 쓰이기 때문에 제조업 엔지니어분들도 많이 배우고 있습니다. Django, FastAPI는 파이썬으로 쓴 웹 프레임워크기 때문에 쉽게 배울 수 있습니다.

      다른 대표적 웹프레임워크로 Spring이 있는데 자바로 쓰여 있어 접근성이 떨어집니다.



      Django

      1. 전문가가 개발해준 MTV 틀

      Django는 Boilerplate가 주어져있고 사용자들이 목적에 맞게 내용을 채우며 개발합니다. 그래서 제각각 개발한다고 하더라도 프로젝트의 구조 파악이 쉽습니다.

      2. All in one

      Django 하나만 배우면 다른 외부 라이브러리를 안배워도 됩니다.

      Django template을 배우면 HTML, CSS, Javascript 재활용을 할 수 있고 편하게 쓸 수 있습니다.

      Django ORM을 배우면 여러가지 DB를 통일된 문법으로 쉽게 이용할 수 있습니다.


      Bootstrap

      Bootstrap은 배울 내용이 많지 않습니다. 그저 HTML 태그에 class를 추가하면 됩니다. 그러면 멋진 프론트 디자인을 만들 수 있습니다.

      Bootstrap5: https://getbootstrap.com/docs/5.2/getting-started/introduction/


      FastAPI

      1. 높은 자유도 / 형식없음

      FastAPI는 단 몇줄로 웹앱을 구동할 수 있을만큼 가볍게 짜여져있습니다. Django에 비해 주어진 틀이 없다보니 자유롭습니다.

      하지만 이러한 높은 자유도는 오히려 유지보수에 방해가 될 수 있습니다. 파트마다, 개발자마다 다른 구조로 개발할 수 있기 때문입니다.

      그래서 FastAPI로 협업을 원활히 하려면 공용 Template을 여러개 만들고 꾸준히 관리해야합니다.

      2. ORM / DB connection

      DB와 연결할 때 외부 라이브러리를 이용해야합니다. SQL Alchemy, Tortoise ORM이 있습니다. NoSQL용 ORM도 있습니다.

      프로젝트마다 제각각의 ORM을 배워야 될 수 있습니다.


      React

      1. SPA

      React로 개발하면 Single Page Application (SPA)를 개발할 수 있습니다. 하나의 페이지에서 새로고침 없이 동적으로 내용을 바꿀 수 있는 기술입니다.

      SPA로 개발하게 되면 사용자는 좋은 경험을 할 수 있습니다. 그러나 정보 공유에 있어서는 내용이 바뀔 때마다 URL이 변경되는 구조가 낫습니다.

      인하우스용으로 개발한다고 하면 사용자 경험보다는 정보 공유 목적이 우선시 되는 경우가 많습니다.

      2. 도입 부담

      React는 Javascript Frontend Framework이고 초기에 배우기 어려운 것으로 알려졌습니다. 그래서 도입을 하게되면 순수 웹에 비해 팀에 부담이 될 수 있습니다.


      결론

      FastAPI, React가 최신 트렌드의 기술이긴 합니다. 하지만 인하우스 툴용 개발이라면 비교적 구 기술인 Django, Boostrap 선택이 좋아보입니다.

      Boilerplate가 주어져 프로젝트 구조가 통일되고, SPA보단 URL Routing이 낫기 때문입니다.




      참고] FastAPI vs Django 성능 차이


      댓글 0

      DEVOTEE를 활성화 시키면
      지금 작성한 댓글에 AI가 댓글을 달아줍니다.

      심재훈 님의 최신 블로그

      더보기
      동영상 기고하기