본문 바로가기

분류 전체보기175

Blender 1. Blender 설치 및 기본 환경 설정Blender 공식 홈페이지에서 최신 버전 다운로드 (권장: LTS 버전)설치 후 첫 실행 시:키보드 단축키: Windows / Mac / Industry Compatible 중 선택 (보통 Default 사용)선택 클릭 방식: 왼쪽 클릭 추천 (우클릭은 메뉴)Navigation 설정: Maya나 Industry 설정도 선택 가능하지만 기본 추천2. 단축키 세팅, 뷰포트 설정, 언어 변경언어 설정: Edit > Preferences > Interface > Translation > 한국어뷰포트 단축키 주요 예시:1(정면), 3(우측), 7(윗면)Shift + 중클릭: 뷰포트 이동Ctrl + 중클릭: 줌N: 사이드 툴패널 토글T: 툴박스 토글3. Blender U.. 2025. 4. 25.
저장 객체 저장 객체SQL은 비절차적(선언형) 언어로, 원하는 결과는 명시하지만 어떻게 처리할지는 직접 제어하지 못함.이 한계를 보완하기 위해 절차형 구조(조건문, 반복문 등)를 포함한 저장 객체가 도입됨.저장 객체는 데이터베이스 내부에 저장되어, 자주 사용하는 로직을 모듈화하고, 실행 효율성과 보안성을 높여주는 요소.주요 저장 객체 유형저장 프로시저 (Stored Procedure)복잡하거나 반복적인 SQL 명령문을 하나의 객체로 정의하여 호출 가능CALL로 실행, 결과 반환 없이 작업 수행함수 (Function)연산 결과를 RETURN 문으로 반환하는 저장 객체SELECT 문에 포함되어야 호출 가능, 하나의 반환값트리거 (Trigger)특정 테이블에 대해 INSERT, UPDATE, DELETE 이벤트 발생 시.. 2025. 4. 16.
정규화 1. 정규화란?정규화(Normalization)는 데이터베이스 설계 과정에서 데이터의 중복을 줄이고, 데이터 삽입/삭제/수정 시 발생할 수 있는 이상(anomaly)을 방지하기 위해 릴레이션(테이블)을 구조적으로 재구성하는 과정입니다.동일한 정보를 담는 릴레이션 스키마라도 속성 구성 방식에 따라 성능과 정확성에 큰 차이가 발생할 수 있습니다.정규화는 데이터베이스의 효율성, 일관성, 유지보수성을 확보하는 핵심 설계 기법입니다.2. 정규화의 필요성정규화는 다음과 같은 갱신 이상(Update Anomaly) 문제를 해결:삽입 이상데이터를 삽입하려 해도 불필요한 다른 정보도 함께 입력해야 하는 문제삭제 이상일부 데이터를 삭제하면 원하지 않는 다른 정보까지 함께 삭제되는 문제수정 이상하나의 데이터 변경을 위해 여.. 2025. 4. 16.
C 1. C언어 소개 및 개발 환경 설정C언어의 역사와 특징C언어의 역사:개발자: C언어는 데니스 리치(Dennis Ritchie)가 1972년에 벨 연구소(Bell Labs)에서 개발하였습니다. C언어는 B 언어를 기반으로 발전하였으며, UNIX 운영 체제의 개발에도 사용되었습니다.목적: C언어는 시스템 프로그래밍과 임베디드 시스템 개발에 적합한 고급 언어로 설계되었습니다. 특히 운영체제나 하드웨어에 밀접하게 연관된 작업을 효율적으로 처리할 수 있도록 설계되었습니다.유산: C언어는 많은 현대 프로그래밍 언어(예: C++, Java, Python 등)의 기초가 되었으며, 오늘날에도 여전히 시스템 및 응용 프로그램 개발에 널리 사용되고 있습니다.C언어의 특징:저수준 언어와 고수준 언어의 중간: C언어는 하드웨.. 2025. 4. 13.
FastAPI 기초 1. FastAPI 기본 구조와 핵심 개념1-1. FastAPI는 어떤 구조인가요?FastAPI 애플리케이션은 기본적으로 다음과 같은 형태로 구성됩니다:from fastapi import FastAPIapp = FastAPI()@app.get("/")def read_root(): return {"message": "Hello, FastAPI"}여기서 FastAPI()는 애플리케이션 인스턴스를 생성하고, @app.get("/")는 HTTP GET 요청을 처리할 라우트를 정의하는 부분입니다.1-2. FastAPI의 핵심 기반 기술ASGI: Asynchronous Server Gateway Interface의 약자로, 비동기 처리를 지원하는 Python 서버 표준입니다. FastAPI는 이 구조를 기반으.. 2025. 4. 11.
Python으로 만드는 LLM 기초 1. 기초 NLP 이론1. 토큰화 (Tokenization)정의자연어 문장을 컴퓨터가 처리할 수 있는 **단위(토큰)**로 나누는 과정이다.이 과정을 통해 단어, 서브워드, 글자 등으로 나눈다.주요 방식Whitespace Tokenization: 공백 기준 나눔 → I am happy → ['I', 'am', 'happy']WordPiece: 자주 쓰는 서브단어 단위로 쪼개기 (예: hugging → ['hug', '##ging'])Byte Pair Encoding (BPE): 자주 등장하는 문자 쌍을 병합 → 압축 효과 있음SentencePiece: 언어 독립적이며 띄어쓰기 없는 언어에도 잘 작동 (한국어, 일본어 등)중요 이유LLM은 정수 인덱스 기반 입력만 처리할 수 있음따라서 토큰화 후 정수 시퀀.. 2025. 4. 10.
Python 기초 1. 들여쓰기 = 코드 블록 (Java의 {} 역할)if x > 0: print("양수입니다") # ← 들여쓰기 된 줄만 if 블록중괄호 없이 들여쓰기로 코드 블록을 구분들여쓰기 안 하면 문법 오류 발생보통 공백 4칸 사용 (Tab은 피함)2. 변수 선언 시 타입 지정 안 함 (동적 타이핑)x = 10 # 정수x = "hello" # 문자열 (타입 변경됨)변수는 타입을 지정하지 않고, 값에 따라 자동으로 타입이 결정됨실행 도중에도 다른 타입의 값을 넣을 수 있음3. 세미콜론(;) 없음 → 한 줄에 한 문장print("hello") print("hello"); # 가능하긴 하지만 사용 XJava에서는 필수, Python에서는 생략이 원칙여러 줄 이어쓰기: \, 또는 괄호로 감.. 2025. 4. 10.
PHP 기본 들어가기 전,HTTP 프로토콜HTTP(HyperText Transfer Protocol)는 웹에서 데이터를 주고받는 규칙(프로토콜)입니다.이 프로토콜을 통해 웹 브라우저와 서버가 서로 통신하며, 사용자가 원하는 웹 페이지를 화면에 표시할 수 있습니다.HTTP의 특징비연결성(Connectionless)요청을 보낸 후 응답을 받으면 연결을 종료합니다. (요청마다 새로운 연결이 생성됨)무상태성(Stateless)각각의 요청이 독립적으로 처리되며, 이전 요청과의 연관성이 없습니다.(예: 로그인 상태 유지하려면 세션 또는 쿠키 사용 필요)텍스트 기반 프로토콜사람이 읽을 수 있는 형태로 요청과 응답을 주고받음HTTP 요청(Request)클라이언트(브라우저)가 서버에 정보를 요청할 때 HTTP 요청을 보냅니다. HT.. 2025. 4. 9.
JAVA 1. 기초 문법과 흐름 제어Java 언어 개요JDK, JRE, JVM, 바이트코드 이해변수와 자료형기본형 vs 참조형, Wrapper 클래스연산자산술, 논리, 비교, 비트, instanceof 등조건문 & 반복문if, switch, for, while, do-while배열과 문자열배열 선언과 조작, String, StringBuilder, StringBuffer메서드매개변수, 반환값, 오버로딩1. Java 언어 개요Java는 Sun Microsystems(현재는 Oracle)에 의해 1995년에 개발된 객체 지향 프로그래밍 언어이다."Write Once, Run Anywhere"라는 철학을 바탕으로, 한 번 작성한 코드를 다양한 운영체제에서 실행할 수 있도록 설계되었다.주요 특징플랫폼 독립성 (JVM 덕.. 2025. 4. 7.