기술 면접&개념 정리

2022) 신입 개발자 취업 준비, 공부해야 하는 용어 목록

개발하는 나비 2022. 11. 10. 23:20

 

기술면접 질문 모음 블로그

https://dev-coco.tistory.com/164#%F-%-F%--%A-%--Call%--By%--Value%EC%--%--%--Call%--By%--Reference%EC%-D%--%--%EC%B-%A-%EC%-D%B-%EC%--%--%--%EB%-C%--%ED%--%B-%--%EC%--%A-%EB%AA%--%ED%--%B-%EC%A-%BC%EC%--%B-%EC%-A%---

 

Q. 프로세스가 무엇인가요?

  • 컴퓨터가 실행이 되고 있는 상태 (자원을 분할 하여 할당 받은 공간)

답변 1 .exe프로그램이 개발자 언어를 통해 실행이 되면 그 안에 코드와 리소스로 구분되어 이들의 일부분을 저장공간MEM으로 넘기는 과정을 프로세스라고 합니다.

 

답변 2 예를 들어, 라면 끓이는 섹션, 김밥 마는 섹션, 햄버거 만드는 섹션처럼 조리 공간이 나뉘듯, 요리사 혼자서 돌아다니면서 동시적으로 하든 여럿이서 병렬적으로 하든, 이들을 섞어서 하든 이 메뉴들을 계속해서 만들어내는거죠.

 

Q. 스레드란 무엇인가요?

 한 프로세스 내에서도 여러 갈래의 작업들이 

동시에 진행될 필요가 있는데 이것을 스레드라고 이야기합니다.

  • 한 메뉴의 스레드들은 같은 조리대에서 이뤄져요.

같은 메뉴를 만들 때는 같은 공간과 장비,

즉 같은 자원을 공유하는게 더 효율적이죠.

 

프로세스들은 컴퓨터의 자원을 분할해서 쓰지만

 

스레드는 프로세스마다 주어진 전체 자원을

함께 사용하는거죠.

 

이게 속도와 효율 면에서는 낫겠지만

단점도 있어요.

 

프로세스 안에서 공유되는 변수에

스레드 두 개가 동시에 손을 대요.

 

현실세계에서는 로맨스물이 되지만

컴퓨터 세계에서는 Error물이 돼요.

 

출처: https://www.yalco.kr/14_process_thread/

 

Q. DI에 대해 설명해보시오. -

스프링 프레임워크 쓴다고 하면 이걸 알고가야함.

RequiredArgsConstructor 생성자를 통해서 멤버서비스에 값이 들어오도록 하는데 값을 직접넣어주는건 .스프링 부트 di를 이용해 값을 넣어주는 것

멤버레포지터리는 어디서 받아오는걸까? 받아오지 않으면 변수가 보라색이 아니라 회색이어야할텐데…. 

즉 이걸 어디서 받아오는가에 대해 의존성주입 = DI라고 하는 것

 

추후 참고할 글: https://chanhuiseok.github.io/posts/spring-5/

 

Q. AOP란? -

예외를 한곳에 모아둔 것  대표적인 AOP

Q. 애자일 방법론 / 애자일 정신 의 용어는 어디에서 사용되는지?

정처기 공부를 하다보면 외우게 된다는 썰도 ..

경험상 스타트업/중소기업에서 '애자일'이라는 단어를 꼭 듣게 되는데, 주체적으로 의견을 제시할 수 있으려면 그만한 단계를 거치는 부분이 있다. 하루 아침에도 변화무쌍한 환경에서 일을 하게 되면 그에 적응하고 빠르게 대처하고 방안을 모색하는 자세가 중요하다는 점.

 

애자일 방법론 종류 참고 사이트 : https://atoz-develop.tistory.com/entry/%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4-%EA%B0%9C%EB%B0%9C-%EB%B0%A9%EB%B2%95%EB%A1%A0-%EC%95%A0%EC%9E%90%EC%9D%BCAgile-%EB%B0%A9%EB%B2%95%EB%A1%A0

Q. 프로퍼티 

출처: TCP스쿨

참고사이트: http://www.tcpschool.com/javascript/js_object_propertyMethod

https://july7k.tistory.com/87

Q. 싱글톤 

참고사이트: https://gyoogle.dev/blog/design-pattern/Singleton%20Pattern.html

Q. 퍼미션(permission = '허락', '허가')

: 접근 및 수정을 위한 권한

참고사이트:

Q. 웹서버가 뭔지? - 

  1. 하드웨어 측면에서, web server는 web server의 소프트웨어와 website의 컴포넌트 파일들을 저장하는 컴퓨터입니다. (컴포넌트 파일에는 HTML 문서, images, CSS stylesheets, 그리고 JavaScript files가 있습니다.) Web server는 인터넷에 연결되어 웹에 연결된 다른 기기들이 웹 서버의 데이터(컴포넌트 파일들)를 주고받을 수 있도록 합니다.
  2. 소프트웨어 측면에서, web server는 기본적으로 웹 사용자가 어떻게 호스트 파일들에 접근하는지를 관리합니다. 이 문서에서 web server는 HTTP서버로 국한합니다. HTTP 서버는 URL(Web addresses)과 HTTP(당신의 브라우저가 웹 페이지를 보여주기 위해 사용하는 프로토콜)의 소프트웨어 일부입니다.

