기술면접 (10) 썸네일형 리스트형 [신입개발자 기술면접] MVC 패턴 MVC 패턴은 소프트웨어 디자인 패턴 중 하나로, 소프트웨어를 세 가지 주요 컴포넌트로 나누어 구조화하는 방법을 제공합니다. 이렇게 나누어진 컴포넌트는 각각 Model, View, Controller라고 불립니다. MVC 패턴은 주로 UI(User Interface)를 개발하는 데 사용되며, 각 컴포넌트가 각자의 역할을 수행하면서 시스템을 보다 모듈화하고 확장 가능하게 만듭니다. Model (모델) 어플리케이션의 데이터와 비즈니스 로직을 담당합니다. 데이터를 저장하고 조작하는 역할을 수행합니다. 데이터의 변경을 감지하고, 변경 시 View 및 Controller에 알림을 보냅니다. View (뷰) 사용자에게 정보를 표시하고 사용자의 입력을 받는 역할을 수행합니다. 모델의 데이터를 시각적으로 표현하거나, .. [신입개발자 기술 면접] 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: 일정 기간 동안 클라.. [신입개발자 기술면접] AJAX AJAX는 "Asynchronous JavaScript and XML"의 약자로, 비동기적으로 웹 페이지와 서버 간에 데이터를 교환하는 기술입니다. 이 기술을 사용하면 페이지 전체를 새로고침하지 않고도 웹 페이지의 일부분을 업데이트할 수 있습니다. Asynchronous AJAX는 비동기적으로 동작합니다. 즉, 웹 페이지는 전체를 새로 고치지 않고도 서버로부터 데이터를 받아와서 동적으로 업데이트할 수 있습니다. JavaScript AJAX 요청과 응답을 처리하기 위해 JavaScript가 사용됩니다. 클라이언트 측에서 JavaScript를 사용하여 비동기적으로 서버와 통신하고, 동적으로 페이지를 업데이트할 수 있습니다. JSON 초기에는 XML이 주로 사용되었지만, 최근에는 JSON이 더 일반적으로 사용.. [신입개발자 기술면접] REST Method 설명 REST (Representational State Transfer)는 웹 기반 서비스를 구축하기 위한 아키텍처적인 스타일 중 하나입니다. REST는 네트워크 상에서 자원(자료 또는 서비스)을 표현하고, 해당 자원에 대한 행위를 HTTP 프로토콜을 통해 수행하는 방식으로 동작합니다. REST는 자원, 표현, 상태 전이, 그리고 연결성이라는 네 가지 주요 제약 조건을 갖추고 있습니다. GET - 조회 리소스를 읽기 위해 사용됩니다. 서버에서 클라이언트로 데이터를 가져올 때 사용됩니다. POST - 생성 리소스를 생성하기 위해 사용됩니다. 서버에 새로운 데이터를 제출할 때 사용됩니다. PUT - 수정 리소스를 업데이트하기 위해 사용됩니다. 클라이언트에서 서버로 데이터를 전송하여 리소스를 갱신합니다. DELE.. [신입개발자 기술면접] HTTP / HTTPS 설명 HTTP (Hypertext Transfer Protocol)와 HTTPS (Hypertext Transfer Protocol Secure)는 웹에서 정보를 주고받기 위한 프로토콜로, 클라이언트와 서버 간의 통신을 담당합니다. 주로 웹 브라우저와 웹 서버 간의 통신에 사용되며, 웹페이지의 요청과 응답을 관리합니다. 1. HTTP (Hypertext Transfer Protocol) - 특징 - 기본적인 텍스트 기반 프로토콜로, 보안 기능이 없습니다. - 데이터가 평문으로 전송되기 때문에, 도청이나 변조의 위험이 있습니다. - 사용 - 주로 정보를 안전하게 전송할 필요가 없는 경우에 사용됩니다. - 예를 들면 뉴스 기사, 블로그 글 등의 정보를 요청하거나 전송할 때 사용될 수 있습니다. 2. HTTPS (.. [신입개발자 기술면접] Process 와 Thread 차이 "Process"와 "Thread"는 컴퓨터 프로그래밍과 운영체제에서 중요한 개념입니다. 두 용어의 주요 차이점은 다음과 같습니다: 정의: Process: 프로세스는 실행 중인 프로그램의 인스턴스를 의미합니다. 프로세스는 메모리에 로드되어 CPU의 실행을 위해 준비되어 있는 프로그램의 인스턴스를 나타냅니다. 각 프로세스는 독립적인 자원 집합(예: 메모리, CPU 시간, 파일 및 I/O 리소스 등)을 가지며, OS에 의해 관리됩니다. Thread: 스레드는 프로세스 내에서 실행되는 최소 단위의 실행 흐름입니다. 한 프로세스 내에서 여러 스레드가 실행될 수 있으며, 스레드들은 프로세스의 자원을 공유하게 됩니다. 자원 공유: Process: 프로세스는 독립적인 자원 집합을 가지므로, 프로세스 간에 직접적인 자.. 이전 1 2 다음