기술면접 6

[기술면접 기초] 프로그래머

** 실제 면접 때 질문 받았던 내용 포함 ** HTTP keep alive 란? HTTP 기본 구조를 바탕으로 맺어진 Socket 연결이 종료된 시점(HTTP Response 이후)부터 웹 서버에 정의된 Keep alive Timeout까지 기존 연결(Socket)을 유지하는 기능. 즉, 정의된 Timeout 내에 새로운 HTTP 요청이 발생한다면 연결을 유지하고 그렇지 않다면 연결을 끊는 기능 리틀 엔디안과 빅 엔디안 예) 32비트형 4바이트 값 : 0x01020304 -> 0x04, 0x03, 0x02, 0x01 예) 32비트형 4바이트 값 : 0x01020304 -> 0x01, 0x02, 0x03, 0x04 컴퓨터에서 어떤 크기의 데이터를 메모리에 저장할 때 바이트 단위로 나누어 저장하는데 이러한..

기술면접 2017.11.17

#5 신입 프로그래머 기술(실무) 면접준비 [프로그래밍 기본]

C언어와 C++언어의 차이점에 대해 설명해보아라 데니스리치가 개발한 언어로 인간의 명령어를 컴퓨터가 이해할 수 있도록 기계어로 변환해주는 역할을하는 프로그램. C++은 C언어를 확장시킨 언어이며 C는 절차지향 패턴을 따르는 반면 C++은 객체지향 패턴을 따르고 있다. C언어에서는 같은 이름을 가진 함수가 존재할 수 없지만, C++에서는 가능하다.(오버로딩, 오버라이딩) C언어에서는 변수, 함수를 초기에 작성해야 하지만, C++에서는 중간에 어디서든 선언이 가능하다. 자신이 알고 있는 언어에 대해서 모두 얘기해보아라 저급어 : C 중급어 : C++ 고급어 : C#, Java 기타 : Python 클래스와 구조체의 차이점 구조체는 하나의 구조로 묶일수 있는 데이터, 즉 변수들의 집합 클래스는 변수 뿐만 아니..

기술면접 2017.10.29

#4 신입 프로그래머 기술(실무) 면접준비 [네트워크]

OSI 7 Layer와 각 계층에 대한 설명을 해보아라 OSI 7 Layer 란 통신 접속에서 완료까지의 과정을 7단계로 정의한 국제 통신 표준 규약으로 다음과 같이 분류된다. 물리계층 : 전송하는데 필요한 기능을 제공. 장비로는 통신 케이블, 허브가 존재한다. 데이터링크계층 : 송/수신을 확인. MAC Address를 가지고 통신. 장비로는 브릿지와 스위치가 존재한다. 네트워크계층 : 패킷을 네트워크 간의 IP를 통하여 데이터를 전달, 장비로는 라우팅이 존재한다. 전송계층 : 두 호스트 시스템으로부터 발생하는 데이터의 흐름을 제공한다. 세션계층 : 통신 시스템 사용자간의 연결을 유지 및 설정한다. 표현계층 : 세션 계층 간의 주고받는 인터페이스를 일관성 있게 제공한다. 응용계층 : 사용자가 네트워크에 ..

기술면접 2017.10.28

#3 신입 프로그래머 기술(실무) 면접준비 [운영체제]

#3 신입 프로그래머가 필요한 기본 소양 # 운영체제 세마포어와 뮤텍스에 대해 각각 설명하고 차이점에 대해 설명해보아라. 세마포어(Semaphore) 운영체제 또는 프로그램 작성 내에서 공유 자원에 대한 접속을 제어하기 위해 사용되는 신호이다. 공유자원에 접근 할 수 있는 최대 허용치만큼만 동시에 사용자 접근이 가능하다. 쓰레드들은 리소스 접근 요청을 할 수 있고 세마포어에서는 카운트가 하나씩 줄어들게 되며 리소스가 모두 사용중인 경우(카운트 0) 다음 작업은 대기를 하게 된다. 뮤텍스(Mutex) 상호배제, 제어되는 섹션에 하나의 쓰레드만을 허용하기 때문에 해당 섹션에 접근하려는 다른 쓰레드들을 강제적으로 막음으로써 첫번째 쓰레드가 해당 섹션을 빠져나올 때 까지 기다린다. 대기열(큐) 구조라고 생각하면..

기술면접 2017.09.23

#2 신입 프로그래머 기술(실무) 면접준비 [자료구조]

스택(Stack)에 대해 설명하고 예제소스를 구현해보아라 스택은 LIFO(Last In First Out)의 원리로 동작하는 선형적인 자료구조이다. 데이터가 들어가고 나오는 입구가 하나뿐이므로 입구로 들어간 데이터가 스택에 차곡차곡 쌓여있다가 들어간 반대 순서로 나온다. 마지막에 들어간 원소가 처음에 나온다. 주로 계산 중에 잠시 기억해야하는 임시적인 자료를 관리하는 용도로 사용된다. CPU도 여러가지 정보를 저장하기 위해 스택을 사용하는데 이를 시스템 스택이라 한다. 다음 예제는 배열로 정수형 스택을 구현한 것이다. #include int* Stack; int Size; int Top; void InitStack(int aSize){ Size = aSize; Stack = (int*)malloc(Siz..

기술면접 2017.09.22

#1 신입 프로그래머 기술(실무) 면접준비 [데이터베이스]

#1 신입 프로그래머가 필요한 기본 소양 # 데이터베이스 [1] PK, FK, ER 모델이란?Primary Key : 테이블에서 각 Row(행)을 유일하게 구분하는 Column-KeyForeign Key : 하나의 테이블에 있는 Column(열)으로는 그 의미를 표현할 수 없는 경우, 다른 테이블의 Primary-Key Column의 값을 반드시 참조해야 하는 KeyER(Entity-Relation) 모델 : 개체-관계 모델, 데이터베이스를 설계할 때 사용하는 모델 중 하나 [2] 참조 무결성이란?관계 데이터베이스 관계 모델에서 관련된 테이블 간의 일관성(데이터 무결성)을 말한다.사용자의 실수로 관련 데이터가 삭제되거나 수정되는 것을 막아준다.참조 무결성 제약 조건 : 기본 테이블에서 일치하는 필드가 기..

기술면접 2017.09.22