일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- 페이스북 번역
- 자바스크립트
- Design Pattern
- Push
- 웹사이트성능
- 디자인패턴
- 웹사이트최적화기법
- kafka
- php
- gcm 푸시 번역
- 카프카 트랜잭션
- nginx
- APNS
- nginx설치
- 도메인 주도 개발
- notification
- Java
- 카프카
- 성능
- graphql
- 웹사이트 성능
- ddd
- nginx설정
- JPA
- GCM
- GCM 번역
- 푸시
- git
- 푸시 번역
- Today
- Total
목록Computer Science (44)
간단한 개발관련 내용
OIO(Old Input/Output) 와 NIO(Non-blocking Input/Output or New Input/Output) 몇 년 사이 두드러진 netty(http://netty.io/) 나 vert.x(http://vertx.io/) 등과 같은 네트워크 라이브러리를 잘 활용하기 위해서는 비동기에 대한 못지 않게 OIO(Old Input Output) 과 NIO(Non-blocking Input Output or New Input Output) 에 대한 개념에 대해 알고 있어야 합니다. Java 에서 NIO 는 JDK1.4 에서부터 지원을 하기 시작했는데요. 기존의 Java I/O 는 socket 을 accept() 할 때와, data 를 read() 할 때 해당 Thread 가 Block 이..
Interface 자바에서 간단했던 인터페이스가 JAVA8 의 등장으로 추가된 내용들이 생겼습니다. 항상 쉽게 생각할 수 있지만, 이런 것들이 막상 설명하려면 어렵게 느껴질 때가 있는데요. 기존의 인터페이스를 간단히 요약하면 다음과 같습니다. 모든 멤버변수는 public static final 이어야 하며 이를 생략할 수 있으며,모든 메소드는 public abstract 이어야하고 이를 생략 수 있습니다. 이처럼 간단하게만 알고 있었으며 사용하고 있었는데요. 조금 더 자세하게 이야기 해 보도록 하겠습니다. 자바에서의 인터페이스는 클래스의 bluprint 입니다. 인터페이스는 앞서 이야기 했듯이 static constants 와 abstract methods 로만 이루어져 있습니다. 자바에서의 인터페이스는..
Covariant return type 우리 말로 '공변 반환 타입' 이라고 하는데, 리턴 타입은 서브클래스라는 범위 안에서 다양할 수 있다는 것으로 java 1.5 부터 적용 되었습니다. 본래 오버라이딩이 이름이 같아야하고, 매개변수가 같아야 하며, 반환타입 또한 같아야 하는데 java 1.5 부터 Primitive 타입이 아닌 Subclass 타입으로 오버라이딩이 가능하게 된 것 입니다. refer ) http://www.javatpoint.com/covariant-return-type http://www.java-tips.org/covariant-return-types.html
1. 정의.의도 - 객체 사이에 일 대 다의 의존 관계를 정의해 두어, 어떤 객체의 상태가 변할 때 그 객체에 의존성을 가진 다른 객체들이 그 변화를 통지받고 자동으로 갱신될 수 있게 만듭니다. 위키피디아 - 옵서버 패턴(observer pattern)은 객체의 상태 변화를 관찰하는 관찰자들, 즉 옵저버들의 목록을 객체에 등록하여 상태 변화가 있을 때마다 메서드 등을 통해 객체가 직접 목록의 각 옵저버에게 통지하도록 하는 디자인 패턴이다. 주로 분산 이벤트 핸들링 시스템을 구현하는 데 사용된다. 발행/구독 모델로 알려져 있기도 하다. 해드퍼스트 - 옵저버 패턴에서는 한 객체의 상태가 바뀌면 그 객체에 의존하는 다른 객체들한테 연락이 가고 자동으로 내용이 갱신되는 방식으로 일대다(one to many) 의..
1. 정의. 의도 - 객체의 내부 상태에 따라 스스로 행동을 변경할 수 있게 허가하는 패턴으로, 이렇게 하면 객체는 마치 자신의 클래스를 바꾸는 것처럼 보입니다. 위키피디아 - The state pattern, which closely resembles Strategy Pattern, is a behavioral software design pattern, also known as the objects for states pattern. This pattern is used in computer programming to encapsulate varying behavior for the same object based on its internal state. This can be a cleaner way..
Decorator Pattern 디자인 카탈로그에는 ... - 주어진 상황 및 용도에 따라 어떤 객체에 책임을 덧붙이는 패턴으로, 기능 확장이 필요할 때 서브클래싱 대신 쓸 수 있는 유연한 대안이 될 수 있습니다. 디자인 패턴 영역 - 구조 및 객체 패턴. 디자인 패턴 관계도 - (composite -> adding responsibilities to objects) 의도 - 객체에 동적으로 새로운 책임을 추가할 수 있게 합니다. 기능을 추가하려면, 서브클래스를 생성하는 것보다 융통성 있는 방법을 제공합니다. * 데코레이터 패턴에서는 객체에 추가적인 요건을 동적으로 첨가한다. 데코레이터는 서브클래스를 만드는 것을 통해서 기능을 유연하게 확장할 수 있는 방법을 제공한다.(상속을 이용해 타입을 맞춘다.) 동..