개발환경 - 웹 프레임워크의 종류 (언어별)


    웹 프레임워크란 무엇이고, 어떤 언어를 선택해야 할까요? 이 글에서는 웹 프레임워크의 개념부터 언어별 대표 프레임워크까지 한눈에 정리합니다.



    웹 프레임워크란?

    웹 애플리케이션을 처음부터 직접 만들면 어떨까요? DB 연결, 사용자 인증, URL 라우팅, 보안 처리 등 반복적인 코드를 작성하다 보면 정작 핵심 기능에 집중하기 어려워집니다.

    웹 프레임워크(Web Application Framework)는 이런 반복 작업을 미리 구조화해둔 도구입니다. DB 연동, 템플릿 렌더링, 코드 재사용을 쉽게 할 수 있도록 설계되어 있어 개발자는 비즈니스 로직에만 집중할 수 있습니다.

    MVC 아키텍처 이해하기

    대부분의 웹 프레임워크는 MVC(Model-View-Controller) 패턴을 따릅니다. 사용자 인터페이스(View)와 데이터 처리(Model)를 분리해 유지보수를 쉽게 만드는 구조입니다.

    MVC

    주요 웹프레임워크 - 언어별


    CLI 기반

    ASP.NET - 마이크로소프트가 개발한 엔터프라이즈급 프레임워크. 동적 웹사이트·웹 앱·웹 서비스 개발에 강점

    PHP

    Laravel - 가장 대중적인 PHP 프레임워크. MVC 아키텍처와 모듈식 패키징, 풍부한 생태계가 강점. Eloquent ORM, Blade 템플릿 엔진, Artisan CLI 등 풍부한 도구가 개발 경험을 크게 향상시킵니다.

    CodeIngiter - 간결한 인터페이스와 가벼운 무게. 빠른 프로토타이핑과 소규모 프로젝트에 적합.

    Symfony 재사용 가능한 컴포넌트. 스프링에 영감을 받은 PHP 컴포넌트 모음. Laravel 내부에서도 일부 Symfony 컴포넌트를 사용.

    JAVA

    Spring 전자정부 표준프레임워크. 대한민국 공공기관 웹 서비스 표준. 의존성 주입(DI)과 AOP 기반의 강력한 엔터프라이즈 프레임워크. Spring Boot 등장 이후 초기 설정 부담이 크게 줄었습니다.

    Struts - MVC 모델2 기반의 전통적인 Java 웹 프레임워크. 레거시 엔터프라이즈 환경에서 여전히 활용.

    Javascript

    ❶ AngularJS - 구글이 2010년 배포한 공개소스로 모델, 뷰, 컨트롤러 (MVC) 개발 방식을 지원 웹 애플리케이션 개발에 사용되는 프레임워크  

    ❷ Node.js - 자바스크립트를 활용 서버쪽까지 제어할 수 있는 프레임워크. 패키지 매니저인 npm을 통해 모듈을 다운 받아서 조합만 해도 웹 서비스 구현 가능

    ❸ Vue.js - 사용자 인터페이스를 만들기 위한 프로그레시브 프레임워크

    Python

    Django - 강력한 ORM과 관리자 패널 자동 생성. 데이터베이스 기반 웹사이트 구축에 최적화된 풀스택 프레임워크.
    • 장점 - 강력한 내장 라이브러리, 간결한 문법, 빠른 개발 속도, 보안 기능 내장
    • 단점 - 모바일 앱 API 서버로는 FastAPI나 Flask보다 무거울 수 있음, 단순 프로젝트엔 과잉 스펙
    • 추천 용도 - 데이터 중심 웹앱, CMS, 스타트업 MVP, AI/ML 서비스 백엔드

    Ruby

    Ruby on Rails - CoC(Convention over Configuration)와 DRY(Don't Repeat Yourself) 원칙으로 반복 코드를 획기적으로 줄입니다. 특히 데이터베이스 마이그레이션과 scaffold 기능으로 초기 개발 속도가 매우 빠릅니다. GitHub, Shopify, Airbnb의 초기 스택이 Rails였습니다.


    웹 프레임워크 선택


    국내 취업 / 공공기관
    • Spring (Java) 
    • 전자정부 표준, 기업 수요 높음

    빠른 MVP / 스타트업 
    • Django 또는 Rails 
    • 개발 속도 빠름, 생태계 풍부

    PHP 기반 웹사이트 
    • Laravel 
    • 가장 대중적, 커뮤니티 강함

    엔터프라이즈 / MS 환경
    • ASP.NET 
    • Windows 서버, C# 생태계 활용

    AI/ML 서비스 연동 
    • Django / FastAPI 
    • Python 데이터 생태계와 통합 용이

    댓글 쓰기

    0 댓글