Web Analytics
본문 바로가기
자기계발 서비스/퀘스트(가제)

자기계발 서비스 퀘스트(가제) 개발 프레임워크 정하기

by 자기계발도우미 2023. 4. 3.

개발 프레임워크에는 여러가지가 있지만 어디에 어떻게 쓰이는지 이번 기회에 알아보려고 합니다.
제가 개발하려는 서비스는 아래와 같은 요구사항들을 만족해야되는데요.
https://selfdevhelper.tistory.com/15

 

자기계발 서비스 (가제) 퀘스트 서비스 요구사항 작성하기

만들 서비스 로스트아크와 함께 자기계발 서비스 구상하기 재밌는 게임 지금까지 로스트아크를 포함해서 게임을 꽤 많이 해왔는데 게임은 재미있습니다! ... 재밌어요! 한 때 회사를 다니면서도

selfdevhelper.tistory.com

 
기본적으로 프론트엔드와 백엔드로 전체 구조를 나눌 수 있고 각각 대표적인 프레임워크는 다음과 같습니다.
프론트엔드 : React(js), Vue.js, Angular(typescript), Svelte
백엔드 : Express(js), Laravel(PHP), Spring(Java), Django/Flask(Python), Rails(Ruby)
 
혹시 개발자가 아닌 분들을 위해 간단히 설명하자면
프론트엔드는 쉽게 말해서 웹이나 앱으로 사용자가 눈으로 볼 수 있는 것들을 만드는 기술 스택이라고 생각하면 되고
백엔드는 웹이나 앱으로 요청한 명령들을 연산해서 값을 전달해주는 기술 스택이라고 생각하면 됩니다.
그래서 웹/앱 서비스를 개발할 때는 프론트엔드 개발자, 백엔드 개발자, UI/UX 디자이너, 프로젝트 매니저 등등 각자 특화분야 전문가가 모여서 서비스를 만들게 되고 혼자서 모든 분야를 맡아서 한다면 풀스택 개발자라고 불립니다.
 
제가 선택할 기준은 프론트엔드는 다양한 기기에 대한 최적화, 빠른 속도가 될 것이고
백엔드에서는 높은 처리 속도와 낮은 지연 시간이 되겠습니다.
 

저도 웹/앱은 잘 모르기 때문에 chatGpt한테 물어보면서 알아봤는데요.
현업 개발자 친구한테 물어봤을 때는 Next.js가 대세인 것 같다고 합니다.
Next.js도 리액트기반에 서버사이드렌더링을 해서 빠르고 여러가지 기능도 제공한다고 합니다.
 
생각 같아서는 프론트엔드 Svelte에 백엔드 Rust로 최신 프레임워크로 개발하고 싶지만 좋은 프레임워크로 개발하는 것보다는 서비스를 빠르게 만들어내는 것이 우선순위가 높다고 생각하기 때문에 Next.js로 시작하고 Svelte로 넘어가거나 할 생각입니다.
백엔드도 Express로 해두고 Rust로 넘어갈 생각입니다.
개인적으로 C++를 주로 쓰다가 Rust를 써볼 기회가 있었는데 그 때의 개발경험이 너무 좋았어서 Svelte도 웹개발에 있어서 Rust같은 존재가 아닐까 하는 기대감을 가지고 있습니다.
그래도 프론트엔드의 웬만한 프레임워크들이 죄다 리액트 기반 뭐시기라고 되어있는 것을 보니 무시할 수 없네요.
 
아무튼 대략 초기 프레임워크를 Next.js + Express.js로 하기로 했습니다!
 
 
다음은 유저 시나리오입니다.
https://selfdevhelper.tistory.com/19

 

자기계발 서비스 퀘스트(가제) 유저 시나리오

유저 시나리오 자기계발 서비스 퀘스트(가제) 개발 프레임워크 정하기 개발 프레임워크에는 여러가지가 있지만 어디에 어떻게 쓰이는지 이번 기회에 알아보려고 합니다. 제가 개발하려는 서비

selfdevhelper.tistory.com

 

내용 추가

next.js 13 내용을 찾아보니까 12버전이랑 문법 같은 것이 많이 바뀌었고 서버에서 데이터 가져오는 것은 엄청 잘 되어있는데 서버로 데이터를 보내는 기능 부분 문법이 아직 불편하다고 합니다.
이제 바뀔 12버전을 공부할 순 없고 13버전 성숙도가 올라간 후에 쓰는게 맞을 것 같은데요.
원래 끌렸던 스벨트를 먼저 구경해보도록 하겠습니다. 

 

내용 추가

svelt + cloudflare 구조로 진행하던 도중에 기능동작이 안하는데
로그분석을 못하는 상황이 생겨서 다시 환경을 바꾸고 진행하고 있습니다.
cloudflare 대신 AWS EC2를 쓰기로 했고 svelt는 ChatGPT가 잘 모르는 것 같아서
다시 Next.js로 돌아오게 되었습니다.

댓글