전체 글 182

[디자인 패턴] 2장 - 옵저버 패턴(Observer Pattern) 알아보기

지난 시간에는 디자인 패턴의 필요성과 디자인 원칙에 대해 공부하였다. 지난 내용이 궁금하면 여기 클릭!! 이번 시간에는 옵저버 패턴에 대해 공부할 것이다. 이를 위해 상황 설명, 얻을 수 있는 장점, 그리고 코드로 옵저버 패턴에 대해 이해할 것이다. 참고한 내용은 다음과 같다. https://m.hanbit.co.kr/store/books/book_view.html?p_code=B6113501223 1. 객체와 객체지향? 객체는 실제를 본떠 새로운 세계를 창조하는 것으로, 각각의 객체는 자신의 역할과 책임을 다하고 각자의 역할을 충실한 채로 서로 협력하는 것을 객체 지향이라고 한다. 이 객체란 무엇인가에 대해 인지를 하고 다음 상황 설명을 보고, 음미해보면 더욱 이해가 잘 된다. 2. 상황 설명 우리는 ..

[디자인 패턴] 1장 - 디자인 패턴은 왜 필요할까? + 디자인 원칙

최근들어 필자는 더욱 더 기본에 충실한 개발자가 되기로 하였다. 그래서 다시 디자인 패턴을 공부하기로 했다. 사실 필자는 디자인 패턴 섹션이 있는데, 또 다시 공부하는 이유는 그때는 수준이 낮은 상태에서 공부하려니 기본적인 이해자체가 힘들었다. 보여주기식 공부를 한 것 같다. 다시 글을 보니 내가 보기에 이해가 너무 힘들고 딱딱하다. 고로, 공부를 다시 진행하고, 이를 정확하고 이해가 쉬운 방식으로 정리하기로 결심했다. 이를 진행하면서 참고하는 책은... GoF책은 디자인 패턴의 고전이고 정말 좋은 책이라지만... 2005년 이후로는 이 책이 훨씬 더 많이 팔렷고 부동의 1위라는 것이 헤드퍼스트 디자인패턴의 설명! (아기다리고기다리던책!) 이미 나는 영업당하고 말았다... 하여간 이 책을 기점으로, 학습..

[Java] 배열 - Arrays 정리하기 : 2탄 - copyOfRange, equals, fill, deepEquals

지난 글에서 Arrays와 관련된 메서드들을 정리했다. 지난 내용이 궁금하면 여기 클릭! 이번 글에서는 copyOfRange, equals, fill, deepEquals 의 내부 코드를 살펴보고 사용법에 대해 알아볼 것이다. 참고한 내용은 다음과 같다. https://www.geeksforgeeks.org/equals-and-deepequals-method-to-compare-two-arrays-in-java/ https://yeh35.github.io/blog.github.io/documents/java/java-assert/ 1. Arrays.copyOfRange 지난 글에서 보았던 copyOf와 왠지 비슷할 것 같은 느낌이 든다. copyOf //copyOf @HotSpotIntrinsicCand..

[Java] 배열 - Arrays 정리하기 : 1탄 - copyOf, asList, binarySearch

요즘 필자는 코딩 테스트 책으로 공부하고 있는데, 배열 관련 문제를 푸는데 유용한 Method 를 소개하고 있다. 사실 보면 다 아는것이 대부분인데 이것을 적재적소에 사용할 수 있는지는 별개의 문제이다. 고로, 이번 기회에 Arrays와 관련된 유용한 기능들을 정리하려고 한다. (별로 유용하지 않아도 봐주세요...ㅠㅠ) 참고한 사이트는 다음과 같다. https://www.geeksforgeeks.org/arrays-aslist-method-in-java-with-examples/ https://www.geeksforgeeks.org/system-arraycopy-in-java/ https://coding-factory.tistory.com/548 1. 얕은 복사와 깊은 복사 얕은 복사과 깊은 복사에 대해..

[Oracle (오라클)] PL/SQL - 2 : PACKAGE, FUNCTION 사용법

지난 장에서는 pl/sql을 간단히 소개하고, 사용법을 숙지 및 경험을 통한 장단점을 알아보았다. 지난 내용이 궁금하면 여기 클릭! 이번 장에서는 package와 function의 차이점을 알아보고, 사용법에 대해 알아보고자 한다. 참고한 내용은 다음과 같다. http://www.tcpschool.com/cpp/cpp_function_basic https://www.onlineinterviewquestions.com/what-is-the-difference-between-function/ 1. FUNCTION vs PROCEDURE vs PACKAGE의 차이점 pl/sql은 지난 시간에 봤듯이 단순히 스크립트에서 선언해서 사용하는 것이 아니라 보통 function, procedure, package중 하..

