익명 함수 먼저 익명 함수라는 것은 말 그대로 이름이 없는 함수를 말한다. 익명 함수를 사용하는 이유는 나중에 다시 부를 일이 없으므로 프로그램 안에서 일시적으로 한 번만 사용되고 버려져도 되는 객체일 때 사용하는 것이다. 일회성이기 때문에 메모리 관리에서 효과적이다. 이는 함수를 정의하고 해당 함수를 변수에 저장하여 다른 곳에서 사용할 수 있도록 하는 기능을 제공한다. 익명 함수는 주로 다음과 같은 상황에서 유용하다. 함수를 변수에 할당하고 재사용해야 할 때: 익명 함수는 함수를 변수에 할당하여 다른 곳에서 호출하거나 전달할 수 있습니다. 이는 코드의 중복을 줄이고 유지보수성을 향상시키는 데 도움이 됩니다. 또한 다른 함수의 파라미터로 전달할 수 도 있습니다. 이벤트 처리: 익명 함수는 이벤트 처리기로..
https://codenme.tistory.com/104 스프링 핵심원리-고급편 1 [예제 생성 및 요구사항 이해] https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%95%B5%EC%8B%AC-%EC%9B%90%EB%A6%AC-%EA%B3%A0%EA%B8%89%ED%8E%B8/dashboard 스프링 핵심 원리 - 고급편 - 인프런 | 강의 스프링의 핵심 원리와 고급 기술들을 깊이있게 codenme.tistory.com 위의 글에서 만든 예제를 develop 하기 위해 쓰레드 로컬 사용에 대해 정리하겠습니다. 우선은, 필드 동기화를 통해 이전의 문제를 해결할 것인데요, 미리 말씀드리면 이 방법은 동시성 문제가 발생하게 됩니다. 따라서 먼저 ..
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%95%B5%EC%8B%AC-%EC%9B%90%EB%A6%AC-%EA%B3%A0%EA%B8%89%ED%8E%B8/dashboard 스프링 핵심 원리 - 고급편 - 인프런 | 강의 스프링의 핵심 원리와 고급 기술들을 깊이있게 학습하고, 스프링을 자신있게 사용할 수 있습니다., - 강의 소개 | 인프런 www.inflearn.com 김영한님의 스프링 핵심 원리- 고급편을 기반으로 작성하였습니다. 이번 글에선 스프링 핵심 원리- 고급편에서 전반적으로 사용될 log 추적기 예제의 프로토타입을 만들어보겠습니다. 이후의 글에서는 이 예제를 점진적으로 Develop하며 스프링의 중요한 원리에 대해 파악해보..
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%95%B5%EC%8B%AC-%EC%9B%90%EB%A6%AC-%EA%B8%B0%EB%B3%B8%ED%8E%B8 스프링 핵심 원리 - 기본편 - 인프런 | 강의 스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다., - 강의 소개 | 인프런 www.inflearn.com 김영한님의 스프링 핵심 원리- 기본편 강의 전체를 정리한 글입니다. 우선 할인 정책에 Rate(퍼센트), Fixed( 정률) 이 존재하고, 각각을 class로 만든 뒤, DiscountPolicy라는 공통의 인터페이스를 상속받는다고 가정해보자. 이제, 실제 코드에서 자바..
아래 글을 읽고 오면 도움이 됩니다. https://codenme.tistory.com/100 Blocking / Non-blocking 과 Sync / Async 의 차이 Blocking A 함수가 B 함수를 호출 할 때, B 함수가 자신의 작업이 종료되기 전까지 A 함수에게 제어권을 돌려주지 않는 것 Non-blocking 함수를 호출하며 제어권을 넘겨주는 것으로 호출한 함수가 다른 codenme.tistory.com restTemplate: 멀티 스레드 Blocking 방식( 호출하는 함수가 호출된 함수의 응답을 대기한다. ) - HTTP 요청 후 Json, xml, String과 같은 응답을 받을 수 있는 템플릿 - RESTful 형식을 지원한다 - 멀티 스레드와 Blocking 방식 사용 - B..
동기와 비동기 동기(Synchronous, 동시에 발생) 동시에 일어난다는 의미이다. 즉, 요청과 그 결과가 동시에 일어난다는 약속을 의미한다. 요청을 하면, 시간이 얼마나 걸리든 상관없이 요청한 자리에서 결과가 주어져야 한다. 요청과 결과가 모두 한 자리에서 동시에 일어나게 된다. 여러 노드 사이의 작업 처리 단위를 동시에 맞추겠다는 의도를 포함하고 있다. 설계가 매우 간단하고 직관적이지만 결과가 주어질 때까지 아무것도 못하고 대기해야 한다는 단점이 존재한다. 비동기(Asynchronous, 동시에 발생하지 않는) 동시에 일어나지 않음을 의미한다. 즉, 요청과 결과가 동시에 일어나지 않는다는 약속을 의미한다. 요청한 그 자리에서 결과가 주어지지 않는다. 노드 사이의 작업 처리 단위를 동시에 맞추지 않아..
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-db-2 스프링 DB 2편 - 데이터 접근 활용 기술 - 인프런 | 강의 백엔드 개발에 필요한 DB 데이터 접근 기술을 활용하고, 완성할 수 있습니다. 스프링 DB 접근 기술의 원리와 구조를 이해하고, 더 깊이있는 백엔드 개발자로 성장할 수 있습니다., - 강의 소개 | 인 www.inflearn.com 김영한 님의 스프링 DB 2편을 기반으로 작성한 내용입니다. https://codenme.tistory.com/98 [스프링 데이터 접근 활용 기술] 스프링 트랜잭션 https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-db-2#reviews 스..
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-db-2#reviews 스프링 DB 2편 - 데이터 접근 활용 기술 - 인프런 | 강의 백엔드 개발에 필요한 DB 데이터 접근 기술을 활용하고, 완성할 수 있습니다. 스프링 DB 접근 기술의 원리와 구조를 이해하고, 더 깊이있는 백엔드 개발자로 성장할 수 있습니다., - 강의 소개 | 인 www.inflearn.com 김영한님의 위 강의를 기반으로 작성하였습니다. 스프링 트랜잭션 추상화 - JPA, JDBC 둘은 트랜잭션 코드가 완전히 다르다. 스프링에서는 이처럼 기술에 따른 트랜잭션 코드 차이 해결하고자, 트랜잭션 추상화를 제공한다. 스프링은 트랜잭션을 추상화해서 제공할 뿐만 아니라, 실무에서 주..