분류 전체보기71 [Python] sort, sorted (Timsort, 팀 소트) 문득 Python의 Sequence.list(), sorted() 는 어떤 정렬 알고리즘을 쓰는 지 궁금해졌다.결론부터 말하면 둘 다 Timsort를 사용한다. (3.11 이후는 Timsort 변형인 Powersort)1. sort() vs sorted() 함수사용 형태원본 변경반환값list.sort()리스트 메서드ONonesorted()내장 함수X정렬된 새로운 리스트 sort 함수는 List.sort(*, key=None, reverse=False) 형식으로 "리스트형의 메소드"으로 리스트_객체 값을 직접 수정한다.sorted 함수는 sorted(iterable, /, *, key=None, reverse=False) 형식으로 "파이썬 기본 내장 함수"으로 원본 값은 그대로이고 정렬 값을 반환한다.. 2025. 5. 22. [Supabase] Supabase SDK -> Edge function ->서버까지 백엔드는 Supabse 프론트는 SwiftUI로 구성했다.처음엔 간단히 시작했지만, 예상치 못한 문제들과 함께 백엔드 아키텍처가 몇 번 바뀌게 됐다. 1. Supabase SDK Swift용 Supabase SDK를 직접 사용해 iOS 앱에서 데이터를 다루었다. 장점1. 빠른 구현 가능Supabase 에서 프로젝트를 생성 -> 테이블 설계 -> RLS 설정을 하면 해당 테이블에 대한 배포가 끝난다.백엔드 서버 작업 없이 DB 접근이 가능하다.예시 : https://du-sungchan-24k.tistory.com/entry/Swift-Supabase-OAuth-Sign-in-with-Apple2. OAuth 및 인증 관리Apple OAuth, Google OAuth 등 인증 플로우가 SDK에 포함되.. 2025. 5. 14. [Database] CAP 이론 (CAP Theorem) 1. CAP 이론🎯 핵심 한 줄 요약분산 시스템에서 일관성, 가용성, 분할허용성 중 2개만 선택 가능📖 기본 개념CAP란?C: Consistency (일관성) - 모든 노드가 같은 데이터A: Availability (가용성) - 항상 응답 가능P: Partition Tolerance (분할허용성) - 네트워크 끊어져도 동작왜 3개 다 안 되나?네트워크 분할 시 → 일관성 vs 가용성 중 선택해야 함 ⚖️ 3가지 조합선택의미사용 용도예시CP정확성 우선 서비스 중단 허용돈, 의료MongoDB, RedisAP속도 우선 데이터 차이 허용SNS, 영상Cassandra, DynamoDBCA이론상만 존재 분산환경 불가단일서버MySQL, PostgreSQL 💡 실무 선택법CP 선택 → 정확해야 하는 것은행 (.. 2025. 5. 12. [FastAPI] N+1 Problem 1. N+1 ProblemORM으로 관계형 데이터를 가져올 때, 한번의 쿼리(N) 로 가져온 각 항목에 대해 추가적인 쿼리 (+1)가 반복 실행되는 문제예시블로그 글(Post) 10개를 가져오면 (SELECT * FROM post)각 글의 작성자(User)를 가져오기 위해 추가로 10개의 쿼리 (SELECT * FROM user WHERE id = ?) 실행됨 2. FastAPI + SQLAlchemy 예제모델 정의# models.pyfrom sqlalchemy import Column, Integer, String, ForeignKeyfrom sqlalchemy.orm import relationshipfrom app.database import Baseclass User(Base): __tab.. 2025. 5. 7. [Swift + Supabase] 인증, 약관 동의 구현 1. Supabase 특징PostgreSQL 기반의 데이터베이스Row Level Security (RLS) 정책을 통한 유저 권한 관리REST, OAuth, Log 등 백엔드의 기능을 기본적으로 제공하여 별도의 서버 필요 X 사용 문서가 정말 잘 되어 있어 빠르게 학습 가능 2. Swift 1. Client 초기화class SupabaseManager { static let shared = SupabaseManager() let supabase: SupabaseClient private init() { let supabaseUrl = URL(string: Bundle.main.object(forInfoDictionaryKey: "SUPABASE_URL") as! String.. 2025. 5. 5. [React] 상태(state), props, 이벤트 처리 1. State - 컴포넌트 내부에서 변하는 값컴포넌트 안에서 바뀌는 데이터 import { useState } from 'react';function Counter() { const [count, setCount] = useState(0); // count가 상태 return ( 현재 숫자: {count} setCount(count + 1)}>증가 );}useState(0) → 초기값 0으로 상태 생성setCount() → 상태를 변경하는 함수상태가 바뀌면, 화면도 자동으로 다시 렌더링 2. Props부모 컴포넌트가 자식 컴포넌트에게 값을 전달 function Welcome({ name }) { return {name}님, 환영합니다!;}function App.. 2025. 5. 2. 이전 1 2 3 4 ··· 12 다음