일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준 #알고리즘
- Python
- 라이브러리 #IT지식 #CS지식
- 스톱워치
- Anaconda #가상환경
- 맵핑
- GPT #챗봇
- 알고리즘 #백준 #집합과맵
- 문자열
- 프로그래머스 #파이썬 #python #슬라이싱 #코딩
- 추상클래스 #인터페이스
- Java #객체지향 # 프로그래밍 # SOLID #OOP
- Today
- Total
목록Computer Science (12)
고통은 사라지고 결과는 남는다. Records of Chansolve

1. 식별자 ( Identifiers ) 여러개의 속성 중 엔터티를 대표 할 수 있는 속성 2. 주식별자(기본 키) 5가지 특징 유일성 - 주식별자는 모든 인스턴스를 유일하게 구분가능하다. 최소성 - 주식별자를 구성하는 속성 수는 1개여야한다. ex) 학번 속성으로 구분가능한데 학번과 번호를 섞어서 구성 X 불변성 - 주식별자는 자주 변경되지 않아야한다. 존재성 - 주식별자는 항상 데이터 값이 있어야한다. 대표성 - 주식별자는 엔터티를 대표 할 수 있어야한다. 키의종류 키 종류 설명 기본키 (PK) 엔터티 대표 키 후보키 (CK) 유일성과 최소성 만족하지만 대표성 부족 슈퍼키 (SK) 유일성은 만족하지만 최소성 부족 대체키 (AK) 후보키 중 기본키를 선정하고 남은 키 외래키 (FK) 다른테이블 기본 키..

이진 트리(Binary Tree)를 탐색하는 방법에는 크게 다음의 4가지가 있다. 전위순회(Preorder Traversal) 중위순회(Inorder Traversal) 후위순회(Postorder Traversal) 레벨순회(Levelorder Traversal) 또는 BFS(Breadth-First Search; 너비 우선 탐색) 레벨순회(;BFS)를 제외한 나머지 순회방식은 DFS(Depth-First Search; 깊이 우선 탐색)으로 분류할 수 있다. 1. 전위순회(preorder traversal) 전위순회는 루트 노드를 먼저 탐색하고, 자식 노드를 탐색하는 방식이다. # 전위순회 def preorder(root): if root != '.': print(root, end='') # root p..
맵핑(Mapping) 맵핑이란, 소스 위치에서 대상 위치로 데이터를 복사하고, 동시에 한 데이터 형식 유형에서 다른 유형으로 데이터를 변환하는 프로세스이다. 예) 웹 서비스 제공자의 인바운드 변환기는 인바운드 XML 스키마 데이터 구조의 위치에서 COBOL 또는 PL/I 언어 구조의 위치로 데이터를 복사하고 변환합니다. 그러면 이 언어 구조는 CICS® 애플리케이션에 입력 데이터로 전달됩니다. XSD는 XML 스키마 정의(XML Schema Definition)를 의미합니다. XSD는 XML 문서의 구조 및 해당 문서가 포함할 수 있는 적법한 요소와 속성을 명시합니다. 즉, 해당 XML 문서가 유효한(valid) XML 문서로써 포함할 수 있는 관계를 정의 마찬가지로, 동일한 시나리오에서, 동일한 CIC..

추상 클래스와 인터페이스 추상화 추상화는 클래스들의 공통적인 요소를 뽑아서 상위 클래스를 만들어내는 것 반드시 상위 클래스일 필요는 없어서, 공통적인 속성과 기능을 정의한 하위 클래스를 생성할 수도 있다. 한 마디로 추상화는 공통적인 속성과 기능을 정의함으로써 코드의 중복을 줄이고, 클래스 간 관계를 효과적으로 설정하고, 유지·보수를 용이하게 하는 것 자바에서는 추상 클래스와 인터페이스라는 문법 요소를 통해 추상화를 구현한다. abstract 제어자 abstract는 주로 클래스와 메서드에 붙이는 키워드 이것을 붙이면 자동으로 '추상 클래스'와 '추상 메서드'가 된다. abstract는 '추상적인'이라는 사전적인 의미가 있지만, 핵심은 '미완성'이라는 개념에 있다. abstract class 클래스명 {..
라이브러리(Library) 주로 소프트웨어를 개발할 때 컴퓨터 프로그램이 사용하는 비휘발성 자원의 모임 구성 데이터, 문서, 도움말 자료, 메세지, 틀, 미리 작성된 코드, 서브루틴(함수), 클래스, 값, 자료형 사양을 포함 할 수 있다. OS/360 및 이후 세대에서는 파티션 데이터 세트로 부름 구체적으로 소프트웨어 개발 시 사용되는 프로그램의 구성요소로, 공통으로 사용될 수 있는 특정한 기능을 모듈화한 것 대상 환경(플랫폼)에서 바로 실행될 수 있는 형태로 제공되며, 실제 실행되어 기능을 수행하는 단편화된 프로그램이라는 점이 API와 다름 프로그래밍 언어에서 라이브러리를 사용할 수 있도록 소스코드 수준에서 인터페이스를 노출시킨 것이 바로 Application Programming Interface(A..
객체 지향 프로그래밍(Object Oriented Programming) 객체 지향 프로그래밍(OOP) 컴퓨터 프로그래밍 패러다임 중 하나 프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체를 만들고 그 객체들 간의 유기적인 상호작용을 통해 로직을 구성하는 프로그래밍 방법 OOP의 장·단점 장점 코드 재사용이 용이 남이 만든 클래스를 가져와서 이용할 수 있고 상속을 통해 확장해서 사용할 수 있다. 유지보수가 쉬움 절차 지향 프로그래밍에서는 코드를 수정해야할 때 일일이 찾아 수정해야하는 반면, 객체 지향 프로그래밍에서는 수정해야 할 부분이 클래스 내부에 멤버 변수혹은 메서드로 존재하기 때문에 해당 부분만 수정하면 된다. 대형 프로젝트에 적합 클래스 단위로 모듈화시켜서 개발할 수 있으므로 대형..