본문 바로가기
스타트업 도전기/Level0

편의점 할인정보 사이트 제작기 No.2 - 스타트업 도전기

by jisungStory 2023. 1. 30.
반응형

 

 

 

http://jisungs.pythonanywhere.com/

 

CVSMARKET EVENT ITEMS

cu 페리오)이지클리닉칫솔 2,200 원

jisungs.pythonanywhere.com

 

편의점 할인정보 사이트 제작기  No.2

 

 전에 만들었던 편의점 할인정보 사이트를 업그레이트 해봤습니다. 처음 버전에서는 CU 편의점의 상품들만 정보를 제공했지만 이번에는 세븐일레븐의 상품 까지 제공하도록 구성해 봤습니다. 그리고 웹사이트를 공부 하면서 알게된 기능들도 몇가지 추가 해 봤습니다.

 바로 보이지는 않지만 제일 신경쓴 부분은 데이터베이스의 활용입니다. 검색 기능을 넣기 위해서는 데이터베이스를 웹사이트에 연결 하는 것이 가장 우선해야할 작업이었습니다. 하지만 데이터베이스의 운용에 대해서 이론적인 공부만 해왔던 탓에 실제로 적용해본것은 연습삼아 몇번 해 본것 외에는 없었습니다. 해보지 않은 것에 대한 막연한 두려움도 있었습니다. 원인을 찾지 못하고 결국 포기 했던 여러 지난 프로젝트 들이 그런 망설임을 제 마음 안에 박아 두었던 것 같습니다.

 프레임워크를 선택하는 것에도 신중해야 합니다. 업계에서 사용되고 있는 웹 프레임워크는 매우 다양합니다. 자신의 취향과 성향에 따라 알 맞는 프레임 워크를 고르는 것도 매우 중요한 작업중에 한가지 입니다. 저의 경우는 매우 많이 방황한 케이스 입니다. 처음 배운 언어와 프레임워크는 아무래도 자바스크립트와 그 언어를 기반으로 하는 노드 JS 였습니다. 사용성도 매우 좋았고 다양한 패키지들이 개발되어 있어 깊은 이해가 있다면 훌륭한 도구가 될 수 있을 거라고 생각했습니다. 하지만 시도했던 여러 프로젝트들이 실패로 돌아가면서 점점 관심에서 멀어 진 것도 사실입니다. 혼자 제작했던 여러 사이드 프로젝트들이 왜 실패 했는지 원인을 분석할 여유도 없이 다음 프로젝트들을 진행해야 했기 때문에 노드JS를 사용했을 때는 그저 막연함만이 가득했습니다.

 그 몇달간의 경험을 통해 도구의 훌륭함과는 별개로 그 도구를 사용하는 커뮤니티의 크기도 중요하다는 것을 배웠습니다. 스택오버플로우에 질문을 검색하더라도 사용자가 많을 경우 좀더 다양한 케이스에 대한 답변을 찾을 수 있습니다. 혹은 질문을 올리더라도 상대적으로 쉽게 답변을 얻을 수 있습니다. 노드JS는 그런 면에서 PHP 기반의 백엔드 프레임워크인 Larlable 과 python 기반의 django 에 비해서 상대적으로 적은 사용자가 사용함으로 인해 저 같은 초보 개발자가 접근하기 어려운 지점이 분명 존재 했습니다.

 

 그럼에도 불구하고 좀더 연구했더라면 하는 아쉬움은 남습니다. 좀더 연구를 깊게 하면 사용자가 적은 만큼 더 큰 경쟁력을 지니게 될 수도 있기 때문입니다. 다음 프로젝트를 구상할때 최근 유행하고 있는 MERN 스택으로 앱을 제작해봐야 겠습니다.

 제가 다음 시작한 프레임워크는 flask 였습니다. 파이썬으로 크롤링 이나 Open CV 같은 다양한 패키지를 접하고 연구 하다 보니 자연스럽게 웹프레임워크에 대해서도 연구하게 되었습니다. flask 역시 Node JS 만큼 단순한 웹프레임워크 였습니다. 쉽게 구성할 수 있고 필요한 기능들을 개발자가 원하는 대로 커스터마이징 할 수 있다는 것은 매우 큰 장점 이었습니다. 하지만 Node JS 와 마찬가지로 짧은 시간에 많은 프로젝트를 만드는데는 오히려 그런 부분이 단점으로 작용했습니다. 작성해야할 코드의 양이 크게 늘어 나기 때문입니다.

 그리고 단순한 프레임워크 일 수록 사용해야할 패키지의 갯수도 늘어 납니다. Node JS 와 flask 의 경우 사용자 로그인 비밀번호를 암호화 하기 위해서도 몇가지의 패키지를 설치 해야 합니다. 그리고 그리고 페이지네이션과 데이터베이스의 구성을 위해서도 좀 더 신경을 써줘야 하는 부분이 있었습니다. 물론 이런 사소한 기능들은 숙련자들에게는 삼십분의 고민거리도 되는 일이 아니겠지만 초심자에게는 하나 하나 부담으로 다가 오는 것들입니다. 어떤 패키지를 설치 해야 하는지 혹은 설치한 패키지의 버전과 현재 사용하고 있는 다른 패키지와 버전 충돌이 일어 나지는 않을지 하나 하나 신경써야 하는 일들입니다. 그리고 그런 문제들 때문에 결국 프로젝트가 실패 하는 경험들이 축적되다 보면 이 프레임워크를 사용해야 하는 동기를 점점 잃어 가게 됩니다.

 

 그렇게 해메다가 만다게된 프레임워크는 python의 Django 였습니다. 레거시 웹개발 언어인 PHP를 사용하여 구성하는 것이 어떻게 보면 합리적인 선택일지도 모르겠습니다. 하지만 지금까지 연구한 python 의 여러가지 프레임워크들의 축적된 경험이 이 언어에 대한 신뢰로 돌아 왔습니다. 그리고 최근 최첨단 분야로 급격한 발전을 이루고 있는 AI분야에도 많이 사용되고 있다는 지점이 이 언어를 연구하게된 이유기도 합니다.

 장고를 사용하다 보면 그 사용성과 안정성에 매우 놀랐습니다. 우선 웹의 전체 설정을 구성하는 세팅을 하나의 파일에서 조정할 수 있다는 점이 가장 크게 와 닿았습니다. 웹은 여러가지 기술의 집합입니다. 그 기술하나 하나가 개성이 강하기 때문에 그 기술들의 설정을 섬세하게 다뤄야 합니다. 그런 다양한 설정들을 하나의 파일에서 조정할 수 있다는 것이 매우 반가웠습니다. 뿐만 아니라 데이터 베이스 설정에 있어서도 각 앱에서 하나의 파일로 설정할 수 있다는 점 그리고 다양한 데이터베이스를 하나의 언어로 컨트롤 할 수 있다는 점이 좋았습니다.

 이번 편의점 할인정보 사이트도 장고를 활용하여 제작했습니다. 그동안 실패 했던 경험들이 무색하게 한번에 처리 되는 기능들을 바라 보면서 한숨이 나오기도 했습니다. 하지만 지금의 기술들을 계속해서 업그레이드 해 나간다면 다른 사용자 분들에게 조금이라도 도움이 되는 서비스로 발전해 나가지 않을까 조심스럽게 예상해 봅니다.

 

http://jisungs.pythonanywhere.com/

 

CVSMARKET EVENT ITEMS

cu 페리오)이지클리닉칫솔 2,200 원

jisungs.pythonanywhere.com

2023.01.20 - [스타트업 도전기/Level0] - 편의점 할인정보 사이트 제작기 - 스타트업 도전기

 

편의점 할인정보 사이트 제작기 - 스타트업 도전기

편의점 할인정보 사이트 제작기 이 프로젝트를 만들기로 마음먹은 건 블로그 때문이었습니다. 블로그를 만들어 가다 보면 무언가 답답함을 느낄 때가 많습니다. 티스토리는 분명 무료로 양질의

jisungs.tistory.com

 

2023.01.20 - [jisung's 이야기/정리하기] - 편의점 1월 행사 제품 정리 1+1

 

편의점 1월 행사 제품 정리 1+1

cu 편의점 행사 제품 정리 1+1 제품 부터 정리 해 봤어요 http://jisungs.pythonanywhere.com/ CVSMARKET EVENT ITEMS 좋은)내추럴코어슬날대14P 10,300 원 jisungs.pythonanywhere.com 편의점 행사 상품들을 정리 해 놓은 사

jisungs.tistory.com

 

반응형

댓글