이 글은 DataBase 관련 내용을 다루고 있습니다. 자세한 내용은 추가로 검색을 해보셔서, 본인의 언어로 정리하시길 추천드립니다. 이 글 역시 제 생각과 언어에 맞게 정리하였고, 틀린 부분이 있을 수 있으니 댓글로 지적해 주시면 감사하겠습니다! 💡프로세스의 구조에 대해 설명해 주세요. ⬇️Answer 더보기 프로세스는 스택(stack), 힙(heap), 데이터(data), 코드(text) 영역으로 구성되어 있습니다. 스택 영역은 함수 실행을 위한 임시 데이터가 저장되고, 힙 영역은 동적으로 할당된 데이터가 저장되고, 데이터 영역은 전역변수나 초기화된 데이터 등이 저장되고, 코드 영역에는 프로그램 코드가 저장됩니다. 💡컨텍스트 스위칭에 대해 설명해 주세요. ⬇️Answer 더보기 컨텍스트 스위칭은 여러..
이번 게시글은 면접 예상 질문과 저라면 어떻게 대답할지에 대해 적어봤습니다. 각자 아래 질문에 어떻게 대답할지 생각해 보시면 좋을 것 같습니다. "접은 글"로 제 기준 대답 키워드를 적어놨는데, 피드백이나 의견 댓글로 남겨주시면 감사하겠습니다, [기술 관련] 💡 Java/Spring Boot/JPA를 활용한 REST API 서버 개발 경험 ⬇️키워드 더보기 REST 방식으로 URL로 자원 명시, HTTP Method로 처리 방법을 지정 SpringBoot의 Spring MVC 구조, 레이어드 아키텍처 이용 Controller 단에서 클라이언트 요청 처리 Service 단에서 비즈니스 로직 처리 데이터 접근 계층은 Spring data JPA를 이용하여 JpaRespository 인터페이스를 사용 💡 RD..
Item 15 : 클래스와 멤버의 접근 권한을 최소화하라 잘 설계된 컴포넌트는 내부 구현을 완벽히 숨겨서, 구현과 API를 깔끔히 분리한다. 오직 API를 통해서만 다른 컴포넌트와 소통하며 서로의 내부 동작 방식에는 전혀 개의치 않는다. 여기서 말하는 것은 정보 은닉, 캡슐화이다. 정보 은닉의 장점은 컴포넌트들을 서로 독립시켜서 개발, 테스트, 최적화, 적용, 분석, 수정을 개별적으로 할 수 있게 해 준다. 정보 은닉, 캡슐화의 장점 개발 속도 향상 : 여러 컴포넌트를 병렬로 개발하는 것이 가능하다. 관리 비용 절감 : 각 컴포넌트를 더 빨리 파악할 수 있고, 다른 컴포넌트로 교체하는 부담도 적다. 성능 최적화에 기여 : 시스템 전체에서 최적화할 컴포넌트를 정해서, 특정 컴포넌트만 최적화할 수 있다. 재..
Item1 : 생성자 대신 정적 팩토리 메서드를 고려하라 클래스의 인스턴스를 얻는 가장 기본적이고 전통적인 방법은 public 생성자이다. new 키워드를 이용하여 인스턴스를 생성할 수 있다. Item item = new Item(); 이 방법과는 별도로 정적 팩토리 메서드(static factory method)를 제공하는 방법을 꼭 알아두면 좋다. 해당 클래스의 인스턴스를 반환하는 단순한 정적 메서드이다. 예를 들면 아래와 같이 primary type인 boolean의 boxing class Boolean에서 정적 팩토리 메서드를 이용해서 boolean을 Boolean으로 변환하는 메서드가 있다. public static Boolean valueOf(boolean b) { return (b ? TRU..
이 글은 제 포트폴리오에서 사용된 기술에 대한 내용을 다루고 있습니다. 자세한 내용은 추가로 검색을 해보셔서, 본인의 언어로 정리하시길 추천드립니다. 이 글 역시 제 생각과 언어에 맞게 정리하였고, 틀린 부분이 있을 수 있으니 댓글로 지적해 주시면 감사하겠습니다! [Redis] 💡Redis의 특징 ⬇️정리 더보기 key - value쌍의 해시맵과 같은 구조를 가진 NoSQL이다. 오픈소스 기반으로 인메모리 데이터 저장소로, 메모리에 데이터를 저장한다. 1. 성능 모든 데이터를 메모리에 저장되어 대기 시간을 낮추고 처리량을 높인다. 읽기, 쓰기 속도가 RDBMS에 비해 빠르다. 2. 유연한 데이터 구조 String, List, Set, HashMap 등 다양한 데이터타입을 지원한다. 3. 개발 용이성 쿼리..
이 글은 HTTP, Web, Network에 대해 다루고 있습니다. 자세한 내용은 추가로 검색을 해보셔서, 본인의 언어로 정리하시길 추천드립니다. 이 글 역시 제 생각과 언어에 맞게 정리하였고, 틀린 부분이 있을 수 있으니 댓글로 지적해 주시면 감사하겠습니다! [Web] 💡REST와 RESTful API ⬇️Answer 더보기 REST? REST는 자원(Resource)의 표현(Representation)에 의한 상태 전달을 뜻합니다. URL을 통해 자원을 명시하고, HTTP Method를 통해 자원에 대한 처리 방법을 지정합니다. Restful API REST API는 REST를 기반으로 서비스 API를 구현한 것입니다. 또한, RESTful API는 REST의 원리를 잘 따르는 시스템을 말한다. 📁[..
Spring 웹 개발 관련 질문 모음입니다. 자세한 내용은 추가로 검색을 해보셔서, 본인의 언어로 정리하시길 추천드립니다. 이 글 역시 제 생각과 언어에 맞게 정리하였고, 틀린 부분이 있을 수 있으니 댓글로 지적해 주시면 감사하겠습니다! [ Spring ] 💡IoC(Inversion of Control) 란? ⬇️Answer 더보기 제어의 역전 IoC는 객체의 생성과 관리를 스프링 프레임워크가 대신하도록 위임 스프링 컨테이너에 Bean을 미리 등록하고, 필요한 곳에서 컨테이너에서 빈을 가져와 사용할 수 있게 됩니다. 이때, Bean을 가져올 때 의존성 주입(DI) 방식을 사용하여 객체 간의 의존성을 자동으로 주입받을 수 있게 됩니다. 💡DI (Dependency Injection) 란? ⬇️Answer ..
Java, 객체 지향 관련 질문 모음입니다. 자세한 내용은 추가로 검색을 해보셔서, 본인의 언어로 정리하시길 추천드립니다. 이 글 역시 제 생각과 언어에 맞게 정리하였고, 틀린 부분이 있을 수 있으니 댓글로 지적해 주시면 감사하겠습니다! [ 객체 지향 ] 💡OOP(객체지향 프로그래밍)의 특징 객체 지향의 특징은 크게 4가지가 있습니다. ⬇️객체지향의 4가지 특징 더보기 캡슐화 객체가 역할을 수행하기 위한 정보와 기능을 하나로 묶어서 데이터를 외부로부터 보호하는 것을 말합니다. - 클라이언트에게는 인터페이스만 제공을 해서 필요한 정보만 노출을 하고, 실제 구현 정보는 숨겨서 기능만 사용할 수 있게 합니다. - 필드는 private으로 접근을 막고, 메서드를 public으로 열어서 캡슐화를 사용합니다. 추상..