분류 전체보기 269

[pattern] Command pattern

디자인패턴 스터디의 마지막인 Command pattern 입니다. 총 5분 중 무려 3분이 (저 포함ㅎㅎ) 블로그를 운영했다는(었다)는 것을 알게 되었습니다. 다른 분들의 블로그를 구독하고 gitHub도 follow를 할 생각입니다. 이번 스터디로 디자인패턴의 많은 부분을 배울 수 있어 아주 좋았습니다. 처음 Factory pattern을 보는데 정말 하나도 이해가 되지 않았었거든요. 지금은 그래도 어느정도 pattern에 대한 개념을 받아 들일 준비 정도는 된 듯 해서 많이 뿌듯합니다. 앞으로도 계속해서 다양한 스터디를 통해 좀 더 발전하고 다양한 분들을 만나 경험들을 공유할 수 있으면 좋겠습니다 Command 패턴 커맨드 패턴은 특정 기능들을 캡슐화 시키는 패턴입니다. 보통 매개변수를 이용해서 다양한..

CS 2022.06.25

[Java] Exception(checked, Unchecked Exception)

현재 개발중인 프로젝트에서 Exception 처리에 대한 error를 다루다 Exception 관련해서 자료를 찾아보게 되었습니다. 그런데 지금으로부터 1년 전, 국비수업을 정리했던 글 중 Exception을 다룬 글이 있더군요. 링크 예전에 한번 정리했던 내용인데 어느덧 다시 잊어먹게 되어 한번 더 정리를 해 봅니다. 예외(Exception) 프로그래밍에서의 예외(Exception)은 프로그램 실행 중 개발자의 의도와는 다르게 정상적인 프로그램 흐름을 어긋나는 것을 말합니다. 그리고 자바의 경우 개발자가 직접 예외 상황을 처리할 수 있습니다. 에러(Error)는 시스템에서 발생한 비정상적인 상황으로 개발자가 처리할 수 없습니다.(에러를 상황을 잡아도 처리할 방법이 없습니다.) Exception에는 Ch..

Languages/java 2022.06.16

[pattern] Iterator Pattern

