강의모드 종료
← course overview
chapter 04lesson 4.7public

냅다 바이브코딩하면서 개발지식 익히기

라이브러리와 프레임워크

냅다 바이브코딩하면서 개발지식 익히기 - 6 - 라이브러리와 프레임워크

얻어갈 것

  • 라이브러리와 프레임워크를 대략 구분합니다.
  • 처음 프로젝트에서 "큰 틀"과 "추가 도구"를 나눠 말할 수 있게 됩니다.
  • 만들려는 소프트웨어 유형에 따라 언어와 프레임워크 선택이 달라진다는 감각을 잡습니다.

라이브러리와 프레임워크

라이브러리

  • 라이브러리는 필요한 기능만 가져다 쓰는 코드 묶음입니다.
  • 날짜 계산, HTTP 요청, 차트처럼 반복되는 기능을 직접 만들지 않고 가져다 씁니다.
  • 핵심 감각은 "내 코드가 필요한 도구를 부른다"입니다.

프레임워크

  • 프레임워크는 앱의 뼈대, 규칙, 실행 흐름을 미리 정해둔 틀입니다.
  • 파일 구조, 라우팅, 빌드, 배포 방식처럼 프로젝트의 기본 모양에 영향을 줍니다.
  • 핵심 감각은 "내가 프레임워크의 규칙 안에 코드를 넣는다"입니다.
프레임워크는 기능이 올라가는 기반이고, 라이브러리는 이미 구현된 기능을 밖에서 가져와 붙이는 도구에 가깝습니다.

왜 중요한가

  • AI는 널리 쓰이고 예제가 많은 스택일수록 더 안정적으로 코드를 제안합니다.
  • "Next.js로", "Supabase 붙여서", "차트 라이브러리 써서"처럼 틀과 도구를 말해주면 결과가 덜 흔들립니다.

소프트웨어 유형마다 출발점이 다릅니다

프로그래밍 언어를 먼저 외워서 고르는 것보다, 보통은 무엇을 만들 것인지가 먼저입니다. 웹사이트, 모바일 앱, 게임, 데이터 자동화처럼 소프트웨어 유형이 달라지면 자주 쓰는 언어와 프레임워크도 같이 달라집니다.

예를 들어 웹앱을 만들 때는 JavaScript나 TypeScript 생태계에서 React, Next.js 같은 프레임워크를 자주 만납니다. iPhone 앱을 네이티브로 만들면 Swift와 SwiftUI를 보게 되고, Android 앱은 Kotlin과 Android 프레임워크를 보게 됩니다. 게임에서는 Unity와 C#, Unreal Engine과 C++ 같은 조합을 자주 봅니다.

만들 것자주 만나는 언어자주 만나는 큰 틀
웹사이트·웹앱JavaScript, TypeScriptReact, Next.js
서버 APIJavaScript, TypeScript, Python, JavaExpress, NestJS, FastAPI, Spring
iPhone 앱SwiftSwiftUI, UIKit
Android 앱Kotlin, JavaAndroid SDK, Jetpack Compose
게임C#, C++Unity, Unreal Engine
데이터 자동화Pythonpandas, Jupyter, FastAPI

이 표를 외우자는 뜻은 아닙니다. 중요한 감각은 개발자들이 보통 “언어 하나”만 고르는 게 아니라, 만들 소프트웨어 유형에 맞는 생태계와 프레임워크를 먼저 잡는다는 점입니다. 그다음 프레임워크가 정한 폴더 구조, 실행 방식, 라우팅 규칙 안에서 코드를 작성합니다.

라이브러리는 그 뒤에 붙는 경우가 많습니다. 예를 들어 Next.js로 웹앱의 큰 틀을 잡고, 날짜 처리가 필요하면 날짜 라이브러리를 넣고, 차트가 필요하면 차트 라이브러리를 넣고, 결제가 필요하면 결제 SDK를 붙이는 식입니다.

선택할 때 보는 순서

  • 먼저 만들려는 소프트웨어 유형을 정합니다.
  • 그 유형에서 많이 쓰는 언어와 프레임워크 후보를 봅니다.
  • 프레임워크로 프로젝트의 큰 틀을 정합니다.
  • 그 안에서 코드를 작성하고, 꼭 필요한 기능에만 라이브러리를 추가합니다.
  • 처음에는 메이저하고 문서가 많은 선택지를 우선합니다.

AI에게 시켜볼 일

  • 아래 P1 프롬프트로 큰 틀과 추가 도구를 나눠 고르게 합니다.
P1프레임워크와 라이브러리 선택 기준 잡기
내가 만들려는 앱은 "OOO"야.

조건:
- MVP에서는 OOO 기능까지만 만든다.
- 예제와 문서가 많은 메이저 스택을 선호한다.
- 바이브코딩으로 만들 예정이다.

정리해줘:
- 이 앱이 어떤 소프트웨어 유형인지
- 그 유형에서 자주 쓰는 언어와 프레임워크 후보
- 추천 프레임워크 1개와 이유
- 꼭 필요한 라이브러리만
- 지금은 넣지 않아도 되는 라이브러리
- 나중에 바꾸기 어려운 결정

마무리

  • 라이브러리와 프레임워크는 깊게 외우기보다 결정의 무게만 구분하면 됩니다.
  • 바이브코딩에서는 "무엇을 만들지"와 함께 "어떤 언어·프레임워크 생태계 위에서 만들지"를 말해주는 게 중요합니다.