가장 기본적인 단계에서, 브라우저가 웹 서버에서 불려진 파일을 필요로 할때, 브라우저는 HTTP를 통해 파일을 요청합니다. 요청이 올바른 웹 서버(하드웨어)에 도달하였을 때, HTTP 서버(software)는 요청된 문서를 HTTP를 이용해 보내줍니다.

 

그외 참고 용어:

출처: 아래 링크
출처: 아래 링크

참고사이트: https://developer.mozilla.org/ko/docs/Learn/Common_questions/What_is_a_web_server

Q. 서버란 무엇인가? - 

 네트워크에서 다른 컴퓨터나 소프트웨어와 같은 클라이언트에게 서비스를 제공하는 컴퓨터

제공하는 기능을 가지고 있는 컴퓨터!ex:  웹 브라우저를 통해 웹 사이트 접속중 웹 브라우저 : 클라이언트, 웹 사이트 콘텐츠를 가지고 있는 컴퓨터 : 서버 

참고사이트: https://lipcoder.tistory.com/514

 

Q. 네트워크는?

출처: https://lipcoder.tistory.com/514

Q. 톰캣(Web Application Server)이 뭔지? -

톰캣하면 아파치가 떠오를 것, 아파치는 우선 무엇인가? 대표적인 웹서버중 하나임

웹서버 대표로  Apache, IIS, Nginx 세가지가 있음그중에, 톰캣은 아파치 회사 소속임.

자바 서블릿을 실행키고 JSP코드가 포함되어 있는 웹 페이지를 만들어준다. 

 

웹서버 Web Server 

 

정적인 데이터 처리하는 서버.

단순 이미지나 html파일과 같은 리소스만을 제공하는 서버는 웹서버만 사용하여 빠르고 안정적이게 활용.

 

와스 WAS 

: 동적인 데이터 처리하는 서버.

 

DB로 연결되어 데이터를 주고받거나 자바등을 통해 데이터 조작이 필요한 경우에는 WAS를 활용.

 

참고사이트: https://cheershennah.tistory.com/54

 

Q. 프레임워크? -

참고사이트: https://webclub.tistory.com/458

라이브러리와 프레임워크의 차이는 제어 흐름에 대한 주도성이 누구에게/어디에 있는가에 있습니다.

즉, 어플리케이션의 Flow(흐름)를 누가 쥐고 있느냐에 달려 있습니다.

프레임워크는 전체적인 흐름을 스스로가 쥐고 있으며 사용자는 그 안에서 필요한 코드를 짜 넣으며 반면에 라이브러리는 사용자가 전체적인 흐름을 만들며 라이브러리를 가져다 쓰는 것이라고 할 수 있습니다.

다시 말해, 라이브러리는 라이브러리를 가져다가 사용하고 호출하는 측에 전적으로 주도성이 있으며 프레임워크는 그 틀안에 이미 제어 흐름에 대한 주도성이 내재(내포)하고 있습니다.

프레임워크는 가져다가 사용한다기보다는 거기에 들어가서 사용한다는 느낌/관점으로 접근할 수 있습니다.

Q.상대경로 /절대경로?

 

 

참고사이트: https://sseambong.tistory.com/3

Q. 컴포넌트란?

참고사이트: https://hanamon.kr/%EC%BB%B4%ED%8F%AC%EB%84%8C%ED%8A%B8-component%EB%9E%80/

 

Q.모듈?

함수들의 모임!

자바스크립트에서

참고사이트: https://redssin.tistory.com/8

https://ko.javascript.info/modules-intro

Q, delegate?

: 위임? 대리?

 

 

Q. iso 7계층 구조

전화기가 있다고 가정하자. 친구랑 내가 있어요

휴대폰으로 통화를 하는데, 친구랑 나랑 다른 지역에 있는데 어떻게 통화가 될까요?

 

숫자가 낮을수록 하드웨어, 높을수록 소프트웨어와 가깝다.

음성신호 받아서 -> 패킷으로 만들어서 -> 패킷받아서 -> 출력해야하니까 물리적 신호로 변환을 한다(하드웨어쪽)

Iso7계층 사용법이다.

 

Q. 인터페이스란?

규칙! 규약! 일정한 틀!

참고사이트: https://limkydev.tistory.com/197

 

Q. SQL 프로시저?

프로시저는 함수라는데..

프로시저 사용하는걸 보면, sql 쿼리문을 함수처럼 만들어서 사용하는듯?

 

프로시저와 함수차이?(Oracle)

: https://mjn5027.tistory.com/47


: https://fomaios.tistory.com/entry/PLSQL-%ED%94%84%EB%A1%9C%EC%8B%9C%EC%A0%80Procedure%EB%9E%80-feat-CRUD

 

:https://runcoding.tistory.com/31

Q.  자바 스크립트 호이스팅

 

선언된 함수 대상으로 위 아래 어디에 있든 호이스팅 된다!

:https://www.appletong.com/entry/%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-%ED%98%B8%EC%9D%B4%EC%8A%A4%ED%8C%85-Hoisting-%EC%9D%B4%EB%9E%80-%EC%95%84%EC%A3%BC-%EC%89%BD%EA%B2%8C-%EC%84%A4%EB%AA%85

 

Q.MSA

 

Q. 게이트 웨이