본문 바로가기

반응형

c언어

★ 20. 동기화/비동기화란? [1]동기화라는 말이 다방면으로 사용되고 있어 개념을 잡기가 조금 어렵습니다.비동기식이니 동기식이라는 말도 있습니다. 동기화를 이해하려면 클라이언트와 서버라는 개념을 먼저 이해해야합니다.클라이언트에서 작업을 요청하면 서버에서 응답하는 형식입니다.그런데 이 응답하는 방식에 따라서 동기식, 비동기식이라고 합니다. 여기서 동기식은 클라이언트의 요청이 있어야만 서버가 응답을하며 서버의 응답을 기다리다가 응답이 와야만 그에 따라 클라이언트가 반응하는 방식으로 서버와 클라이언트의 작업을 하나로 일치시키는 방식입니다.요청과 응답, 응답과 작업, 다시 요청과 반응 이런 방식입니다. 폴더의 자료를 최신으로 유지하는 것도 클라이언트에서 자료 갱신을 요청하면 서버에서 응답해 최신 자료를 보내주고 클라이언트에 받아 갱신하는 .. 더보기
★ 17. C# - Dictionary Collection C# 콜렉션 중 하나인 Dictionary에 대해 알아보겠습니다. Dictionary dictionary = new Dictionary(); Dictionary를 선언할 때는 를 이용해 선언합니다. 즉, 키와 값이 쌍으로 이루어져 만들어져 있습니다. 차후 값을 읽어올 때에도 이 점을 이용하게되므로 아주 중요한 개념입니다. 예제를 통해 알아보겠습니다. [1] Dictionary 읽고 쓰는 기본적인 사용 방법 123456789101112131415161718192021222324252627282930313233using System;using System.Collections.Generic; namespace DictionarySample{ class Program { Static void Main() { .. 더보기
★ 19. 객체지향 vs 절차지향 차이점 객체지향과 절차지향 다양한 프로그래밍을 하기 위한 언어로는 여러 종류가 있습니다.여러 언어들은 크게 두 가지로 나눌 수 있습니다."객체지향과 절차지향"언어 두 가지로 말이죠.언어들을 설명하기에 앞서 빠른 이해를 위하여 예시를 들어보도록 하겠습니다. 자동차를 만들기 위한 부품으로는 바퀴, 엔진, 의자, 핸들 등 다양한 부품들이 있어야 합니다. 자동차를 조립해야 할 때 절차지향적인 방식으로 만든다면 어느 한 부분을 기점으로하여 순서대로 만들어야합니다. 예를들면, 엔진 -> 차체 -> 핸들 -> 의자 이런 식으로 만들게됩니다. 이 경우 서로 분리되면 안되고 순서가 틀려도 안됩니다. 하나가 고장나게 되면 전체 기능이 흔들릴 정도로 설계되었다고 가정할 수 있습니다. 만약 처음에 조립할 때 부품을 다른 종류로 대체.. 더보기
★ 3. 스트래티지 패턴 (Strategy Pattern) 스트래티지 패턴 (Strategy Pattern) 스트래티지 패턴에서는 알고리즘 군을 정의하고 각각을 캡슐화하여 교환해서 사용할 수 있도록 만듭니다.스트래티지를 활용하면 알고리즘을 사용하는 클라이언트와는 독립적으로 알고리즘을 변경할 수 있습니다. 부모 - 자식간의 상속을 이용해 동물의 행동을 호출하는 간단한 시스템에서스트래티지 패턴을 적용해보면서 설명하도록 하겠습니다. 위 그림을 살펴보겠습니다.Animal 클래스를 만든 뒤 동물 공통의 행동 함수인 울음(Cry), 움직임(Move), 동물의 모습을 표현하는display 메소드를 정의했습니다.여기서 구현할 동물은 Animal 클래스를 상속 받는 독수리(Eagle)와 호랑이(Tiger)입니다.독수리와 호랑이는 각각의 울음(Cry)과 모습(display) 메소.. 더보기
디자인 패턴 포스팅 준비하고 있습니다. 디자인 패턴 게시판에서 디자인 패턴에 관해 간단한 설명만하고 각 패턴에 대한 상세 내용(코딩)을 포스팅하지 못했습니다. 스트래티지 패턴을 시작으로 2월 18일부터 초보자도 알기 쉽게 글을 작성하도록 하겠습니다. 더보기
★ 17. 가비지 (Garbage) 가비지 (Garbage) 힙에 쌓인 메모리 영역이 참조가 끊겨있는 인스턴스(가비지 컬렉터가 있는 프로그램에선 자동 소멸) 더보기
★ 4. 원형 연결 리스트 - 원형 연결 리스트 - 이전에 다룬 리스트는 마지막 노드가 NULL인 구조였다.이런한 노드를 단순 연결 리스트라고 부른다. 마지막 노드의 링크가 NULL이 아닌 첫 번째 노드를 가리키도록구성할 수 있는데 이러한 리스트가 바로 원형 연결 리스트이다. 다음 포스팅에서 코드적인 부분으로포스팅 해보겠습니다. 더보기
★ 1. 연결 리스트를 이용한 선형 연결 리스트 선형 연결 리스트 선형 연결 리스트에 대해서 살펴보겠습니다.먼저 연결리스트가 등장하게 된 배경부터 알아봅시다. 선형 리스트를 구현하기 위해서 배열을 사용하였을경우에 생기는 단점 때문에 연결 리스트가 등장하게되었습니다.배열은 구현이 쉽고 인덱스를 이용하여 손쉽게 원소에접근할 수 있다는 장점이 있지만 연속된 기억 공간에메모리 할당을 받기 때문에 데이터를 삽입 혹은 삭제를해야 할 경우 원소들을 이동해야 하므로, 오버헤드가 크고배열은 선언할 때 할당된 메모리만을 사용할 수 있죠.그러므로 배열은 여분의 공간까지 생각하여 미리 메모리를할당해야합니다. 이러한 메모리의 낭비를 없애기 위해서 나온 자료구조가바로 연결리스트 입니다.연결 리스트는 여러 개의 작은 공간을 연결하여 하나의 전체자료구조를 표현하기 때문에 크기 변.. 더보기
★ 12. const const란? const는 변수를 상수화시키는 것을 말합니다. 간단합니다.! int age = 25; age = 10; cout 더보기
★ 11. getch() getch() 헤더 파일 : getch()는 문자 1개를 입력 받습니다. 그러나! 중요한 것은 화면에 출력시키지 않습니다. 사용 예를 한번 보시죠 int input; while (1) { cout 더보기

반응형