일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- JPA공부
- DDD
- 코테준비
- 플러터 공부
- 플러터 개발
- Axon framework
- 스프링부트공부
- 기술공부
- 자료구조공부
- Kafka
- JPA 공부
- 기술면접공부
- nestjs
- K8S
- nestjs공부
- 프로그래머스
- JPA스터디
- JPA예제
- nestjs스터디
- 스프링 공부
- 스프링부트
- 자바공부
- JPA
- 카프카
- querydsl
- 스프링공부
- 스프링
- 코테공부
- Flutter
- 알고리즘공부
- Today
- Total
목록기술면접 (5)
DevBoi
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bXcpNY/btrdOwzV6qH/9Ka6bSeAU8YLTkzJ7v5lH0/img.png)
Deep copy와 Shallow Copy를 알면 코딩 실력이 많이 는다고 해서, 찾아봤다. 쉽게 말하면 이런 개념이다. 해당 객체를 여러군데에서 올려서 복사한다고하면, Deep copy로 하게되면 끊어질수도있다. 예를들어서, Deep copy를 많은 곳에서 사용하면, 끊어지고 디버깅과정이 발생할수 있다. 반대로, 메소드로 값을 변경한 이후에 shallow copy를 하게되면 값이 복사가 잘 안될수도있다. 둘의 차이점에 대해서 좀 상세히 알아보자 메모리 관련되서, 구조를 잘 신경을 안쓰긴 하지만 deep COPY를 하는 경우 메모리가 shallow copy를 할때보다 많이 차지하게 된다. deep copy와 shallow copy의 차이는 무엇일까?? 얕은 복사는 주소값을 같이 참조하여, 복사할때 참조하..
Spring framework에 대해설명 1. oop란? 데이터를 객체로 취급하여, 프로그램에 반영한다. 순차적으로 프로그램이 동작하는 것과 다르게 객체의 상호작용을 통해, 프로그램이 동작한다. 객체를 사용함으로써 코드 재사용을 증가시키고, 유지보수를 감소시켜준다. 2. 자바의 메모리 영역에 대해서 설명 - 메서드 영역 : static변수, 전역 변수, 코드에서 사용되는 클래스 정보들이 올라간다. 코드에서 사용되는 클래스들을 로더가 읽고, 클래스 별로 분류해서 저장한다. 처음에 로드 될때, 필요한 것들이 메모리에 저장된다. 이때 클래스 정보가 없거나, 전역 변수에대한 오류가있으면 기동시에, 오류가 난다. -스택 : 지역변수, 메서드 등이 할당되는 LIFO 방식의 메모리이다. -힙 : new 연산자를 통해..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/rfrpn/btraP9zmPkx/kep6fP20isUBhEkBMnaLP1/img.png)
데이터베이스에서 이상이란? 이상은 왜 발생하는가? 그 종류는? 데이터 베이스 이상현상이란, 3가지가 있다. - 갱신 이상 : 반복된 데이터 중 일부를 갱신할 시 데이터의 불일치가 발생 - 삽입 이상 : 불필요한 정보를 함께 저장하지 않고서는 어떤 정보를 저장하는 것이 불가능하다 - 삭제 이상 : 필요한 정보를 함께 삭제하지 않고서는 어떤 정보를 삭제하는 것이 불가능하다 -갱신 이상 : 만약에 한가지의 데이터가 변경되었다면, 연관된 다른데이터들이 한꺼번에 같이 변경되지 않아 불일치가 발생한다. 이렇게 될경우, 바뀌게 되는 데이터에 따른 모든 데이터를 일일히 바꿔서 수정해줘야한다. -삽입 이상 : 내가 원하는 값만 테이블에 삽입하고 싶은데, 테이블에 필요하지 않은 필드들 때문에 원치 않는 필드의 값도 삽입해..
JAVA에서 싱글톤 패턴을 쓰는 이유 싱글톤 : 최초 한번만 메모리를 할당하고, 그 메모리에, 객체를 만들어 사용하는 디자인 패턴 1) 객체를 여러번 생성하지 않아도 되기 때문에, 비용이 적다. 2) 객체가 무조건 한번만 생성되는 것을 보장 3) 한번 만들어서 여러곳에서 사용하면 수정하기 힘들다. 4) 테스트하기 어렵다 5) 많이 사용하게 된다면, 다른 객체들과 결합도가 높아져, 객체지향 프로그래밍의 의미를 벗어나게된다. 또한 수정의 경우, 사이드 이팩트 발생 환경이 높아지고, 멀티 쓰레드 환경에서 동기화 문제가 발생한다. 6.Thread 가 3개 생성 되었을 때 t1, t2, t3의 순서가 보장 되는 코드를 짜 보세요. 이건 Tread Safe한 상황에 대한 코드를 짜는것에 대한 테스트이다. 우선 Tr..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/rCMq8/btq9Du5RxEe/yJ1xH1FK4UrSc61KYEoo6k/img.png)
1. DB timeout connection, socket timeout Socket timeout 소켓타임마웃은 클라이언트에서 서버에 대한 Connection에 대한 데이터를 받는 것 까지의 Timeout을 의미한다. 쉽게말하면, 3way handshake로, 처음에 클라이언트와 서버간의 커넥션을 맺고 그다음에는 데이터를 전송하기위한 패킷들이 여러개로 나눠져서 전송이 되는데, 여기서 Gap이 발생해서 생기는 Timeout이 소켓 타임아웃이다. 2. Runtime Exception, Exception 1.Runtime Exception은 Try, catch로 잡지않아도 컴파일은 가능하다. 하지만 실행할때 에러가 난다, 배열의 크기나 index 문제 null Exception일때 문제가 발생한다. 2.Ex..