끄적끄적 코딩 공방
tailwind CSS : 유틸리티 기반 CSS 프레임워크
# 설치npm install tailwindcssnpx tailwindcss initTailwind CSS는 유틸리티 클래스를 기반으로 한 혁신적인 CSS 프레임워크입니다. 미리 정의된 클래스를 조합하여 HTML 내에서 직접 스타일을 구성할 수 있어 생산성을 크게 높일 수 있습니다. 2017년에 Adam Wathan에 의해 만들어진 이 프레임워크는 CSS 작성 방식에 혁명을 가져왔으며, 현재 많은 기업과 개발자들이 채택하고 있습니다.기본 설정// tailwind.config.jsmodule.exports = { content: ["./src/**/*.{html,js}"], theme: { extend: {}, }, plugins: [],}/* main.css */@tailwind base;@..
KoNLPy: 한국어 자연어 처리 라이브러리
# 설치pip install konlpyKoNLPy란?KoNLPy(Korean Natural Language Processing in Python)는 한국어 텍스트 처리를 위한 파이썬 라이브러리입니다. 형태소 분석, 품사 태깅, 정규화 등 다양한 한국어 자연어 처리 기능을 제공합니다.주요 형태소 분석기 비교분석기속도정확도특징Okt (구 Twitter)중간중간고유명사 인식, 신조어 처리Mecab매우 빠름높음C++로 구현, 빠른 처리 속도Hannanum느림중간자바 기반, 상세한 품사 분류Kkma매우 느림높음정교한 분석, 복합명사 인식Komoran중간높음사용자 사전 확장 용이기본 사용법from konlpy.tag import Okt, Mecab, Hannanum, Kkma, Komoran# Okt 형태소 분석..
FastAPI Response Set-Cookie와 HttpOnly 보안 구현
FastAPI에서 HttpOnly 쿠키를 설정하여 보안을 강화하는 방법을 알아보겠습니다.기본 쿠키 설정from fastapi import FastAPI, Responsefrom fastapi.responses import JSONResponseapp = FastAPI()@app.post("/login")async def login(response: Response): # 기본적인 쿠키 설정 response.set_cookie( key="session", value="abc123", httponly=True, secure=True, samesite='lax', max_age=1800 # 30분 ) return..
Python JSON 라이브러리 비교: json vs ujson vs orjson
# 설치pip install ujsonpip install orjson각 라이브러리의 특징import jsonimport ujsonimport orjson# 기본 jsondata = {"name": "John", "age": 30}json_str = json.dumps(data)json_obj = json.loads(json_str)# ujsonujson_str = ujson.dumps(data)ujson_obj = ujson.loads(ujson_str)# orjsonorjson_bytes = orjson.dumps(data)orjson_obj = orjson.loads(orjson_bytes)성능 비교import timeitimport datetimetest_data = { "string": "..
MongoDB Aggregate 파이프라인
MongoDB의 aggregate 파이프라인은 데이터를 처리하고 분석하는 강력한 도구입니다. 데이터를 단계별로 처리하여 원하는 결과를 얻을 수 있습니다.기본 구조db.collection.aggregate([ { $match: { /* 조건 */ } }, { $group: { /* 그룹화 */ } }, { $sort: { /* 정렬 */ } }])$match: 데이터 필터링// 가격이 1000 이상인 상품 필터링db.products.aggregate([ { $match: { price: { $gte: 1000 }, category: "electronics" } }])$group: 데이터 그룹화// 카테고리별 평균 가..
FastAPI Security: API 보안 구현
# 기본 설치 (FastAPI에 포함되어 있음)pip install fastapi[all]pip install python-jose[cryptography] # JWT 토큰용pip install passlib[bcrypt] # 비밀번호 해싱용OAuth2 비밀번호 인증from fastapi import FastAPI, Depends, HTTPException, statusfrom fastapi.security import OAuth2PasswordBearer, OAuth2PasswordRequestFormfrom jose import JWTError, jwtfrom passlib.context import CryptContext# 기본 설정oauth2_scheme = OAuth2PasswordBeare..
SlowAPI: FastAPI에서 Rate Limiting 구현
# 설치pip install slowapipip install redis # Redis 백엔드 사용시기본 Rate Limiting 설정from fastapi import FastAPIfrom slowapi import Limiter, _rate_limit_exceeded_handlerfrom slowapi.util import get_remote_addressfrom slowapi.errors import RateLimitExceededlimiter = Limiter(key_func=get_remote_address)app = FastAPI()app.state.limiter = limiterapp.add_exception_handler(RateLimitExceeded, _rate_limit_exceed..