해당 글은 여러 블로그에서 보고 정리한 글입니다. 아래 Refences란에 참조한 블로그 주소들이 존재합니다. 행위 패턴 반복적으로 사용되는 객체들의 상호작용을 패턴화한 것으로, 클래스나 객체들이 상호작용하는 방법과 책임을 분산하는 방법을 정의한다. 객체의 기능은 변하지 않지만 일을 처리하는 방법이 달라질 때가 있다. 응용 분야에 따라 행위가 다른 객체로 옮겨 가거나 알고리즘이 대체되는 경우이다. 그런 경우 대부분 상속 개념을 이용해 사용할 수 있다. 행위 패턴은 여러 가지 행위 관련 패턴을 사용하여 독립적으로 일을 처리하고자 할 때 사용한다. 즉 행위 패턴은 메시지 교환과 관련된 것으로, 객체들 간의 행위나 알고리즘 등과 관련된 패턴을 말한다.[네이버 지식백과] Gof 디자인 패턴 (쉽게 배우는 소프트..

CS 2022.06.05

[Book] 객체지향과 디자인패턴_캡슐화(encapsulation)

[객체지향과 디자인패턴] 캡슐화(encapsulation) 요즘 출근길에 개발자가 반드시 정복해야할 객체지향과 디자인패턴을 읽고 있습니다. 아직 초반부를 읽는 중인데 책을 읽다 보니 캡슐화에 대해서 설명이 되어 있더군요. 곰곰히 생각해보니 저는 캡슐화에 대해서 상세하게 알고 있지 않은 상태였습니다! 캡슐화 == '메소드로 빼기' 정도로만 인지하고 있더군요. 그래서 책에 나와 있는 내용을 바탕으로 캡슐화에 대해 정리해 보았습니다. 캡슐화 객체 지향을 처음 접하는 사람들은 무심결에 데이터 중심적인 절차 지향 방식 습관으로 코드를 짜는 습관을 가지고 있습니다. 이러한 습관을 고치는데 도움이 되는 두 개의 규칙이 존재합니다. 캡슐화를 위한 두 개의 규칙 Tell, Don't Ask 데미테르..

TIL 2022.06.02

[pattern]Decorator pattern

[pattern]Decorator pattern 이 블로그 글은 [Design Pattern] 데코레이터 패턴이란 글을 나름대로 간략하게 간추려서 정리한 글입니다. 자세한 사항이 궁금하신 분들은 위의 링크 혹은 하단의 References를 확인해 주시길 바랍니다. Decorator Pattern 객체의 결합 을 통해 기능을 동적으로 유연하게 확장 할 수 있게 해주는 패턴으로 기본 기능에 추가할 수 있는 기능의 종류가 많은 경우에 각 추가 기능을 Decorator 클래스로 정의 한 후 필요한 Decorator 객체를 조합함으로써 추가 기능의 조합을 설계 하는 방식입니다. 데코레이터 패턴을 활용하면 필요 추가 기능의 조합을 동적으로 생성할 수 있습니다. 일반적인 구조(Decorator를 사용하지 않을 시) ..

CS 2022.05.15

[java]상속보다는 컴포지션을 사용하기

스터디에서 디자인패턴의 composite 패턴에 대해 이야기 하다 상속보다는 컴포지션을 사용하라라는 말이 나왔습니다. 이게 무슨말인가 싶어 다른 분의 간단한 설명을 듣긴 했지만 잘 와닿지 않더군요. 그러던 중 본인이 공부했던 링크를 남겨 주셔서 보았습니다. 역시 글로 읽어서도 제대로 와닿지 않아 읽은 내용을 조금 정리하면서 작성해 보았습니다. 사용 class Engine {} // The Engine class. class Automobile {} // Automobile class which is parent to Car class. class Car extends Automobile { // Car is an Automobile, so Car class extends Automobile class. ..

Languages/java 2022.05.09

[pattern]Builder pattern 알아보기

builder 패턴을 예전에도 몇번 들어보긴 했지만 관심있게 살펴 본 것은 한두달? 전으로 오래되지 않았네요. 저는 builder 패턴이란 개념이 익숙해지기까지 한달 정도의 시간이 걸린 듯 합니데ㅠㅠ(바보...) 시간날때 짬짬이 검색해 보고 모르는 부분을 주변에 물어가면서 조금씩 익숙해 진 듯 합니다. 처음에는 전혀 이해가 되지 않아 참 고생을 많이 했었는데 말이죠!! 회사에서도 직접 써보고 (builder 패턴 작성을 회사에서 오늘 처음 해본건 비밀ㅎㅎ) 몇번 보다보니 슬슬 익숙해 져서 글을 작성해서 정리해 보려고 합니다. 부족한 부분이 있다면 바로바로 수정 반영하도록 하겠습니다~ 발단 출처: https://refactoring.guru/design-patterns/builder 위의 이미지와 같이 하..

CS 2022.04.23

[DesignPattern] Factory pattern 알아보기

프로그래밍을 시작한지 어느덧 1년이 넘었네요. 그렇지만 제대로된 디자인 패턴에 대한 공부를 해본 적이 없다는 생각이 들어 스터디를 시작하게 되었습니다. 그 중 첫주제인 factoryMethod pattern을 공부하려다 보니 factory pattern이 다양한 pattern(Singleton, Builder)의 base가 되더군요. 그래서 factory pattern에 대해 우선적으로 정리를 하려고 합니다. 들어가기에 앞서 추상클래스와 추상메서드에 대해 알고 가면 이해하기 조금 더 편할 듯 합니다. 정리한 코드가 보고싶으신 분은 아래 링크를 확인해 주세요. GitHub: Factory pattern 패키지 Factory pattern Client 측에서 factory를 통해 간단하게 원하는 Object..

CS 2022.04.17

[Notion] 노션에서 git repo 모아보기

특정한 git repo들의 최근 커밋 내역들을 한눈에 보고 싶은 생각이 들었습니다. 저는 notion과 typora를 종종 사용하는데 notion에 github 연동 기능이 추가되었다는 이야기를 듣고 한번 검색해 보았습니다. 사용하는 방법은 매우 간단하네요. 만약 notion을 매일 사용한다면 git repo들만 모아 보는 page를 생성하여 관리하는 것도 좋은 방법인 듯 합니다. List notion에서 github 계정 연동하기 생성한 페이지에서 해당 주소 복사해서 붙여넣기 1. notion에서 github 계정 연동하기 좌측 상단의 메뉴 -> My connected apps에서 github 연동을 선택해 주시면 됩니다. github 이외에도 여러가지 앱들이 존재하니 필요한 기능이 있다면 연동하시면 ..

Tools 2022.04.16

[Cookie]SameSite란? None, Lax, Strict

지인 중 한분이 cookie에 관하여 글을 작성했습니다. 해당 글을 읽다 보니 모르는 부분이 많이 나오더군요. 그래서 그 부분에 관해 간략하게 정리해 보도록 하겠습니다. Cookie 쿠키란 브라우저에 데이터를 저장하기 위한 수단 중 하나로서 브라우저 -> 서버로 요청을 전송할 때 해당 요청에 대한 응답에 Set-Cookie 헤더가 포함되어 있으면 브라우저는 이 Set-Cookie에 있는 데이터를 저장하는데 이것을 cookie라고 합니다. Set-Cookie: ...위와 같은 형태로 Response Header에 표시되게 됩니다. 아래는 실제 개발자도구에서 확인한 모습 입니다. 쿠키는 보통 서버에서 사용자를 식별하기 위한 수단으로 사용되어지며, 이후 브라우저에서 서버로 요청을 보낼 때 Cookie 헤더의 ..

CS 2022.04.03
728x90
반응형