'객체지향' 태그의 글 목록 (2 Page)
본문 바로가기
728x90
반응형

객체지향40

22.03.01_객체지향이란? 01.객체지향프로그래밍 객체 지향 프로그래밍은 컴퓨터 프로그래밍 패러다임 중 하나 프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체를 만들고, 그 객체들 간의 유기적인 상호작용을 통해 로직을 구성하는 프로그래밍 방법 02.객체지향프로그래밍의 장단점 02.1 장점 코드 재사용이 용이하다. 클래스를 가져와서 언제든지 이용할 수 있음 상속을 통해 확장해서 사용할 수 있음 유지 보수가 쉽다. 절차지향의 경우 코드를 수정할때, 직접 그위치를 하나하나 찾아가야하는 반면에 객체지향의 경우 수정을 할때, 클래스 내부에 멤버(필드) 혹은 메서드로 존재하기 때문에 해당 부분만 수정하면 됨 대형 프로젝트에 적합 클래스 단위로 모듈화 시켜서 개발할 수 있으므로 대형 프로젝트처럼 여러 명, 여러 회사에서 프로젝.. 2022. 3. 2.
22.02.17_스레드와태스크 1.프로세스와 스레드 오늘날 OS는 여러 프로세스를 동시에 실행할 수 있는 능력 있음 덕분에 여러가지 음악도 듣고, 코딩도 할 수 있음 OS만 동시에 여러 작업을 할 수 있는 것 아님 프로세스도 한번에 여러 작업을 할 수 있음 프로세스란? 실행 파일이 실행되어 메모리에 적재된 인스턴스임 가령 word.exe가 실행파일이라면, 이 실행 파일에 담겨 있는 데이터와 코드가 메모리에 적재되어 동작하는 것이 프로세스 프로세스는 반드시 하나 이상의 스레드로 구성되는데, 스레드는 운영체제가 CPU시간을 할당하는 기본단위임 프로세스가 밧줄이라면, 스레드는 밧줄을 이루는 실이라고 할 수 있음 1.1 멀티 스레드를 이용할 때 장단점 장점 사용자 대화형 프로그램에서(콜솔프로그램과 GUI프로그램 모두) 멀티 스레드를 이용하면.. 2022. 2. 20.
22.02.09_머지소트알고리즘구현및테스트코드작성 1.머지소트란? 단순하지 않은 정렬 시리즈 중 제일 단순한 정렬 분할정복 알고리즘 모든 숫자를 다 나눈 다음에 병합하는 방식으로 정렬을 진행 존 폰 노이만이 제안한 방법 일반적인 방법으로 구현했을 때 이정렬은 안정 정렬에 속함 분할 정복 알고리즘의 하나 1.1 분할 정복 방법 문제를 작은 2개의 문제로 분리하고 각각을 해결한 다음, 결과를 모아 원래의 문제를 해결하는 전략 분할 정복 방법은 대게 재귀를 이용하여 구현 1.2 과정 설명 리스트의 길이가 0또는 1이면 이미 정렬된 것으로 봄 그렇지 않은 경우 정렬되지 않은 리스트를 절반으로 잘라 비슷한 크기의 두 부분 리스트로 나눔ㄴ 각 부분 리스트를 재귀적으로 합병 정렬을 이용해 정렬 두 부분 리스스틀 다시 하나의 정렬된 리스트로 합병 2.소스코드 2.1 .. 2022. 2. 9.
22.02.08_퀵소트 찰스 앤터니 리처드 호어가 개발 불안정 정렬에 속함 다른 원소와의 비교만으로 정렬을 수행하는 비교정렬에 속함 분할 정복 알고리즘의 하나로 , 평균적으로 매우 빠른 수행 속도를 자랑하는 정렬 머지소트와 달리 퀵정렬은 리스트를 비균등하게 분할 0. 방식 리스트 안에 있는 한 요소 선택 이것을 피벗이라고 함 피벗 기준으로 피벗보다 작은 요소들은 모두 피벗의 왼쪽으로 피벗보다 큰 요소들은 모두 피벗의 오른쪽으로 이동 피벗을 제외한 왼쪽 리스트와 오른쪽 리스트 다시 정렬 분할된 부분 리스트에 대하여 순환 호출을 이용하여 정렬을 반복 부분 리스트에서도 다시 피벗을 정하고 피벗을 기준으로 2개의 부분 리스트로 나누는 과정 반복 부분 리스트들이 더 이상 분할이 불가능 할 때까지 반복 리스트의 크기가 0이나 1이 될때 .. 2022. 2. 9.
728x90
반응형