맨위로가기

마이크로프레임워크

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

마이크로프레임워크는 웹 애플리케이션 개발을 위한 경량 프레임워크이다. 다양한 프로그래밍 언어로 구현되어 있으며, 파이썬의 Flask, 루비의 Sinatra, Node.js의 Express.js, PHP의 Slim 등이 있다.

더 읽어볼만한 페이지

  • 웹 프레임워크 - 드루팔
    드루팔은 드리스 바이테르트가 개발하여 2001년 공개된 PHP 기반의 오픈 소스 콘텐츠 관리 시스템으로, 모듈과 테마를 통해 기능 확장이 가능하며 다양한 기관에서 활용되고 활발한 커뮤니티를 가지고 있다.
  • 웹 프레임워크 - 실버스트라이프 CMS
    실버스트라이프 CMS는 PHP로 제작된 오픈 소스 콘텐츠 관리 시스템으로, 웹사이트 및 웹 애플리케이션을 개발하고 관리하는 데 사용되며, MVC 패턴과 Sapphire ORM 프레임워크를 활용하여 사용자 친화적이고 확장 가능한 플랫폼을 제공한다.
마이크로프레임워크
개요
유형소프트웨어 라이브러리
목적웹 애플리케이션 개발 간소화
특징유연성, 경량성, 최소한의 기능 제공
장점빠른 개발, 작은 설치 공간, 맞춤화 용이
단점풀스택 프레임워크에 비해 기능 부족, 추가적인 코드 작성 필요
주요 기능
라우팅URL 매핑 및 요청 처리
템플릿 엔진동적 웹 페이지 생성
ORM (선택 사항)데이터베이스 상호 작용 단순화 (일부 마이크로프레임워크는 ORM을 포함하지 않음)
미들웨어요청 및 응답 처리 파이프라인 제어
예시
PythonFlask
Bottle
PHPSlim
Lumen
JavaScript (Node.js)Express.js
Hapi
RubySinatra
비교
풀스택 프레임워크장점: 풍부한 기능, 개발 생산성 향상
단점: 더 큰 설치 공간, 학습 곡선 높음
마이크로프레임워크장점: 유연성, 빠른 개발, 작은 설치 공간
단점: 기능 부족, 추가적인 코드 작성 필요
활용 사례
API 개발데이터 제공 및 상호 작용을 위한 API 구축
간단한 웹 애플리케이션블로그, 개인 웹사이트 등
마이크로서비스분산 시스템 아키텍처 구축

2. 의사 코드 예

php

require "foo.php";

foo::get("/hello/{name}", function($name) {

return "Hello $name!";

});

```

다음은 마이크로프레임워크의 동작 방식을 보여주는 간단한 의사 코드이다. `<syntaxhighlight>` 태그는 허용되지 않는 문법이므로 제거했다. 코드 블록은 ` ```` ``` ` 문법을 사용하여 표현했다.

3. 마이크로프레임워크 목록

다양한 프로그래밍 언어로 구현된 마이크로프레임워크들이 존재한다.

프로그래밍 언어프레임워크 목록
Python
Ruby
Node.js
ScalaScalatra[2]
PHP
Java
KotlinKtor[2]
TclToolatra


3. 1. Python


  • Bottle
  • Falcon[2]
  • Flask

3. 2. Ruby

3. 3. Node.js

3. 4. Scala

Scalatra[2]

3. 5. PHP

php

require "foo.php";

foo::get("/hello/{name}", function($name) {

return "Hello $name!";

});

```

PHP를 위한 마이크로프레임워크는 다음과 같다.

  • Lumen
  • Slim
  • Silex

3. 6. Java


  • Spark
  • Jooby
  • Javalin
  • Jodd
  • Helidon
  • Pippo
  • Rapidoid
  • Armeria
  • Akka HTTP
  • Ratpack

3. 7. Kotlin

Ktor는 Kotlin으로 작성된 마이크로프레임워크이다.[2]

3. 8. Tcl

Toolatra for Tcl

참조

[1] 웹사이트 Full-Stack Framework or Microframework, Laravel or Lumen? https://belitsoft.co[...] 2016-09-13
[2] 웹사이트 Falcon | The minimal, fast, and secure web framework for Python https://falconframew[...] 2021-10-25
[3] 웹인용 Full-Stack Framework or Microframework, Laravel or Lumen? https://belitsoft.co[...] 2016-09-13



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com