프레임워크라는 개념은 중요하다.
프레임워크 없이 구현되는 소프트웨어가 없기 때문이다.
지금 당장 서버를 만들어야 한다면 어떻게 해야할까?
인기있는 서버 프레임워크 중 하나를 골라 공부 할 것이다.
(Spring, Flask, Django 등)
우리는 더 이상 서버개발을 위해
TCP, Database 와 같은 저수준의 개념을 직접 구현하지 않는다.
이 사실은 한국의 유명한 테크회의 채용공고를 봐도 알 수 있다.

채용공고 속 사용기술을 한번 읽어보자.
Spring, JPA/Hibernate 등 다양한 프레임워크를 적극 사용하고 있다.
이제 소프트웨어 개발에 프레임워크는 꼭 함께한다.
이렇게도 중요한 개념인 프레임워크, 당신은 잘 이해하고 있는가?
아래에 대한 질문을 읽고 답해보자.
만약 모든 질문에 막힘없이 대답했다면, 이 글을 읽지 않아도 된다.
오늘은 프레임워크라는 개념에 대해 글을 적어보려고 한다.
지금부터 프레임워크가 세상을 지배하게 된 이유를 알아보자.
이제 누구나 스마트폰을 사용하던 세상이 되었다.
수 많은 소프트웨어가 등장했고 덕분에 우리의 삶은 편해졌다.
우리는 배달, 세탁, 금융, 쇼핑 등 일상의 문제들을 스마트폰으로 간편히 해결한다.
소프트웨어는 이제 일상 속에 없어서는 안되는 필수적인 존재다.
좋은 소프트웨어 서비스들 덕분에 점점 더 시장에 사용자들은 많아졌고
연쇄적으로 시장에 더 많은 서비스가 등장했다.
이제는 더 좋은 서비스를 사용자들이 골라서 쓰는 세상이다.
사람들의 선택을 받기 위해 소프트웨어는 더 좋아져야한다.
더 좋은 UI/UX, 더 다양한 기능을 가져야만 한다.
그리고 이 모든 것을 경쟁자보다 더 빨리 만들어야한다.
무한한 경쟁 속에서 회사들은 더 많은 사용자를 모아야한다.
더 많은 사람들을 모으기 위해 새로운 기능을 개발한다.
더 많은 사용자들이 쓸 수 있도록 기술력을 높인다.
이러한 과정을 거치면서 소프트웨어는 점점 더 복잡해졌다.
복잡한 상황에서도 경쟁자보다 더 빨리 소프트웨어를 개발해야한다.
이런 상황에서 프레임워크는 생존을 위한 필수 선택이다.
프레임워크는 적은 코드로 소프트웨어를 만들도록 하기 때문이다.
예전에는 서버를 만들기 위해서는 TCP와 같은 네트워크도 구현해야했고
DB와 연결하는 커넥션도 직접 구현해야했다.
하지만 지금은 Tomcat, JSP 등과 같은 프레임워크만 사용하면
우리는 네트워크가 어떻게 동작하는지 신경쓰지 않아도 된다.
경쟁에 이기기 위해 우리는 프레임워크에게 번거로운 일들을 맡겼다.
그리고 서비스의 핵심인 비지니스 로직에만 집중하고 있다.
이렇게 좋은 프레임워크를 사용하기 위해서는 조건이 있다.
프레임워크가 정한 약속 즉 프레임에 맞춰서 개발을 해야한다.
프레임워크는 우리를 개발하기 쉽게 만들어준다.
하지만 그 편리함을 누리기 위해서는 프레임워크가 정의한 약속을 익혀야한다.
그 약속을 잘 익혀야지만 적은 코드로 빠르게 소프트웨어를 구현할 수 있다.
그렇기에 많은 회사들이 프레임워크를 잘 아는 사람을 채용하려고 하는 것이다.
내용을 정리하며 글을 마치겠다.
PS. 이 글을 읽고 드는 생각으로 좋은 프레임워크에 대한 기준을 한번 적어보자
그 기준을 통해 프레임워크에 대한 이해도를 높일 것이다.
좋은 글 감사합니다.