
🧩 ORM이 왜 등장했을까? 지금까지 Python에서 SQL을 직접 작성해서 데이터베이스를 다뤘다. 이 방식은 분명 강력하지만, 프로젝트가 커질수록 여러 문제가 드러난다. 😵 SQL 중심 개발의 현실 아래 상황을 한 번 떠올려보자. 📄 SQL 문자열이 코드 곳곳에 흩어져 있음 🔧 테이블 컬럼이 바뀌면 SQL을 전부 수정해야 함 🐛 오타...

🧩 Design Pattern이란? Design Pattern은 소프트웨어 설계에서 반복해서 등장하는 문제를 해결하는 검증된 설계 방식이다. 한마디로 말하면, “이 상황에서는 보통 이렇게 설계하면 코드가 덜 망가진다”라는 경험의 축적이다. 🧠 왜 이름이 Design + Pattern일까? 단어 의미 Design 설계...

🌍 환경변수(Environment)란 무엇인가

Query와 객체지향의 패러다임 불일치 1. 패러다임(Paradigm)이란 📌 Paradigm은 '본보기/틀/사고방식' 같은 의미. 프로그래밍에서 패러다임은 문제를 바라보고 해결하는 기본 관점이다. [같은 퍼즐, 다른 전략] A: 가장자리부터 맞춤 B: 색깔별로 분류해서 맞춤 둘 다 퍼즐은 완성하지만 "접근 방식(패러다임)"이 다름 �...

🧩 ORM(Object-Relational Mapping)이란? ORM은 객체지향 세계(클래스/객체)와 관계형 DB 세계(테이블/행)를 이어주는 통역 시스템이다. 🌉 개발자는 Python 객체를 다루듯이 코드를 작성하고, ORM은 그걸 SQL로 번역해서 DB에 요청하고 결과를 다시 객체로 복원한다. 🧠 왜 ORM이 필요할까? 애플리케이...

🐍 SQLAlchemy 기본 문법

ORM을 쓰면 “테이블 사이 관계(외래키)”를 “클래스 사이 참조(객체 그래프)”로 옮겨 담게 된다.이 과정을 관계 매핑(Relationship Mapping) 이라 부른다.

Session 관리 (SQLAlchemy) DB 작업이 늘어나면 “Session을 어떻게 만들고, 어디까지 공유하고, 언제 닫을지”가 곧 장애 포인트가 된다. 이 글은 실무에서 자주 쓰는 Session 관리 패턴을 예제/실습 중심으로 정리한다. ✅ 오늘 목표 Session이 무엇인지 “대화 창구” 관점에서 이해 매번 Session(eng...