본문 바로가기

반응형

개발/신입개발자 기술면접

(18)
POC (Proof of Concept)란 무엇인가? POC (Proof of Concept)란 무엇인가?POC (Proof of Concept)는 아이디어나 이론, 특정 기술적 해결책이 실현 가능한지를 검증하는 과정을 의미합니다. 직역하면 "개념 증명"으로, 초기 단계에서 아이디어의 실질적인 가능성을 확인하고 프로젝트를 본격적으로 시작하기 전 문제점을 사전에 식별하는 중요한 절차입니다.개발이나 기술 도입이 필요한 프로젝트를 시작할 때, 많은 시간과 자원이 소요됩니다. 이때 POC를 통해 아이디어가 실제로 작동하는지, 예상되는 효과를 제공할 수 있는지를 확인함으로써 리스크를 줄이고 효율적으로 프로젝트를 추진할 수 있습니다.POC의 목적과 중요성실현 가능성 검토아이디어나 계획이 실제로 실행 가능한지를 판단하는 데 가장 큰 목적이 있습니다.예를 들어, 새로운 ..
[신입개발자 기술면접] MVC 패턴 MVC 패턴은 소프트웨어 디자인 패턴 중 하나로, 소프트웨어를 세 가지 주요 컴포넌트로 나누어 구조화하는 방법을 제공합니다. 이렇게 나누어진 컴포넌트는 각각 Model, View, Controller라고 불립니다. MVC 패턴은 주로 UI(User Interface)를 개발하는 데 사용되며, 각 컴포넌트가 각자의 역할을 수행하면서 시스템을 보다 모듈화하고 확장 가능하게 만듭니다. Model (모델) 어플리케이션의 데이터와 비즈니스 로직을 담당합니다. 데이터를 저장하고 조작하는 역할을 수행합니다. 데이터의 변경을 감지하고, 변경 시 View 및 Controller에 알림을 보냅니다. View (뷰) 사용자에게 정보를 표시하고 사용자의 입력을 받는 역할을 수행합니다. 모델의 데이터를 시각적으로 표현하거나, ..
[신입개발자 기술면접] 트랜잭션(transaction)이란? DB 트랜잭션(Transaction)은 데이터베이스에서 한 논리적인 작업 단위를 나타냅니다. 이 작업 단위는 하나 이상의 SQL 명령어로 구성되며, 데이터베이스에서 일관성을 유지하기 위해 원자성(Atomicity), 일관성(Consistency), 고립성(Isolation), 지속성(Durability)이라는 ACID 속성을 따릅니다. 이러한 특성들은 데이터베이스 트랜잭션의 안전하고 신뢰할 수 있는 실행을 보장합니다. 원자성(Atomicity) 트랜잭션은 원자적이어야 합니다. 즉, 트랜잭션 내의 모든 작업은 성공하거나 실패하며, 실패 시에는 트랜잭션 전체가 롤백되어 이전 상태로 돌아가야 합니다. 일관성(Consistency) 트랜잭션이 실행 전과 실행 후에 데이터베이스는 일관된 상태여야 합니다. 즉, 트..
[신입개발자 기술면접] Interface 와 Abstract 공통/차이점 인터페이스(Interface)와 추상 클래스(Abstract Class)는 모두 객체 지향 프로그래밍(OOP)에서 사용되는 개념으로, 클래스와 관련이 있습니다. 이들 간의 공통점과 차이점을 살펴보겠습니다. 공통점 추상성(Abstractness): 두 개념 모두 추상적인 개념으로, 직접적으로 객체를 생성할 수 없습니다. 인터페이스의 경우 모든 메서드가 추상 메서드이며, 추상 클래스는 추상 메서드를 가질 수 있습니다. 상속(Inheritance): 둘 다 다른 클래스에서 상속을 받아 사용됩니다. 클래스가 이미 어떤 클래스를 상속하고 있다면, 인터페이스를 구현하거나 추상 클래스를 확장할 수 있습니다. 차이점 구현(Implementation): 인터페이스: 모든 메서드가 추상 메서드이며, 구현을 제공하지 않습니..
[신입개발자 기술면접] Overloading과 Overriding 차이 "Overloading"과 "Overriding"은 객체지향 프로그래밍에서 사용되는 두 가지 다른 개념입니다. Overloading (오버로딩) Overloading은 같은 메서드 이름을 가진 여러 메서드들이 서로 다른 매개변수를 가지는 것을 말합니다. 메서드의 이름은 같지만, 매개변수의 개수, 타입, 또는 순서가 다를 수 있습니다. Overloading은 컴파일 시간에 결정되며, 컴파일러는 어떤 메서드를 호출할지 정적으로 결정합니다. public class Example { public void printMessage(String message) { System.out.println(message); } public void printMessage(int number) { System.out.print..
[신입개발자 기술 면접] Primary Key 와 Unique Key의 차이점 "Primary Key"와 "Unique Key"는 둘 다 관계형 데이터베이스에서 데이터의 유일성을 보장하는 데 사용되는 제약(Constraint)의 형태입니다. 그러나 두 키 간에는 몇 가지 중요한 차이가 있습니다. 기본 키 (Primary Key) 기본 키는 테이블에서 각 행을 고유하게 식별하는 데 사용됩니다. 기본 키는 NULL 값을 허용하지 않습니다. 즉, 각 행은 기본 키 열에 대해 NULL이 아닌 값을 가져야 합니다. 테이블당 하나의 기본 키만 가질 수 있습니다. 기본 키의 값은 반드시 고유하며, 중복된 값을 가질 수 없습니다. 기본 키로 설정된 열은 자동으로 인덱스가 생성되어 검색 속도를 향상시킵니다. 고유 키 (Unique Key) 고유 키도 기본 키와 마찬가지로 각 행을 고유하게 식별하는..
[신입개발자 기술면접] REST 설명 REST(Representational State Transfer)는 웹 서비스 아키텍처의 한 형식으로, 자원을 이름(자원의 표현)으로 구분하고 해당 자원의 상태(정보)를 주고 받는 모든 것을 나타냅니다. REST는 클라이언트와 서버 간의 통신을 위한 간단하고 확장 가능한 아키텍처 스타일을 제공하여 분산 시스템에서의 상호운용성을 촉진합니다. REST는 네트워크 상에서 상태를 전송하는 방법을 간결하게 정의하고 있으며, 이를 통해 서버와 클라이언트 간의 통신이 간단하고 효율적으로 이루어질 수 있습니다. 자원(Resource) 모든 자원은 고유한 식별자로 식별되는데, 이를 URI(Uniform Resource Identifier)로 표현합니다. 예를 들어, 웹의 자원은 URI를 통해 특정됩니다. 행위(Meth..
[신입개발자 기술면접] Cookie와 Session의 공통점, 차이점 저장 위치 Cookie: 클라이언트 측에 저장되며, 브라우저가 데이터를 관리합니다. 사용자의 로컬 컴퓨터에 텍스트 파일 형태로 저장되어 있습니다. Session: 서버 측에 저장되며, 서버가 데이터를 관리합니다. 클라이언트는 세션 ID만을 가지고 있고, 이를 사용하여 서버에 저장된 데이터에 접근합니다. 보안 Cookie: 클라이언트에 저장되기 때문에 보안에 취약할 수 있습니다. 민감한 정보를 담고 있으면 안 되며, 쿠키를 안전하게 다루기 위해 암호화 등의 추가 보안 기법이 필요할 수 있습니다. Session: 서버에 저장되기 때문에 보안상의 이점이 있습니다. 클라이언트는 세션 ID만을 알고 있고, 실제 데이터는 서버에 저장되어 있기 때문에 비교적 안전합니다. 유효 기간 Cookie: 일정 기간 동안 클라..

반응형