본문 바로가기
반응형

Study/Study Alone10

[나혼자공부] 6주차 복습-2 오늘도 힘내자!오늘의 공부 내용내 답변은 혼자 계속 다듬어 가면서 고치고 고치고 고치다가 정리된 답변입니다... 처음부터 절때 저렇게 정리하지 않았습니다...! DI와 DIP의 주요 차이점은 무엇인가요?DI는 객체간의 의존성을 외부에서 주입하여 객체간의 결합도를 낮추는 개념이고 DIP는 추상화가 구체화를 의존하는 것이 아니고 구체와가 추상화에 의존해야한다는 설계 개념입니다. DIP는 설계의 원칙을 제공하는 것이고 DI는 이를 구현하는 실질적인 개념입니다.디자인 패턴을 선택할 때 어떤 기준을 가장 우선시하시나요?해결하려는 문제가 어떤 것인지 명확해야 하고 패턴을 사용함으로써 성능문제가 발생하지 않을지 판단해야합니다.프록시 패턴을 사용하는 상황과 이 패턴이 해결할 수 있는 문제점을 설명해주세요 싱글턴 패턴의.. 2025. 1. 9.
[나혼자공부] 6주차 복습-1 오늘은 가수 솔리드노래를 들으며  SOLID개념에 대해서 공부하였다. 오늘의 공부 내용내 답변은 혼자 계속 다듬어 가면서 고치고 고치고 고치다가 정리된 답변입니다... 처음부터 절때 저렇게 정리하지 않았습니다...! SOLID 원칙에 대해 설명해주세요.SRP(Single Responsibility Principle) 단일 책임 원칙: 클래스는 하나의 책임만 가져야하며, 변경사유는 하나뿐이다.OCP(Open Closed Principle) 개방-폐쇄 원칙:자신의 확장에는 열려있고, 주변의 변화에는 닫혀있어야 한다.LSP(Liskov Substitution Principle) 리스코프 치환 원칙 : 자식 클래스는 부모클래스의 기능을 대체할 수 있어야 한다.ISP(Interface Segregation Pri.. 2025. 1. 8.
[나혼자공부] 5주차 복습-2 오늘도 힘내자!오늘의 공부 내용내 답변은 혼자 계속 다듬어 가면서 고치고 고치고 고치다가 정리된 답변입니다... 처음부터 절때 저렇게 정리하지 않았습니다...! 세션을 사용할 때 서버 측에서 어떤 방식으로 클라이언트를 식별하나요?일반적으로 세션 ID는 쿠키에 저장됩니다. 클라이언트는 서버로 요청을 보낼 때 이 쿠키를 함께 전송하여 세션을 유지합니다. 세션을 언제 생성하고 관리하는지 설명해 주세요클라이언트가 서버에 처음 접속하면 서버는 새로운 세션을 생성하고 고유한 세션 ID를 발급합니다. 서버는 세션 정보를 메모리 또는 외부 저장소에 저장합니다.디스패처 서블릿이 무엇인가요?클라이언트 요청을 적절한 컨트롤러로 전달하고, 응답을 생성하여 반환하는 역할을 합니다. 클라이언트에서 받은 요청을 디스패처 서블릿이 .. 2025. 1. 4.
[나혼자공부] 5주차 복습-1 으ㅇ아아ㅏ아아ㅏ 공부할께 많다아ㅏ 오늘의 공부 내용내 답변은 혼자 계속 다듬어 가면서 고치고 고치고 고치다가 정리된 답변입니다... 처음부터 절때 저렇게 정리하지 않았습니다...! 서블릿은 웹 서버예요? WAS예요?서블릿(Servlet)을 실행하려면 서블릿 컨테이너같은 WAS가 필요하지만 웹서버나 WAS가 아닙니다. 자바 기반 웹 어플리케니션의 구현 기술이고 동적인 콘텐츠를 생성하기 위해 사용됩니다.웹 서버와 와스를 구분하는 이유에 대해 설명해 주시겠어요?웹 서버와 WAS는 역할과 책임이 다릅니다. 웹 서버는 주로 정적인 콘텐츠를 클라이언트에 제공하고 WAS는 동적인 콘텐츠를 생성하는 차이가 있습니다.로드 밸런싱을 위해 웹 서버를 사용하는 경우, 어떤 설정이 필요한가요?Nginx, HTTP Server등.. 2025. 1. 3.
[나혼자공부] 4주차 복습-2 오늘도 힘내자!오늘의 공부 내용내 답변은 혼자 계속 다듬어 가면서 고치고 고치고 고치다가 정리된 답변입니다... 처음부터 절때 저렇게 정리하지 않았습니다...!직렬화 과정에서 serialVersionUID의 역할은 무엇인가요?내 답변: serialVersionUID는 클래스의 고유 ID로 직렬화 및 역직렬화 과정에서 사용됩니다. 자바는 클래스의 구조가 변경되었는지 확인하기 위해 직렬화된 객체의 serialVersionUID를 비교합니다. 동일하면 역직렬화 성공하고 다르면 InvalidClassException 예외가 발생됩니다.왜 Serializable을 구현해야 할까요?내 답변: 객체를 직렬화(Serialization)해서 바이트 스트림으로 변환할 수 있게 됩니다. 객체를 파일에 저장하거나 네트워크로 .. 2024. 12. 26.
[나혼자공부] 4주차 복습-1 으아아아 뭔가 많아아아아오늘의 공부 내용내 답변은 혼자 계속 다듬어 가면서 고치고 고치고 고치다가 정리된 답변입니다... 처음부터 절때 저렇게 정리하지 않았습니다...! 스레드 생명주기를 설명해 주세요.내 답변: 스레드 생명주기는 다섯가지 상태로 나눕니다. 첫번째는 New일때 인데요 스레드 객체가 생성되었지만 아직 시작되지 않은 상태입니다. start() 메소드가 호출되 면 Runnable상태로 들어가는데요 실행 대기열에 등록되고 실행 가능한 상태입니다. 이후에는 JVM의 스케쥴러에 의해 CPU를 할당 받으면 Running 상태로 들어갑니다. 실행중 잠시 멈춰야하는 상황이 발생하면 Blocked 상태가 됩니다. 스레드의 실행이 끝나면 Terminated 상태가 됩니다.스레드 풀의 스레드들이 작업을 처리하.. 2024. 12. 25.
[나혼자공부] 3주차 복습-2 으아ㅏㅏ 너무 많아ㅏㅏ 공부할껀 왜 매일매일 생기고 왜이렇게 많은걸까 그래서 행복해!오늘의 공부 내용스트링의 각 캐릭터를 어떻게 개별적으로 접근할 수 있나내답변: String은 객 문자를 char[]로 저장하므로 각 문자에 개별적으로 접근할 수 있습니다. java에서는 charAt() 메서드를 제공하고있고 이 메소드를 사용해서 각 문자를 가져올 수 있습니다.  java9 이후로는 byte[]배열 저장으로 변경하였다. new String으로 생성된 객체와 스트링 리터럴의 비교 시, equals와 == 연산자의 동작 차이내답변: new String으로 생성된 객체는 스트링 풀에 있는 객체 여부 상관없이 Heap 영역에 새로운 객체를 생성하므로 객체의 참조 을 비교하는 == 연산자 사용시는 false가 나오고.. 2024. 12. 20.
[나혼자공부] 3주차 복습-1 벌써 3주차가 다되어간다. 시간 정말 빨리가네... 더 !! 더 열심히!! 오늘의 공부 내용내 답변은 혼자 계속 다듬어 가면서 고치고 고치고 고치다가 정리된 답변입니다... 처음부터 절때 저렇게 정리하지 않았습니다...!예외와 에러의 차이점은 무엇인가? 내 답변: 에러는 시스템 수준에서 발생하는 문제이고 복구가 어려우며 프로그램이 중지 될 수 있습니다. OutOfMemory, StackOverflowError 같은 에러가 있으며 예외는 개발자가 catch라는 구문을 사용하여 사전에 처리하여 프로그램을 계속 실행할 수 있도록 할 수 있습니다. 예외에는 checked Exception과 unchecked Exception이 있습니다.Checked Exception과 Unchecked Exception의 주요.. 2024. 12. 19.
[STUDY] 2주차 [Q]조건문은 기계어로 번역했을때 어떻게 생겼을까요?메소드 오버로딩을 자바에서 내부 구현을 어떻게 할까요?다형성이 코드를 잘 짜는데 어떻게 도움이 될까요?추상 클래스는 어떤 상황에서 사용하게 될까요?[A]조건문은 기계어로 번역했을때 어떻게 생겼을까요?자바의 조건문(if, switch)은 기계어로 변환할 때 주로 비교 연산과 분기 명령으로 나타난다.예를 들어, 자바코드if (a > b) { doSomething();} else { doSomethingElse();}컴파일 후 저수준 언어로 변환된 모습 (어셈블리 수준)CMP a, b ; a와 b를 비교JLE ELSE_LABEL ; a  여기서 CMP는 비교 명령어, JLE는 조건에 따라 실행 흐름을 변경하는 분기 명령어이다. 깊게 생각.. 2024. 12. 16.
반응형