버블 정렬(Bubble Sort)은 가장 단순하고 직관적인 정렬 알고리즘 중 하나입니다. 이름 그대로, 가장 큰(또는 작은) 값이 마치 거품처럼 리스트 끝으로 올라가는 모습에서 유래된 이름입니다. 🔷 1. 버블정렬의 개념 인접한 두 값을 비교하여 앞에 있는 값이 더 크면 서로 자리를 바꾸고, 뒤에 있는 값이 더 크면 그대로 둡니다. 이 과정을 리스트 끝까지 반복하면서 가장 큰 값을 뒤로 보내고, 그런 식으로 전체 리스트를 정렬해 나갑니다. 🔷 2. 작동 방식 (정렬 예시) 예를 들어, 다음 리스트를 오름차순으로 정렬한다고 가정합시다. [5, 3, 8, 4, 2] 🔁 1회전 (가장 큰 수가 맨 뒤로 올라감)..
MVC(Model–View–Controller) 패턴 ― 사용자 인터페이스를 구조적으로 분리하는 대표 아키텍처 모델 1. 정의 MVC는 사용자 인터페이스(UI)와 관련된 소프트웨어 구조를 세 가지 역할로 분리하는 아키텍처 패턴입니다. 구성 요소역할 요약 Model데이터와 비즈니스 로직을 관리 View사용자에게 보여지는 UI 화면 Controller사용자 입력 처리 및 흐름 제어 2. 구성 요소별 설명 ✔ Model (모델) - 핵심 데이터와 시스템 로직을 관리하며, DB 접근, 상태 저장, 비즈니스 처리 등을 담당합니다. - View나 Controller와 직접적으로 의존하지 않도록..
GoF 디자인 패턴 ― 객체지향 설계의 핵심 구조를 정리한 23가지 패턴 1. 정의 GoF 디자인 패턴은 1994년, 『Design Patterns: Elements of Reusable Object-Oriented Software』라는 책에서 네 명의 저자(Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, 일명 Gang of Four)가 정리한 23가지 객체지향 설계 패턴을 말합니다. 이들은 다음과 같이 세 가지 범주로 나뉩니다: 범주설명 생성 패턴 (Creational)객체 생성 방식에 관한 패턴 구조 패턴 (Structural)클래스 및 객체 간 구성 방식..
비기능적 요구사항 (Nonfunctional Requirements) ― 시스템의 “어떻게”를 규정하는 설계 기준 1. 정의 비기능적 요구사항은 시스템이 제공해야 할 기능 그 자체가 아니라, 그 기능이 어떻게 수행되어야 하는가에 대한 제약 또는 품질 속성을 의미합니다. 기능적 요구가 “무엇을 할 것인가?”라면, 비기능 요구는 “얼마나 빠르게, 안전하게, 안정적으로”에 관한 것입니다. 2. 왜 중요한가? 중요성설명 사용자 만족기능이 정상 작동하더라도 느리거나 불안정하면 사용자 만족도는 낮아짐 설계 품질 확보성능, 보안, 유지보수성 등 시스템의 전반적인 품질을 결정 SLA 기준서비스 계약 및 ..
유스케이스 다이어그램의 핵심 관계 4가지 ― Association, Include, Extend, Generalization 완전 정리 1. Association (연관 관계) 정의: Actor와 Use Case 간의 기본적인 기능 수행 관계로, “누가 어떤 기능을 수행하는가”를 나타냅니다. 도식: [고객] ─────────→ (상품 검색) 사용 시점: 사용자가 시스템 기능을 직접 요청할 때 사용 목적: 기능 호출의 기본 구조 표현 예시: 고객 → 주문하기 관리자 → 회원 삭제 결제 API → 결제 요청 오해 방지: 화살표는 필수 아님 Actor와 유스케이스만 연결할 수 있음 (유스케이스 간 아님) 2. Include (포함 관계) 정의: 하나..
유스케이스란 무엇인가? ― 시스템의 기능을 ‘사용자 관점’에서 그려낸 설계 언어 1. 유스케이스(Use Case)의 정의 유스케이스(Use Case)란, 시스템이 외부 행위자(사용자 혹은 외부 시스템)에게 제공하는 하나의 목표 지향적 기능 또는 서비스 단위를 의미합니다. 즉, 유스케이스는 “사용자가 시스템을 이용해 어떤 목표를 달성하는 과정”을 시나리오처럼 정의한 것입니다. 예: 회원가입, 상품검색, 결제처리, 비밀번호 변경 등 UML에서는 타원형으로 표현되며, 유스케이스 다이어그램의 핵심 구성 요소입니다. 2. 유스케이스의 필요성 전통적인 시스템 분석은 기능 중심, 데이터 흐름 중심이었습니다. 하지만 이는 다음과 같은 한계가 있습니다: ..
익스트림 프로그래밍 vs 구조적 방법론 1. 개념 정의 구분 정의 구조적 방법론 요구분석, 설계, 구현, 테스트, 유지보수로 이어지는 단계 중심의 전통적 방법론. 대표적으로 폭포수 모델을 포함하며, 문서화 중심 개발에 적합합니다. 익스트림 프로그래밍 (XP) 변화에 빠르게 대응하는 애자일 계열 방법론. 테스트 우선 개발, 반복적 릴리즈, 고객 상시 참여 등을 특징으로 합니다. 2. 등장 배경과 문제의식 구분 등장 배경 해결하려는 문제 구조적 방법론 1970~1980년대, 대형 시스템의 체계적 개발 필요 요구사항 정의 및 ..
종합원가계산의 네 가지 방식 – 1회차: 단일 & 조별 1. 단일종합원가계산 (Single Process Costing) 📌 개념 단일종합원가계산은 하나의 공정에서 하나의 제품만을 반복적으로 생산하는 경우에 사용하는 가장 기본적인 방식입니다. 전체 생산량에 대한 총원가를 기준으로 평균 단위당 원가를 계산합니다. 📌 왜 쓰는가? 동일 제품을 대량 생산하면서 단위당 원가 산정이 필요하고, 제품별 개별 추적이 비효율적일 경우 전체 평균원가로 처리합니다. 📌 사용하는 이유 제품이 전부 동일하므로 개별 단위 원가 계산이 불필요함 단순한 공정 구조에 적합 자료 수집과 관리가 용이함 📌 장단점 구분 내용 ..
- Total
- Today
- Yesterday
- 백준
- 여인권
- C
- 보세사
- 통계
- 통계학
- 티스토리챌린지
- 정보처리기사
- 파이썬
- 류근관
- 뇌와행동의기초
- Python
- 코딩테스트
- 윤성우
- 데이터분석
- 인프런
- 열혈프로그래밍
- 강화학습
- K-MOOC
- 인지부조화
- c++
- 회계
- 사회심리학
- 일문따
- 심리학
- C/C++
- 일본어문법무작정따라하기
- stl
- 오블완
- 일본어
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |