본문 바로가기

React를 시작해보자

1) React가 뭐하는거지? 왜 필요한거지?

반응형

React는 뭘까?? React는 Front End 프레임웍중 하나이다.

그럼 Front End 프로임웍은 뭔가? Front End는 UI개발 부분을 말한다. JS , CSS , Html 등의 개발을 뜻한다.

 

그럼 Front End 프레임웍은 JS , CSS , Html 개발 프레임워크인가? 

UI 즉 사용자가 보는 화면을 개발하는데는 Web 디자인( image, css) 과 JS , HTML Web 개발 부분으로 

나눈다고 봐도 될 듯 하다.

 

Web 디자인은 말그대로 이미지를 포토샵으로 만들고 HTML을 디자인하고 CSS 라는 옷을 입히는 작업을 말한다.

이는 지금은 퍼블리셔라는 직업으로 좀 더 전문적이고 깊이 있는 부분으로 자리 잡았다고 생각 되어 진다.

 

그럼 Web 개발은 어떻게 변화 되었을까? Front end 와 Back end를 구분하기 이전 세대에는 

웹디자이너가 HTML에 CSS를 입혀 시안을 만들어 주면 그 시안에 프로그램 소스(jsp or php 등) 를 입히고 

각 UI 기능을 해야 하는 부분에 자바스크립트를 추가해서 기능을 구현하고 사용자가 보는 화면으로 개발하는 

방식이였다.

 

지금은 어떻게 변화 되었을까? 지금은 Front End 와 Back end가 완벽히 분리 되었다.

Front End에는 기존 jsp나 php 처럼 html 코딩 사이사이에 jsp 코드나 php 코드가 들어가지 않는다.

그리고 규모가 큰 프로젝트 일 수록 많은 UI Resource가 만들어 지게 되고 Web 개발자가 많으면 

많을수록 각자 다양한 방식으로 자바스크립트를 개발하게 되어 소스의 재활용이나 유지보수에 큰 문제가 발생하는 경우도 있다. 이를 해결하기 위해 나온것이 Front End 프레임워크이다.

 

React는 단연 이 Front End 분야에서 세계적으로 현재 가장 많은 lib와 개발자를 가지고 있다고 생각된다.

물론 Vuejs만의  장점을 어필하면서 조금씩 사용율이 늘어가는 추세지만 아직은 React가 단연 대세이다.

 

나는 FullStack 개발자이다. 지금도 혼자서 Web 시스템을 Bootstrap + Jquery 로 Front End쪽을 구성하고 

BackEnd로 Spring Boot를이용해서 Rest API 와 Spring Security 를 인증 or OAuth2.0 등 을 이용한 구성을하고 

docker를 이용한 MSA 아키텍쳐를 구성하고 DB설계는 초기 WEB시스템에 필요한 DB 설계부터 거의 

완성된 WEB 시스템의 구성을 혼자 설계 및 개발 할 수 있다.

 

하지만 트랜드는 빠르게 변해 간다. 많은 Front End 프레임워크가 필요에 의해 개발되어지고 있고 

BackEnd도 빠르게 변화 되어가고 있다. 

 

그래서 조금도 깊이 있고 내가 아는것은 무엇이고 모르는것은 무엇인지 알기 위해 지금부터 React를 이용한 

Web 프로젝트를 조금씩 시작하려고 한다.

 

모든 프로젝트별 소스는 Git Repo에 남기도록 하겠다.