전체 글

전체 글

    SOLID 원칙

    SOLID 원칙

    SOLID 원칙 SOLID(S.O.L.I.D) SOLID 원칙이란? : Rober C. Martin이 2000년에 논문에서 발표한 내용 이해하기 쉽고 유연하며, 유지 보수가 쉬운 SW 개발을 위한 다섯가지 SW 설계 원칙 단, 다섯가지 원칙을 지키다 보면 서로 상충되는 경우가 발생할 수도 있음 약어 원칙 한글 명칭 SRP Single Responsibility Principle 단일 책임 원칙 OCP Open-Closed Principle 개방-폐쇄 원칙 LSP Liskov Substitution Principle 리스코프 치환 원칙 ISP Interface Segregation Principle 인터페이스 분리 원칙 DIP Dependency Inversion Principle 의존 역전 원칙 01. ..

    [유닉스 시스템 프로그래밍] Ch01. 유닉스 시스템 프로그래밍 개요

    [유닉스 시스템 프로그래밍] Ch01. 유닉스 시스템 프로그래밍 개요

    (본 강의 노트는 한빛 아카데미의 책을 기반으로 하고 있습니다) Ch01. 유닉스 시스템 프로그래밍 개요 학습목표 유닉스 시스템 관련 표준을 이해한다 유닉스 시스템 프로그래밍이 무엇인지 이해한다 시스템 호출과 라이브러리 함수의 차이를 이애한다 유닉스 시스템의 기본 명령을 사용할 수 있다. C 컴파일러와 make 도구를 사용할 수 있다. 목차 개요 유닉스 시스템 표준 유닉스 시스템 프로그래밍이란 유닉스 시스템 도구 01. 개요 : 생략 02. 유닉스 시스템 표준 ANSI C 표준 미국 표준협회(ANSI)에서 표준화한 C언어 명세 POSIX portable unix 서로 다른 유닉스 시스템 사이에서 상호 이식이 가능한 응용프로그램을 개발하기 위한 표준으로 IEEE에서 제정 X/Open 가이드 유럽의 유닉스 ..

    [Programming Language Pragmatics] 03 Names, Scopes, and Bindings(1)

    [Programming Language Pragmatics] 03 Names, Scopes, and Bindings(1)

    (해당 강의노트는 Michael L. Scott의 [Programming Language Pragmatics : 4th edition] 책을 기반으로 작성되었습니다) [03 Names, Scopes, and Bindings(1)] 3.0~3.2 Table of Contents 3.0. Abstraction 3.1. The Notion of Binding Time 3.2. Object Lifetime and Storage Management - 3.2.1 Static Allocation - 3.2.2 Stack-Based Allocation - 3.2.3 Heap-Based Allocation - 3.2.4 Garbage Collection 3.0. Abstraction Fortran, Algol, Lis..

    [SWEA] 탐욕 알고리즘(Greedy Algorithm)

    [SWEA] 탐욕 알고리즘(Greedy Algorithm)

    본 글은 [SW Expert Academy]의 파이썬 SW문제 해결 응용-구현2 완전 검색 강의를 보고 정리한 글입니다 https://swexpertacademy.com/main/learn/course/subjectDetail.do?courseId=AVuPDYSqAAbw5UW6&subjectId=AWUYEGw61n8DFAVT# SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 탐욕 알고리즘(Greedy Algorithm, 그리디 알고리즘) 목차 01 탐욕 알고리즘 02 동전 거스름돈 문제 03 배낭 문제 04 활동 선택 문제 05 Baby-Gin 다시 보기 01 탐욕 알고리즘 탐욕 알고리즘(Greedy Algor..

    [SWEA] 동적 계획법(Dynamic Programming)

    [SWEA] 동적 계획법(Dynamic Programming)

    본 글은 [SW Expert Academy]의 파이썬 SW문제 해결 응용-구현2 완전 검색 강의를 보고 정리했습니다 https://swexpertacademy.com/main/learn/course/subjectDetail.do?courseId=AVuPDYSqAAbw5UW6&subjectId=AWUYNNbK29EDFAVT# SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 동적 계획법(Dynamic Programming, 다이나믹 프로그래밍) 목차 01 피보나치 수 02 수학적 귀납법과 비둘기 집의 원리 03 메모이제이션과 동적 계획법 04 동전 거스름돈 문제와 이항 계수 문제 01 피보나치 수 피보나치 수(Fi..

    [Algorithm : 알고리즘] 06 Dynamic Programming: DP

    [Algorithm : 알고리즘] 06 Dynamic Programming: DP

    목차 0. Introduction: 동적프로그래밍 소개 1. 0/1-Knapsack 2.Weighted interval scheduling 3. Multistage Graph 4. All pairs shortest path - Floyd's algorithm

    [Algorithm: 알고리즘] 05 Greedy Algorithm

    [Algorithm: 알고리즘] 05 Greedy Algorithm

    목차 0. Basics: 그리디 알고리즘 기초 1. Minimum Spanning Trees : 최소 신장 트리 - 신장 트리 - 최소 비용 신장 트리 - Kruskal's Algorithm( Original ver.) : 크루스칼 알고리즘 - Kruskal's Algorithm( Improved ver.) : 크루스칼 알고리즘-성능향상 버전 - Prim's Algorithm : 프림 알고리즘 2. Knapsack Problem : 배낭 문제 3. Job sequencing with deadline : 데드라인이 있는 작업 순서 문제 - 문제 - 해결 전략 4. Optimal merge patterns : 최적 병합 패턴 - 문제 - 해결 전략 - Huffman encoding의 등장 배경 - Huffm..

    [Algorithm: 알고리즘] 04 Graph

    [Algorithm: 알고리즘] 04 Graph

    목차 0. Introduction: 그래프 소개 1. What is graph? : - 그래프의 정의 - 그래프의 종류 - 그래프의 표현 - 성능 분석 - 그래프 알고리즘의 분류 2. DFS : 무방향 그래프에서의 깊이우선탐색 - 자료구조별 탐색법 - DFS 3. DFS : 유향 그래프에서의 깊이우선탐색 - 엣지의 종류 - Directed Acyclic Graph(DAG) : 유향 비순환 그래프 4. Strongly Connected Components(SCC) : 강한연결요소 - 유향그래프에서의 연결성 - 알고리즘 5. Biconnected Components : 이중연결 요소 - Articulation point : 분절점 - Biconnected graph : 이중결합 그래프 - BCC에서 A-po..