-
IT 신입 개발자 기술 면접면접준비 2020. 5. 14. 00:28
MVC 패턴
소프트웨어 디자인 패턴. 모델 뷰 컨트롤러
사용자가 컨트롤러를 조작하면 컨트롤러에서 모델을 통해 테이터를 가져오고 그 정보를 바탕으로 시각적인 표현을 담당하는 뷰를 사용자에게 전달
장) 코드의 가독성, 확장성, 유지보수, 중복 최소화
단) 설계 시간 오래 걸림, 숙련된 개발자 필요
프레임워크
자주 쓰일만한 기능들을 모아 놓은 것
스프링
자바플랫폼을 위한 오픈 소스 애플리케이션 프레임워크
- JavaEE에 객체가 가벼움
- java 객체의 생성, 소멸을 직접 관리하며 필요한 객체만 사용 가능(생명주기)
Mybatis
자바의 관계형 데이터베이스 프로그래밍을 쉽게 할 수 있게 도와주는 개발 프레임워크
- 한 두줄의 자바 코드로 DB 연동 처리
- SQL 명령어를 자바 코드에서 분리하여 XML 파일에 따로 관리
Ajax
javascript 라이브러리 중 하나. XMLHttpRequest 객체를 이용해서 전체 페이지를 새로 고치지 않고도 페이지 일부만을 위한 데이터를 로드하는 기법
- 비동기적
- 웹페이지 속도 향상
- 서버의 처리가 완료될 때까지 기다리지 않고 처리 가능
- 코딩의 양이 줄어듬(서버에서 data만 전송하면 됨)
- 기존 웹에서는 불가능했던 다양한 UI를 가능하게 해 줌. (사진 공유 사이트의 경우 사진의 제목이나 태그를 페이지 리로드 없이 수정 가능)
jquery
: 자바스크립트 라이브러리 중 하나
멀티 브라우저 지원(어느 브라우저에서나 동일하게 작동)
JavaScript
객체 기반의 스크립트 프로그래밍 언어
웹브라우저 내에서 주로 사용
JSON
비동기에 유리. 서버에서 클라이언트로 데이터를 보낼 때 사용하는 양식. XML에 비해 간결하고 통일된 양식
Node.js
확장성 있는 네트워크 애플리케이션 개발에 사용되는 소프트웨어 플랫폼
JSP
HTML에 자바 코드를 삽입하여 웹서버에서 동적으로 웹페이지를 생성하는 언어
OOP
객체지향 프로그래밍.
데이터를 객체로 취급하여 프로그램에 반영. 객체들이 상호작용
- 코드 재사용성 높음
- 코드 변경 용이
- 개발 속도 향상
오버로딩과 오버라이딩 차이
오버로딩: 같은 이름의 메소드의 매개변수를 다르게 해 메소드를 여러 개 만듬
오버라이딩: 부모 클래스로 상속받은 메소드를 재정의
추상 클래스와 인터페이스 차이
추상 클래스: 클래스 내 추상 메소드 하나 이상 포함. abstract로 정의된 경우 extends 사용하여 상속
인터페이스: 모든 메소드가 추상메소드. implements 사용하여 다중 상속
POST와 GET 차이점
POST: 리소스를 생성, 변경하기 위해 설계된 메소드.
GET: 서버로부터 정보를 조회하기 위해 설계된 메소드. URL에 데이터 포함시켜 요청
벡터와 ArrayList 차이
벡터: 동기식. 한 스레드가 벡터 작업 중이면 다른 스레드는 벡터를 보유할 수 없음
arraylist: 비동기식. 여러 스레드가 어레이리스트에서 동시 작업 가능