OOP(객체지향)
264 posts
- [Computer Terms] MVC와 MVVM (Model-View-Controller/ViewModel)
- [Computer Terms] 옵저버 패턴 (Observer Pattern)
- [Computer Terms] 제네릭과 다형성 (Generics, Polymorphism)
- [Computer Terms] 팩토리 패턴 (Factory Pattern)
- [Computer Terms] 헥사고날 아키텍처 (Hexagonal Architecture)
- [Computer Terms] SOLID 원칙 개요
- [Computer Terms] 디자인 패턴 개요 (Design Patterns)
- [Clean Code] 01. Clean Code란 무엇인가
- [Clean Code] 02. 나쁜 코드 진단과 개선 실습
- [Clean Code] 03. 의미있는 이름 짓기
- [Clean Code] 04. 네이밍 리팩토링 실습
- [Clean Code] 05. 함수는 작게, 한 가지만
- [Clean Code] 06. 함수 리팩토링 실습
- [Clean Code] 08. 주석 걷어내기 실습
- [Clean Code] 11. 객체와 자료구조의 비대칭
- [Clean Code] 12. 디미터 법칙 리팩토링 실습
- [Clean Code] 14. 오류 처리 리팩토링 실습
- [Clean Code] 16. TDD 법칙과 F.I.R.S.T 원칙
- [Clean Code] 18. 클래스는 작아야 한다
- [Clean Code] 19. SOLID 원칙 리팩토링 실습
- [Clean Code] 20. 시스템과 의존성 주입
- [Clean Code] 21. 창발적 설계 네 가지 규칙
- [Software Architecture] 02. 아키텍처 설계 원칙
- [Software Architecture] 10. DDD 전술적 설계
- [OOAD] 09. 설계 원칙과 패턴 적용 전략
- [OOAD] 10. 아키텍처 설계와 레이어 분리
- [OOAD] 11. 의존성 관리와 인터페이스 설계
- [OOAD] 12. 확장성과 유연성을 위한 설계 기법
- [OOAD] 13. 도메인 주도 설계(DDD)의 핵심 개념
- [OOAD] 15. 전술적 설계: 엔티티와 밸류 오브젝트
- [OOAD] 16. 애그리거트와 리포지터리 패턴
- [OOAD] 18. 클린 아키텍처와 헥사고날 아키텍처
- [UnitTesting] 00. 단위 테스트, 왜 다시 배워야 하는가
- [UnitTesting] 01. 단위 테스트의 목표: 지속 가능한 성장
- [UnitTesting] 02. 단위 테스트란 무엇인가: 고전파와 런던파
- [UnitTesting] 03. 단위 테스트의 구조: AAA 패턴과 픽스처
- [UnitTesting] 05. 목과 테스트 취약성
- [UnitTesting] 06. 단위 테스트의 세 가지 스타일
- [UnitTesting] 07. 가치 있는 테스트로 리팩터링하기
- [UnitTesting] 08. 통합 테스트: 언제, 왜 필요한가
- [UnitTesting] 09. 목 사용의 모범 사례
- [UnitTesting] 11. 흔한 단위 테스트 안티패턴
- [UnitTesting] 단위 테스트 원칙과 실전 패턴
- [Concurrency Patterns] 12. 코루틴 기반 비동기 재해석
- [Python Master] 13. 데코레이터 - 클로저/캐싱/로깅 패턴
- [Concurrency Patterns] 08. 비동기 객체 (Active Object)
- [Concurrency Patterns] 00. 멀티스레딩 디자인 패턴 시리즈 소개와 커리큘럼
- [Clean Architecture] 01. 소프트웨어 아키텍처의 탄생과 진화
- [Clean Architecture] 02. 계층형 아키텍처의 역사와 한계
- [Clean Architecture] 03. 헥사고날 아키텍처 (Ports and Adapters)
- [Clean Architecture] 04. 어니언 아키텍처: 도메인 중심 설계
- [Clean Architecture] 08. 두 가지 가치: 행위와 구조
- [Clean Architecture] 09. 프로그래밍 패러다임 서론
- [Clean Architecture] 10. 패러다임 개요: 세 가지 패러다임
- [Clean Architecture] 12. 객체 지향 프로그래밍
- [Clean Architecture] 14. SOLID 원칙 서론
- [Clean Architecture] 15. SRP: 단일 책임 원칙
- [Clean Architecture] 16. OCP: 개방-폐쇄 원칙
- [Clean Architecture] 17. LSP: 리스코프 치환 원칙
- [Clean Architecture] 18. ISP: 인터페이스 분리 원칙
- [Clean Architecture] 19. DIP: 의존성 역전 원칙
- [Clean Architecture] 20. 컴포넌트 원칙 서론
- [Clean Architecture] 23. 컴포넌트 결합: ADP, SDP, SAP
- [Clean Architecture] 27. 경계: 선 긋기와 플러그인 아키텍처
- [Clean Architecture] 29. 정책과 수준
- [Python Cheatsheet] 00. Overview - 사용법/커리큘럼/로드맵
- [Python Cheatsheet] 08. OOP & Classes - 클래스/상속/프로퍼티
- [Python Cheatsheet] 22. copy - 얕은 복사/깊은 복사 패턴
- [Python Cheatsheet] 24. ABC - 추상 클래스 정의 패턴
- [Python Cheatsheet] 25. Metaclass - 클래스를 만드는 클래스
- [Python Cheatsheet] 26. Descriptor - 속성 접근 제어 프로토콜
- [Python Cheatsheet] 27. inspect - 런타임 객체 검사
- [Python Cheatsheet] 42. pickle - 객체 직렬화 (보안 주의)
- [OOAD] 01. 객체지향 패러다임의 본질과 철학
- [OOAD] 02. 분석과 설계의 핵심 개념
- [OOAD] 03. 객체지향 4대 원칙 심층 분석
- [OOAD] 04. SOLID 원칙 실무 적용
- [OOAD] 05. 요구사항 분석과 도메인 모델링
- [OOAD] 06. 유스케이스 기반 분석 기법
- [OOAD] 07. 클래스 다이어그램과 관계 모델링
- [OOAD] 08. 동적 모델링: 시퀀스와 상태 다이어그램
- [OOAD] 객체지향 분석·설계(OOAD) 마스터 커리큘럼
- [Python Cheatsheet] 06. Control Flow - if/for/while 패턴
- [Python Cheatsheet] 10. Comprehensions & Generators
- [Python Cheatsheet] 13. Files - pathlib/encoding/open 패턴
- [Python Cheatsheet] 28. itertools & functools - 자주 쓰는 조합
- [Python Master] 00. 왜 파이썬인가 - 학습 동기와 커리어 로드맵
- [Python Master] 01. 환경 설정 - 설치/가상환경/IDE 구성
- [Python Master] 02. 기본 문법 - 변수/타입/연산자/입출력
- [Python Master] 03. 제어 구조 - 조건문/반복문/break-continue
- [Python Master] 04. 함수 - 매개변수/스코프/람다/클로저
- [Python Master] 05. 자료구조 - 리스트/튜플/딕셔너리/세트
- [Python Master] 06. 파일 입출력 - 경로/인코딩/JSON·CSV
- [Python Master] 07. 예외 처리 - try-except-finally/사용자 정의 예외
- [Python Master] 08. 모듈과 패키지 - import/__init__/공개 API
- [Python Master] 09. 객체지향 기초 - 클래스/캡슐화/매직 메서드
- [Python Master] 10. 객체지향 고급 - 상속/다형성/추상화
- [Python Master] 11. 표준 라이브러리 - os/pathlib/datetime/itertools
- [Python Master] 12. 정규표현식 - re 모듈/패턴 매칭/성능
- [Python Master] 14. 제너레이터와 이터레이터 - 지연 평가/메모리 효율
- [Python Master] 15. 컨텍스트 매니저 - with문/리소스 관리
- [Python Master] 16. 메타클래스 - 클래스 생성/메타프로그래밍
- [Python Master] 17. 동시성 프로그래밍 - 스레드/프로세스/GIL
- [Python Master] 18. 비동기 프로그래밍 - asyncio/async-await
- [Python Master] 19. 성능 최적화 - 프로파일링/병목 분석
- [Python Master] 20. 메모리 관리 - 참조 카운팅/가비지 컬렉션
- [Python Master] 21. 네트워킹 - HTTP/TCP/소켓 프로그래밍
- [Python Master] 22. 데이터베이스 - SQL/NoSQL/ORM/트랜잭션
- [Python Master] 23. 웹 개발 - Flask/Django/REST API
- [Python Master] 24. 테스팅과 디버깅 - pytest/TDD/mocking
- [Python Master] 25. 패키징과 배포 - pyproject.toml/CI-CD
- [Python Master] 26. 디자인 패턴 - GoF 패턴의 파이썬다운 구현
- [Python Master] 27. 고급 알고리즘과 자료구조 - 복잡도 분석
- [Python Master] 28. 프로젝트 아키텍처 - 레이어드/클린 아키텍처
- [Python Master] 29. 코드 품질 관리 - 린트/타입체크/리팩토링
- [Python Master] 30. 고급 주제들 - GIL/타입 시스템/C 확장
- [Python Master] 파이썬 마스터 커리큘럼
- [Algorithm] C++ 백준 13232번: Domain clusters
- [Vocabulary] slouch 뜻과 의미 - 동사 핵심 정리
- [C++] C++가 여전히 사용되는 이유: 복잡성과 실용성의 균형
- [Vocabulary] hinge 뜻과 의미 - 동사 핵심 정리
- [Algorithm] Big O 표기법 시각 가이드 — Sam Rose 글 정리
- [Software] Cognitive Load(인지 부하) in Code - 실용 가이드
- [Vocabulary] Basics - 기초의 핵심을 이해하는 영단어
- [CleanCode] 코드 최적화: 조건문 올리고 반복문 내리기
- [Coding] 코딩의 300년 역사: 천공 카드에서 현대 프로그래밍까지
- [Programming] HTML은 프로그래밍 언어인가? html-lang.org 중심 탐구
- [Data Structure] C# Lock-Free 우선순위 큐 구현과 동시성 기법
- [Vocabulary] illegitimate 뜻과 의미, 용례
- [Design Patterns] 24. 새로운 패턴 발견과 정의 — 실습
- [Design Patterns] 24. 새로운 패턴 발견과 정의
- [Design Patterns] 23. 패턴을 활용한 코드 리뷰와 설계 리뷰 — 실습
- [Design Patterns] 23. 패턴을 활용한 코드 리뷰와 설계 리뷰
- [Design Patterns] 22. 안티패턴 식별과 리팩토링 — 실습
- [Design Patterns] 22. 안티패턴 식별과 리팩토링
- [Design Patterns] 21. 패턴의 성능 분석과 최적화 — 실습
- [Design Patterns] 21. 패턴의 성능 분석과 최적화
- [Design Patterns] 20. 도메인 주도 설계와 디자인 패턴 — 실습
- [Design Patterns] 20. 도메인 주도 설계와 디자인 패턴
- [Design Patterns] 18. 함수형 프로그래밍과 디자인 패턴: 패러다임의 진화
- [Design Patterns] 17. 패턴의 조합과 상호작용: 설계의 협주곡
- [Design Patterns] 16. 메멘토와 비지터: 상태 보존과 연산 분리
- [Design Patterns] 15. 인터프리터와 미디에이터: 파싱과 조정의 패턴
- [Design Patterns] 14. 템플릿 메서드와 이터레이터: 제어의 깊이
- [Design Patterns] 13. 커맨드와 체인 오브 리스폰시빌리티: 요청 처리의 예술 — 실습
- [Design Patterns] 13. 커맨드와 체인 오브 리스폰시빌리티: 요청 처리의 예술
- [Design Patterns] 12. 전략과 상태: 알고리즘 캡슐화의 미학 — 실습
- [Design Patterns] 12. 전략과 상태: 알고리즘 캡슐화의 미학
- [Design Patterns] 11. 옵저버: 이벤트 드리븐 아키텍처의 핵심 — 실습
- [Design Patterns] 11. 옵저버: 이벤트 드리븐 아키텍처의 핵심
- [Design Patterns] 10. 브릿지와 플라이웨이트: 분리와 효율성 — 실습
- [Design Patterns] 10. 브릿지와 플라이웨이트: 분리와 효율성
- [Design Patterns] 09. 프록시 패턴의 다면성 — 실습
- [Design Patterns] 09. 프록시 패턴의 다면성
- [Design Patterns] 08. 데코레이터와 컴포지트: 재귀적 아름다움 — 실습
- [Design Patterns] 08. 데코레이터와 컴포지트: 재귀적 아름다움
- [Design Patterns] 07. 어댑터와 파사드: 인터페이스의 철학 — 실습
- [Design Patterns] 07. 어댑터와 파사드: 인터페이스의 철학
- [Design Patterns] 06. 빌더와 프로토타입 패턴의 깊이 있는 이해 — 실습
- [Design Patterns] 06. 빌더와 프로토타입 패턴의 깊이 있는 이해
- [Design Patterns] 05. 싱글톤: 논란이 많은 패턴 — 실습
- [Design Patterns] 05. 싱글톤: 논란이 많은 패턴
- [Design Patterns] 04. 팩토리 패턴의 진화 — 실습
- [Design Patterns] 04. 팩토리 패턴의 진화
- [Design Patterns] 03. 객체지향 설계의 깊이 있는 이해
- [Design Patterns] 01. 디자인 패턴의 철학과 역사
- [Design Patterns] 00. 디자인 패턴 마스터 시리즈 개요
- [Python] 클린 코드의 중요성
- [Python] 파이썬 객체지향 프로그래밍(OOP) 완전 가이드
- [FFmpeg] AVX-512 최적화로 FFmpeg 성능 향상
- [Algorithm] C++/Python 백준 11689번 : GCD(n, k) = 1
- [CSharp] 예외 및 예외 처리
- [Philosophy] 시간의 본질: 계산적 관점에서 바라본 시간과 관찰자
- [CSharp] C# 클래스, 구조체, 레코드와 OOP 핵심 정리
- [CSharp] C# 패턴 일치(Pattern Matching) 개념과 실무 활용
- [CSharp] 무명 형식
- [CSharp] 무시 항목(Discard) - 기본 개념과 실전 활용
- [CSharp] 튜플 및 형식 분해
- [MemorySafety] 메모리 안전성을 위한 C++의 새로운 접근
- [CSharp] C# 프로그램의 기본 구조
- [CSharp] C# 형식 시스템
- [CSharp] C#의 레코드 형식 소개
- [CSharp] 인터페이스 - 여러 형식에 대한 동작 정의
- [CSharp] 제네릭 클래스 및 메서드
- [CSharp] 클래스 소개
- [Python] 고급 파이썬 튜토리얼: OOP·데코레이터·제너레이터·테스트
- [Algorithm] C++/Python 백준 13141번 : 그래프 불태우기
- [Architecture] Architectural Metapatterns 정리
- [Tech] LangGraph로 LLM 에이전트·워크플로우 구축하기
- [Blockchain] 제로 지식 증명(ZKP) 개념·유형·활용 완벽 가이드
- [EntityFramework] EF는 당신이 생각하는 것보다 똑똑하다
- [Refactoring] 코드 리팩토링의 중요성과 모범 사례
- [Technology] CRDT(Conflict-Free Replicated Data Types) 개요와 활용
- [Architecture] C4 모델 쉽게 이해하기
- [C++] C++ 안전성과 보안: 메모리·타입·경계 안전성과 실무 대응
- [Python] 함수형 프로그래밍 HOWTO: 개념·파이썬 활용·장단점
- [TypeScript] 타입 추론: 원리·Best Common Type·Contextual Typing·실전 활용
- [DesignPattern] 빌더 패턴(Builder Pattern) 정리와 Java 예제
- [DesignPattern] 추상 팩토리 패턴
- [DesignPattern] 프로토타입 패턴
- [DesignPattern] 팩토리 메소드 패턴(Factory Method) 정리
- [DesignPattern] 싱글턴 패턴(Singleton Pattern) 정리와 C# 구현
- [DataStructure] 쿼드 트리(Quad Tree) 개념과 활용
- [SoftwareTesting] 소스 코드 테스트 커버리지 메트릭과 활용
- [C#] C# 언어 둘러보기 — 역사·문법·.NET·실습
- [C#] C# 프로그램 구조와 진입점 정리
- [C#] 객체 지향 프로그래밍(OOP) 핵심 개념과 실습
- [C#] 인터페이스와 추상 클래스 차이·활용 가이드
- [SoftwareDevelopment] DDD(도메인 주도 설계) 개념과 실무 적용
- [C#] C# 데이터 타입: 값/참조 형식, 리터럴, Nullable 정리
- [C#] 배열(Array) 정리: 선언·초기화·System.Array·실전 예제
- [C#] 변수와 상수: 로컬·필드·const·readonly·var 완벽 정리
- [Clean Architecture] 00. 클린 아키텍처 개요
- [DesignPattern] Abstract Factory Pattern - 추상 팩토리 패턴
- [DesignPattern] Builder pattern - 생성과 표현의 분리
- [DesignPattern] 디자인 패턴 개요와 생성·구조·행동 패턴
- [Software] SOLID 원칙 이해 — 유지보수·확장 가능한 코드의 핵심
- [C++] C++ 동적 로딩(dlopen API) 완벽 가이드
- [Tutorial] futurecoder - 초보자용 파이썬 무료·오픈소스 인터랙티브 강의
- [Rust] Comprehensive Rust 무료 강의 정리 및 코스 구조
- [Tutorial] Learn Prompting - 프롬프트 엔지니어링 무료 가이드 정리
- [C#] CancellationTokenSource 사용법과 Task 취소 패턴
- [OOP] 디미터의 법칙(Law of Demeter)과 결합도 낮추기
- [C#] Source Generator 개요와 Hello World 예제
- [C++] Lambda를 사용한 unique_ptr Custom Deleter 가이드
- [C#] string 반복 연결 시 흔한 실수와 StringBuilder 사용법
- [Clean Code] 클린 코드와 같은 건 없다
- [Programming] 가장 똑똑한 소프트웨어 엔지니어에게 배운 10가지 교훈
- [C#] long을 int·uint로 안전하게 변환하기
- [C#] 클래스와 구조체 선택 가이드: 차이점·성능·사용 기준
- [Python Cheatsheet] 02. Built-in Functions
- [Design Pattern] 00. 디자인 패턴 개요 및 분류
- [Design Pattern] 01. Abstract Factory - 추상 팩토리 패턴
- [Design Pattern] 02. Builder - 빌더 패턴
- [Design Pattern] 03. Factory Method - 팩토리 메서드 패턴
- [Design Pattern] 04. Prototype - 프로토타입 패턴
- [Design Pattern] 05. Singleton - 싱글턴 패턴
- [Design Pattern] 06. Adapter - 어댑터 패턴
- [Design Pattern] 07. Bridge - 브릿지 패턴
- [Design Pattern] 08. Composite - 컴포지트 패턴
- [Design Pattern] 09. Decorator - 데코레이터 패턴
- [Design Pattern] 10. Facade - 퍼사드 패턴
- [Design Pattern] 11. Flyweight - 플라이웨이트 패턴
- [Design Pattern] 12. Proxy - 프록시 패턴
- [Design Pattern] 13. Interpreter - 인터프리터 패턴
- [Design Pattern] 14. Template Method - 템플릿 메서드 패턴
- [Design Pattern] 15. Chain of Responsibility - 책임 연쇄 패턴
- [Design Pattern] 16. Command - 커맨드 패턴
- [Design Pattern] 17. Iterator - 반복자 패턴
- [Design Pattern] 18. Mediator - 중재자 패턴
- [Design Pattern] 19. Memento - 메멘토 패턴
- [Design Pattern] 20. Observer - 옵저버 패턴
- [Design Pattern] 21. State - 상태 패턴
- [Design Pattern] 22. Strategy - 전략 패턴
- [Design Pattern] 23. Visitor - 방문자 패턴
- [Design Pattern] 24. 디자인 패턴 총정리 및 실전 적용
- [Testing] 3A – Arrange, Act, Assert
- [SW] 개발자가 갖춰야 할 필수 마인드와 원칙
- [.NET] Custom AssemblyLoadContext로 플러그인 DLL 의존성 로딩하기
- [C/C++] namespace 안의 #define은 범위를 제한하지 않는다
- [.NET] 왜 리플렉션(Reflection)은 느린가? CLR 내부와 대안 정리
- [.NET] C# 조건부 컴파일 옵션 적용하기
- [.NET] 런타임별 Finalizer 호출 차이와 IDisposable 권장
- [Hardware] LattePanda Alpha에 Ubuntu 16.04 LTS 설치 가이드
Home