[Oracle (오라클)] PL/SQL - 1 : 소개, 기초 & 커서 사용 및 장단점

최근에 회사에서 pl/sql을 많이 사용하고 있다. 이번 글에서는 pl/sql이란 무엇인지, 그리고 장단점이 무엇인지 간단하게 알아보고자 한다. * 참고한 사이트 및 사진의 출처 - https://ko.wikipedia.org/wiki/PL/SQL - https://www.google.com/imgres?imgurl=https%3A%2F%2Fpbs.twimg.com%2Fprofile_images%2F1558677096611737601%2FHOLFWgAh_400x400.jpg&imgrefurl=https%3A%2F%2Ftwitter.com%2F3_chan_04&tbnid=UknFM8HvJvlxbM&vet=12ahUKEwip0v-_pef8AhWZEKYKHWTKDw0QMygAegUIARDNAQ..i&docid..

[Spring Integeration] 2장 - Spring Integration : 가이드 문서 읽어보기

지난 시간에는 Integration과 관련한 정보에 대해 알아보았다. (★★★ 지난 시간 내용이 궁금하면 여기 클릭! ★★★ ) 사실 이 정보들은 전부 Spring Integeration을 좀 더 잘 이해하기 위한 선행된 공부이기도 했다. 이번 시간에는 Spring Integeration이란 무엇인가에 대해 알아보고자 한다. 참고한 사이트는 다음과 같다. https://spring.io/projects/spring-integration https://stackoverflow.com/questions/2122604/what-is-an-endpoint https://docs.spring.io/spring-integration/reference/html/overview.html https://spring.io..

[Spring Integration] 1장 - Integration, EIP, EAI, ESB 정리

오랜만에 글을 적으려고 한다. (노느라 그런거 아니라능... ㅠㅠ) 최근에 새로운 프로젝트로 투입이 되었는데 절차가 복잡하고 그 기간도 생각보다 길어질 것 같아서 현재 프로젝트에서 무엇을 쓰는지 알아보았는데, Spring Integration을 사용한다고 한다. 그래서 이에 대한 정보를 정리하려고 하는 데... 읽어보니 이거 선행되어야 하는 지식이 좀 있기 때문에(ㅠㅠ...) Spring Integration 학습 세션을 좀 나누어서 학습하려고 한다. 또한, 한국어로 정리된 내용들 중에 좀 더 깊게, 근본적인 이유에 대해 찾아본 사람은 없기에 필자는 좀 더 왜 이게 필요한지 알아보고자 노력했다. 참고 사이트 https://www.enterpriseintegrationpatterns.com/patterns..

[Spring Security] AuthorizationFilter로 HttpServletRequests 인증하기 (Authorize HttpServletRequests with AuthorizationFilter)

지난 시간에는 Spring Security의 인가 구조에 대해 알아보았다. (지난 내용이 궁금하다면 여기 🤦‍♀️🤦‍♀️ 클릭!!) 이번 시간에는 AuthorizationFilter로 HttpServletRequests를 어떻게 인증하는지 알아볼 것이다. 참고한 사이트는 다음과 같다. 출처: https://docs.spring.io/spring-security/reference/servlet/authorization/authorize-http-requests.html Authorize HttpServletRequests with AuthorizationFilter AuthroizationFilter는 FilterSecurityInterceptor를 대체한다. 뒤에 호환이 되게 남기기 위해, FilterS..

[Spring Security] [번역]Spring Security without the WebSecurityConfigurerAdapter / Lambda DSL

필자는 최근에 Spring Security를 많이 보는데 Spring Security 5.7.0 이상 버전에서는 WebSecurityConfigurerAdapter 가 Deprecated되었기에 이에 대한 정보를 찾고 있었다. 그러던 중 우연히 Spring Blog 에서 이에 데해 설명하는 글을 읽었고, 이에 대한 내용을 소개하고자 한다. 이에 더해, 기존의 Spring Security 의 configuration중 lambda DSL이라는 기능을 추가했다고 하니 이것도 알아볼 것이다. 참고한 내용들의 주소는 다음과 같다. 출처: https://spring.io/blog/2022/02/21/spring-security-without-the-websecurityconfigureradapter https:/..