본문 바로가기

1인개발자

<1인개발자로 살아남기> 5일차 : 백엔드 프레임워크 비교분석하기

반응형

앞전 포스팅에서 로드맵을 작성했지만, 한번 더 프레임워크에 대해서 자세히 살펴보려고 합니다.

관련한 정보를 수집해보면서 귀결되는 결론은 "하고 싶은 것을 먼저 정하고 목적에 맞게 도구를 선택해야 한다."


[언어 + 프레임워크의 장단점]

1. 자바 + 스프링 : 대기업 취업을 준비한다면, 고성능을 원한다면

자바스프링
자바스프링

* 장점 :

 1. 대기업에서 주로 사용 :  그래서 오래된 언어다 뭐다 해도 꾸준하고 높은 소득을 가져다주는 언어입니다.

 2. 강의나 책의 숫자를 찾아보더라도 굉장히 메이저 하다라는 느낌을 받을 수 있습니다.

 3. 그만큼 강력한 보안기능과 높은 성능을 낼 수 있는 것 같습니다..

 

* 단점 : 

- 높은 난이도 (학습곡선이 불리하다고들 표현하시는 것 같습니다.)

 

 


2. 노드JS + Express / Koa : 스타트업 취업과 빠른 프로덕트 빌딩을 원한다면

노드JS와 익스프레스
노드JS와 익스프레스

 

* 장점 : 

1. 스타트업에서 주로 사용 (= 개발속도가 빠르다.)

2. 자바스크립트를 사용하는 프론트와 동일 언어를 사용하기 때문에 : (저는 아직 써본적 없지만) 프론트엔드 프레임워크인 리액트로 작업할 때도 편리하다고 합니다. (직접 작업하기에도, 의사소통하기에도)

3. 리얼타임 프로젝트 생성에 유리하다고 합니다.

 

* 단점 : 

1. 대기업 취업 문턱?

 

* 사용예시 : 페이팔


 

3. 파이썬 + Flask, Django : 파이썬이 좋고 빠른 프토로타입 구축을 원한다면.

장고
장고

*  장점 : 

1.  빠른 개발속도 : 서비스 프로토타입을 빠르게 생성할 수 있어서 스타트업에서 많이 사용한다고 합니다.

(일단 생성한 뒤에 사업이 잘 되면은 자바 등으로 언어를 바꾸는 작업을 하기도 하는데 이렇게 하는 이유는 성능 때문이라고도 볼 수 있겠지만 장고를 하는 사람이 많지 않아서라는 의견들도 발견했습니다. 서비스를 고도화하고 싶은데 그럴 능력이 되는 사람이 많지 않다는 뜻이겠죠?)

 

2. 쉬운 언어난이도 : 

다른 2개 언어에 비해 낮은 난이도를 가졌습니다.

다만, 언어문법은 길어봤자 6개월 공부할 거리인 반면, 그 이후의 프레임워크 등의 공부는 공부량이 훨씬 많기 때문에 언어문법의 난이도로만 언어를 선택하지 말라고 이야기해주시는 분도 계셨습니다.

 

3. AI 라이브러리

데이터 분석, 머신러닝과 관련해서는 파이썬의 사용률이 압도적입니다.

하지만 자신이 연구에 목적이 있지 않고 구축된 AI 서비스의 API를 활용할 것이라면 파이썬에 얽매이지 않아도 됩니다. 자바스크립트로도  API는 모두 사용가능하니까요.

 

* 단점 :

 - 채용공고가 적습니다.

 - 파이썬은 기본적으로 속도가 느린 언어입니다.

 - 대형트래픽 핸들링에 불리하다고 합니다.

 

 (참고로, Flask에 비해서 Django는 모듈화가 과도하게 진행되어 있어 웹의 구조에 대해 공부할 기회를 주지 않으니 시작은 파이썬을 주무기로 한다면 Flask로 시작하라는 글을 봤습니다.)

 

* 사용예시 : 인스타그램, pinterest, 

 

 

 


결론

개발언어가 아무리 편하더라도.. 

기술적인 교육자료가 대부분 자바스프링 아니면 노드JS에서 설명이 되어 있어서 ! 

1. 스타트업 2. 프론트/백 한방에 3. 기술교육도 수강을 염두 4. 파이썬은 언제든지 배울 수 있다는 마음으로 'NODEJS + 프레임워크'로 결정 !

반응형