본문 바로가기
반응형

public void static main()54

[Design Pattern] Builder Pattern 아~ 패턴 왜이렇게 많아 솔직히 만드신분도 다 못외울꺼같아~ Builder Pattern? 복잡한 객체를 생성하는 클래스 와 표현하는 클래스를 분리하는 것! 동일한 절차에서도 서로 다른 표현을 생성하는 방법을 제공! 다시 말해서 객체의 생성 단계들을 캡슐화 하여 객체의 생성을 유연하게 해주는 패턴! 객체의 생성과정과 객체의 표현 방법을 분리! [구조] Builder(건축자)의 역할 인스턴스 생성을 위한 인터페이스(API)를 선언! ConcreteBuilder(구체적인 건축자)의 역할 Builder 인터페이스를 구현하는 역할 Director(감독자)의 역할 Builder 인터페이스(API)를 사용해 인스턴스를 사용 Product(제품)의 역할 만들어질 제품의 속성과 기능을 가짐 [구현] // 제품을 필드로.. 2021. 11. 9.
[Design Pattern] Flyweight Pattern 오늘은 재택근무를 해서 블로그 공부를 할 시간이 됐다! 디자인 패턴을 집중적으로 공부해보자~ Flyweight Pattern? 어떤 클래스의 인스턴스 한 개만 가지고 여러 개의 "가상 인스턴스"를 제공하고 싶을 때 사용하는 패턴이다! 비용이 큰 자원을 공통으로 사용할 수 있도록 만드는 패턴이다! 궁극적으로 객체를 가볍게 하기 위한 것이라구~! [핵심] 객체를 가능한 대로 공유시켜서 쓸떼없이 new하지 않도록 하는 것이 목표! 객체가 필요할 때 맨날 new 하는게 아니라, 이미 만들어져 있는 인스턴스(객체)를 이용할 수 있으면 그걸 공유하기 [구조] Flyweight의 역할 공유에 사용할 클래스들의 인터페이스(API) 다시 말해서 프로그램을 가볍게 하기 위한 역할을 함! ConcreteFlyweight(구.. 2021. 11. 9.
[Design Pattern] Observer Pattern 오늘은 발표준비겸 Observer Pattern이 무엇인지 알아보자! 옵저버 패턴이 뭔가 찾다가 진짜 엄청난 블로그를 발견했다! 덤으로 좋은 책도 발견! Head First Design Patterns 책이다! 궁금하시분은 찾아보시길! (광고 아닙니다~!!!) 나를 단번에 이해 시켜주셨다! 출처는 맨아래! Observer Pattern이 뭐야? - 한 객체의 상태가 바뀌면 그 객체에 의존하는 다른 객체들한테 연락이 가고, 자동으로 내용이 갱신되는 방식으로 일대다(one-to-many)의존성을 정의한다. 🔴잠깐!🔴 일대 다(one-to-many) 관계ㅖㅖㅖ? - 옵저버 패턴에서 상태를 저장하고 지배하는 것은 주제(Subject) 객체이다. 따라서 상태가 들어있는 객체는 하나만 있을 수 있다. - 옵저버는 .. 2021. 11. 7.
[Design Pattern] Singleton Pattern 아 진짜 오랜만에 공부한다 11월 시작부터 열심히다~ 아자아자 리마 파이팅 오늘은 디자인 패턴에 Singleton Pattern을 공부할꺼다! 왜냐면 내일 인강 들을꺼니까! 싱글톤 패턴이 뭘까? - 객체의 인스턴스가 오직 1개만 생성되는 패턴을 의미한다. 음... 쫌더 알아보자! - 애플리케이션이 시작될 때 어떤 클래스가 최초 한번만 메모리를 할당하고 그 메모리에 인스턴스를 만들어 사용하는 디자인 패턴! 생성자가 여러차례 호출되더라도 실제로 생성되는 객체는 하나고 최초 생성 이후에 호출된 생성자는 최초에 생성한 객체를 반환한다. (자바에서는 생성자를 private로 선언해서 생성 불가하게 하고 getInstance()로 부르게함!) 다시말해서 인스턴스가 필요 할 때 똑같은 인스턴스를 만들어 내는 것이 아.. 2021. 11. 2.
[npm] npm이란 npm이 무엇일까나 맨날 찾아봐야지 하다가 이제좀 공부해본다 npm은 Node Packaged Manager의 약자이다! 내가 아는바로는 패키지를 관리하는느낌의 패키지관리자!!?로 알고있다! 나는 보통 scoop 을 이용해서 npm을 설치한다! 일단 powershell을 이용해서 scoop을 설치 scoop을 설치했다면 powershell에서 nodejs를 설치해보자! 좋아 설치했다면 이제 npm 명령어를 쓸수있을 것이다! (아마도..!) npm이란? npm 이란 노드 패키지 매니저 (Node Package Manager)를 의미! npm은 자바스크립트 런타임 환경인 Node.js 의 기본 패키지 관리자 역할을 한다! 그래서 npm을 통해 패키지 (package) 또는 모듈 (module) 이라고 불리는.. 2021. 5. 5.
[Gradle] Gradle은 무엇일까나 Gradle은 무엇이고 왜쓰고 어떻게 쓰고 뭐가 좋은것인지 궁금해서 한번 찾아보아따! 근데 찾다보니까 한 블로에서 내가 궁금해했던 대부분의 것들을 정리해주셔서... [출처] madplay.github.io/post/what-is-gradle Gradle이란 무엇일까? 그루비(Grrovy)를 기반으로 한 빌드 자동화, 개발 지원에 중점을 둔 빌드 도구인 그래들(Gradle)에 대해서 알아보자 madplay.github.io 걍 거의 다 가져온 수준이여서 앞뒤로 출처를 밝힙니다!!!!! Gradle이 궁금하신분은 "오늘도 MadPlay"님의 블로그 들어가셔서 보시는걸 강추 드립니다! 정리천재! Gradle은 무엇인가? - Ant와 Maven과 같은 이전 세대 빌드 도구의 단점을 보완하고 장점을 취합한 굉장해.. 2021. 5. 5.
[HTTP웹기본지식] HTTP 메소드의 속성 김영한 강사님의 HTTP 웹 기본 지식 내용 발췌! 안전 (safe) - 음 그니까 조회말고 무언가를 변경하는거에 대한 안전(safe) 같다! - 호출해도 리소스를 변경하지 않는다. - Q: 그래도 계쏙 호출해서, 로그같은게 쌓여서 장애가 발생하면요? - A: 안전은 해당 리소스만 고려한다. 그런 부분까지 고려하지 않는다. 멱등 (Idempotent) - f(f(x)) = f(x) - 한번 호출하든 몇번을 호출하든 결과가 똑같음 - 멱등 메소드 Get: 한번 조회하든 몇번을 하든 같은 결과 조회 - 음... 헤깔리는데 소스가 바뀌면 조회하는 결과물도 바뀌는거 아닌가...? Put: 결과를 대체한다. 따라서 같은 요청을 여러번 해도 최종 결과는 같다. Delete: 결과 삭제: 같은 요청을 여러번해도 삭제.. 2021. 5. 5.
[JAVA] 자바 기초 개념 정리 블로그 숙제 (13. do-while) 1) 자바에서 객체란? 그렇다면 객체 지향은 무엇인가? 2) 키보드입력방법은 Scanner 말고도 더있는데 어떤것이 있는지. 어떻게 선언하고 사용하는지 3) scanner를 사용하기위하여 import문으로 자바에서 제공하는 scanner 라이브러리를 선언하여 사용하는데 라이브러리는 무엇이고 자바에서 제공하는 라이브러리는 어떤것들이 있는지?(최소3개이상 자주사용하는것위주로!) 숙제 해야지... 1) 자바에서 객체란? 그렇다면 객체 지향은 무엇인가? 객체! 객체가 무엇이지? 객체는 Object라고하며 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고 다른것과 식별 가능한 것을 말한다는데 무슨말인지 모르겠다. 쉽게 말해보자면 "객체는 .. 2021. 4. 24.
[HTTP웹기본지식] HTTP 메서드 - PUT, PATCH, DELETE 와~ 한달전에 했던거 다시 공부할겸....!! PUT (기존꺼 날려버리고 완 전 히 대체) - 리소스를 대체 = 쉽게 이야기해서 덮어버림 (수정하는게 아니고 갈아치워버림) -> 리소스가 있으면 대체 -> 리소스가 없으면 생성 - 중요! 클라이언트가 리소스를 식별 -> 클라이언트가 리소스 위치를 알고 URI 지정 -> POST와 차이점 PATCH (리소스 부분변경) DELETE - 리소스 제거 ---여기까지가 김영한 선생님의 강의!--- PUT vs. PATCH PATCH와 PUT은 둘 다 데이터의 수정을 위한 method! PUT 요청 시 요청을 일부분만 보낸 경우 나머지는 default 값으로 수정되는 게 원칙이므로, 바뀌지 않는 속성도 모두 보내야함! PUT /users/1 { "age": 15 } .. 2021. 3. 10.
반응형