분류 전체보기 (174) 썸네일형 리스트형 [Design Pattern] Observer Pattern 해당 포스팅은 한빛 미디어 헤드퍼스트 디자인 패턴(에릭 프리먼, 엘리자베스 롭슨 저)를 통해 공부한 내용을 정리한 블로그입니다.아직 많이 부족하고 배울게 너무나도 많습니다. 틀린내용이 있으면 언제나 가감없이 말씀해주시면 감사하겠습니다😁좋은 프로그래머는 자기 두뇌를 사용한다. 그러나 좋은 가이드라인은 모든 케이스를 고려해야만 하는 노력을 줄여준다. (Francis Glassborow, 개발자)Observer 패턴 이해하기신문사 + 구독자 = Observer 패턴(publish-subscribe 패턴과 다름)구성요소신문사 => 주제(Subject)구독자 => 옵저버(Observer)주제에서는 중요한 데이터를 관리주제의 데이터가 바뀌면 옵저버에게 이벤트(데이터가 바뀌었다는 소식)를 전달.주제를 구독하고 있는.. [Design Pattern] Strategy Pattern 해당 포스팅은 한빛 미디어 헤드퍼스트 디자인 패턴(에릭 프리먼, 엘리자베스 롭슨 저)를 통해 공부한 내용을 정리한 블로그입니다.아직 많이 부족하고 배울게 너무나도 많습니다. 틀린내용이 있으면 언제나 가감없이 말씀해주시면 감사하겠습니다😁좋은 프로그래머는 자기 두뇌를 사용한다. 그러나 좋은 가이드라인은 모든 케이스를 고려해야만 하는 노력을 줄여준다. (Francis Glassborow, 개발자)SimUduck모든 오리가 할 수 있는 동작 Duck 클래스에서 정의quack()swim()display()모든 오리의 동작이 다르므로 추상 메소드에서 정의MallardDuck 클래스와 RedHeadDuck 클래스가 Duck 클래스를 상속받아서 display override이후에 모든 오리에게 날 수 있는 동작을 정.. [OpenSource] 초보자 오픈소스 컨트리뷰션 기여 방법! 오픈소스 기여! 나도 할수 있다⭐️여러분은 우리가 매일 사용하는 다양한 소프트웨어가 어떻게 만들어지고 발전하는지 궁금해 본 적 있으신가요? 그 답 중 하나는 바로 '오픈소스'에 있습니다. 오픈소스는 전 세계의 개발자들이 힘을 합쳐 더 나은 소프트웨어를 만들어가는 협업의 장입니다. 이 공간에서는 누구나 자신의 아이디어를 더하고, 문제를 해결하며, 기술을 발전시킬 수 있습니다.오픈소스에 기여하는 것은 마치 전 세계 사람들과 함께 퍼즐을 맞추는 것과 같습니다. 각자가 가진 작은 조각들이 모여 큰 그림을 완성해 나가는 과정이죠. 처음에는 어디서부터 시작해야 할지 막막할 수 있지만, 조금씩 참여하다 보면 어느새 여러분도 중요한 일원으로 활약하고 있을 거예요. 하지만 오픈소스 기여를 처음 시작하는 사람들에게는 어디.. [spring-batch] Transition 중복 해결 제가 공부한 내용을 정리하는 블로그입니다. 아직 많이 부족하고 배울게 너무나도 많습니다. 틀린내용이 있으면 언제나 가감없이 말씀해주시면 감사하겠습니다😁ISSUEfinal FlowJobBuilder flowJobBuilder = this.parentJobConfig.customJobBuilders() .get(jobName) .start(step1) .on(ExitStatus.FAILED.getExitCode()) .fail() .on(ExitStatus.STOPPED.getExitCode()) .stop() .next(step2) .on(ExitStatus.COMPLETED.getExitCode()) .end() .on(ExitStatus.FAILED.getExitCode()) .f.. [spring-security] CasAuthenticationProvider 구조 개선 제가 공부한 내용을 정리하는 블로그입니다. 아직 많이 부족하고 배울게 너무나도 많습니다. 틀린내용이 있으면 언제나 가감없이 말씀해주시면 감사하겠습니다😁ISSUECasAuthenticationProvider에 userDetailsChecker 멤버가 final로 선언되어 있으며, setter가 없어, 변경이 불가능함.CasAuthenticationProvider의 역할CasAuthenticationProvider(CAS)는 Spring Security에서 CAS (Central Authentication Service) 인증을 처리하는 데 사용되는 클래스로, CAS는 싱글 사인온(SSO)을 구현하기 위한 프로토콜 및 시스템.CAS 서버로부터 인증 티켓을 검증하고, 사용자 세부 정보를 로드하며, 인증 토큰.. [OSSCA2024] Redis 자료구조 - 5주차 온라인 미팅 제가 공부한 내용을 정리하는 블로그입니다. 아직 많이 부족하고 배울게 너무나도 많습니다. 틀린내용이 있으면 언제나 가감없이 말씀해주시면 감사하겠습니다😁레디스 내부에서 해시를 다루는 방법Redis에 주요 자료구조 이해server.c/initServer서버에 필요한 내용 초기화signal handler 설정signal(SIGHUP, SIG_IGN);signal(SIGPIPE, SIG_IGN);setupSignalHandlers();thread io => thread poolEvent Loop 설정server.el = aeCreateEventLoop(server.maxclients+CONFIG_FDSET_INCR); if (server.el == NULL) { serverLog(LL_WAR.. [Redis] Redis 고급 및 캐싱전략 제가 공부한 내용을 정리하는 블로그입니다. 아직 많이 부족하고 배울게 너무나도 많습니다. 틀린내용이 있으면 언제나 가감없이 말씀해주시면 감사하겠습니다😁데이터의 영속성레디스는 스냅샷 기능을 제공하여 메모리의 내용을 .rdb 파일로 저장. 해당 시점으로 복구 가능.기본-복제 아키텍처를 제공(복구 기능 및 확장)기본-복제 아키텍처를 사용하여 비동기식 복제를 지원하여 데이터가 여러 복제 서버에 복제 될 수 있음.따라서 main 서버가 장애가 발생하는 경우 요청이 여러 서버로 분산될 수 있음으로 향상된 읽기 성능과 더 빠른 복구 기능 사용.scalue-up, scale-in, scale-out을 제공하여 클러스터를 확장하여 일관된 성능과 안정성을 제공.Single Thread레디스는 싱글 스레드 아키텍처를 사용.. [Redis] Redis Data Type 제가 공부한 내용을 정리하는 블로그입니다. 아직 많이 부족하고 배울게 너무나도 많습니다. 틀린내용이 있으면 언제나 가감없이 말씀해주시면 감사하겠습니다😁 String 유형문자열을 Value로 사용하는 것은 가장 단순한 형태.문자열을 Value로 사용하고, html 문자열을 캐시하는 식의 활용 방식이 있음.특징Value에 string, number들을 저장. => 저장시 별도의 타입이 존재하지 않음.SET값을 세팅할 때는 SET을 사용# 값이 이미 있으면 실패 : nx# 값이 이미 있을 때만 성공 : xxSET [keyName] [value]GET값을 찾아올 때는 GET을 사용.GET [keyName] INCR, DECR값이 정수인 경우, INCR과 DECR(increment, decrement) 명령어 .. 이전 1 ··· 17 18 19 20 21 22 다음