소개
다양한 프로젝트에서 웹/모바일/솔루션 제품 개발과 관련된 업무를 진행해 오고 있으며 분석/설계/개발 Role 을 맡아 오고 있습니다.
공공기간, 교육프로그램, 기업 프로젝트, 쇼핑몰 등의 웹 개발 및 솔루션 프로그램, 프레임워크, 오픈소스 연동 등의 아키텍처 설계 및 구조적 고도화 개선 등을 해 오고 있으며 개발, PL 등의 역할을 맡았습니다.
다양한 Open Source 와 여러 기술적인 경험들을 통해 웹의 전반적인 기술 흐름들을 익혔으며 개발 경험이 거듭될 수록 요구사항의 기능 구현에만 거치지 않고 좀 더 OOP 적인 구조의 소프트웨어로서 안전성과 성능을 고려한 아키텍처링과 튜닝의 기술들을 접목시켜 지속적으로 더 훌륭한 소프트웨어를 완성하기 위한 연구와 개발 실무를 책임감 있게 맡아 오고 있습니다.
강의
전체4로드맵
전체1수강평
- 최고
이수현
2024.05.09
0
게시글
질문&답변
2024.05.15
synchronized 블록 동기화 마지막 예제
해당 예제는 데드락용 예제가 아니고 모니터 락에 대한 예제입니다 각 스레드마다 획득한 모니터에 대해 스레드간 동일한 모니터로 접근이 가능한지 여부를 설명하기 위한 예제입니다 데드락에 해당하는지 여부는 이 예제에서는 중요하지 읺습니다
- 1
- 2
- 34
질문&답변
2024.05.15
interrupt 스레드 시작안했는데도 걸리나요
네 인트럽트 상태는 스레드의 속성으로서 thread1.interrupt() 하는 순간 속성값이 변경됩니다 비록 스레드 1 이 시작하지 않더라도 객체의 속성을 변경하는 것은 가능합니다
- 0
- 2
- 33
질문&답변
2024.05.14
@RestController가 아닌 @Controller 사용에 대하여
@RestController 든 @Controller 든 모두 가능합니다 디만 @RestController 는 별도의 화면을 구성하지 않고 결과를 바로 확인할 수 있기 때문에 사용한 것입니다 그리고 스프링부트 3 부터는 jdk 최소 기준이 17이상이기 때문에 선택한 것이며 22버전을 사용해도 문제되지는 않을 것 같은데 제가 사용해 보지는 않았습니다
- 0
- 1
- 29
질문&답변
2024.05.14
@Data 사용
네 예제용으로 작성한 건데 값을 설정해야 하기 때문에 Setter 가 필요합니다 Setter 가 없는 불변객체가 안전하긴 하지만 데이터 매핑을 위해서는 Setter 가 필요할 수 있습니다 상황에 따라 판단하시면 됩니다
- 0
- 1
- 40
질문&답변
2024.05.14
SecurityContextHolderStrategy 설명해주신 부분에서 기존 방식 변경 방식에 대한 질문입니다.
이건 공식문서에서 설명하고 있는 내용 그대로를 강의에서 풀어 설명하고 있습니다 아주 중요한 내용은 아니며 참고로 아시면 되는 내용입니다 스프링에서 어플리케이션 컨텍스트를 다중으로 계층화하여 구성 할 수 있는데 이 경우 각 어플리케이션 컨텍스트마다 SecurityContextHolderStrategy 전략을 다르게 설정한다고 했을 때 SecurityContext 참조 시 바로 접근하게 되면 스레드간 충돌이 일어날 수 있다고 보는 것입니다 이 때 SecurityContextHolderStrategy 를 먼저 참조하고 SecurityContext 에 접근하면 각 어플리케이션 컨텍스에 설정된 SecurityContextHolderStrategy 가 자동으로 Autowired 된 상태에서 SecurityContext 에 접근되도록 해 주기 때문에 스레드간 충돌이 나지 않는다는 의미입니다 그러나 일반적인 상황에서는 거의 일어나지 않기 때문에 침고 정도만 해도 됩니다
- 0
- 2
- 61