▶️ DI, IoC에 대해 설명해주세요. DI는 클래스나 객체가 다른 클래스나 객체에 의존하는 경우, 이 의존성을 외부에서 주입하도록 하는 디자인 패턴이다. 의존성은 일반적으로 다른 클래스의 인스턴스, 인터페이스, 혹은 추상 클래스 등을 의미한다. (DI는 IoC의 한 형태로 볼 수 있다.) IoC는 소프트웨어의 제어 흐름을 바꾸는 개념이다. 일반적으로 프...
▶️ 객체지향 프로그래밍이란 무엇이고 어떻게 활용할 수 있나요? 객체 지향 프로그래밍은 데이터와 해당 데이터를 처리하는 메소드를 하나로 묶어서 객체를 만들고, 이러한 객체들이 서로 상호작용하면서 프로그램을 구성하는 것이다. 객체 지향 프로그래밍의 장점으로는 코드의 재사용성과 유지보수성이 높아진다는 점이 있다. 객체 지향 프로그래밍에서는 코드를 객체 단위로 ...
▶️ undefined 에러 수정 전 코드에서는 브라우저에서 GET 요청으로 바로 게시글을 가지고 오는 함수가 바로 실행되고 이 함수를 실행하기 위해 필요한 page 값과 totalPosts를 넘겨주는 함수의 실행이 먼저 끝나지 않아 undefined 오류가 떴다. countPosts 함수가 많은 데이터를 가지고 오는게 아니었기 때문에 undefined가...
0. 컴퓨터와 데이터베이스 파일 시스템 VS 데이터베이스 파일 시스템 개별적인 파일들을 보관, 정리 여러 폴더에 파일이 저장되고, 사용자가 직접 파일을 관리. 데이터베이스 데이터를 구조화하고 연결시키는 기능 제공. 테이블, 레코드, 필드 등의 개념을 사용하여 데이터를 구성, 데이터를 효율적으로 관리하고 검색. 데이터의 일관성, 무결성, 안정성 유지...
▶️ 대용량 트래픽 발생 시 어떻게 대응해야 하나요? 일반적으로 트래픽 모니터링, 자동 확장, 로드 밸런싱, 캐싱, DB 최적화 등의 단계를 따른다. 자동 확장 : 클라우드 기반 인프라를 사용하면 트래픽이 증가할 때 자동으로 서버 및 자원을 확장할 수 있다. Auto Scaling과 같은 자동 확장 기능을 활용하면 된다. 로드 밸런싱 : 로드 밸런서를 사용...
▶️ 문제 상황 1. params로 요청이 들어왔을 때 에러 해결 과정 기존 프로젝트 때에 썼던 express를 사용하지 않았기 때문에 API를 호출하는 구조를 파악해보니, query나 body로 요청이 들어오는 부분은 해결이 되었지만 params는 해결이 되지 않았음. (만약 ‘localhost:8000/api/posts/1’에 DELETE 요청이 들...
▶️ ORM을 사용하면서 쿼리가 복잡해지는 경우에는 어떻게 해결하는게 좋을까요? 네이티브 SQL 쿼리를 사용 : 데이터베이스 종류에 따라 사용 할 수 있는 SQL 구문이 다르므로 OPEN SQL에서 지원하지 않는 다양하고 복잡한 SQL 사용 가능하다. Stored Procedure 사용 : 특정 로직의 쿼리를 함수로 만들어 놓은 것이다. 페이징 쿼리와 같이...
▶️ GET, POST의 개념과 함께 데이터 흐름에 대해서 설명해주세요. GET 요청 목적: GET 메서드는 주로 서버로부터 정보를 요청하는 데 사용된다. 이 메서드를 사용하는 클라이언트는 서버에 어떤 데이터를 가져오거나 검색하고자 할 때 사용한다. 데이터 전송: 클라이언트가 GET 요청을 생성할 때, 요청에 필요한 정보는 URL에 포함된다. 이 정보는 ...
▶️ npm install 오류 s3 적용을 위해 새로운 라이브러리를 설치하던 중 오류가 떴다. 찾아보니 npm 캐시 문제일 수도 있다고 해서 캐시 폴더의 소유권을 변경하고 캐시를 삭제 한 후 라이브러리를 다시 재설치했다.
▶️ OSI 7계층에 대해 아는대로 설명해주세요. 물리 계층 (Physical Layer) 하드웨어와 전기 신호 전송에 관련된 계층이다. 물리적 매체를 통해 비트를 전송하고, 데이터를 전송하기 위한 전송 매체 및 기술을 다룬다. 데이터 링크 계층 (Data Link Layer) 직접 연결된 두 개의 노드 간 데이터 전송을 관리한다. 프레임을 생성하고, 에...
▶️ 통신 방식 (TCP, SOAP, gRPC, GraphQL, Websocket) TCP (Transmission Control Protocol) TCP는 인터넷에서 데이터를 안정적으로 전송하기 위한 프로토콜 중 하나이다. 연결 지향 프로토콜로, 데이터 패킷을 손실하지 않고 순서대로 전달한다. 주로 웹 브라우징, 이메일, 파일 전송 등의 네트워크 통신에서...