http://lucasmreis.github.io/blog/simple-react-patterns/

http://hellchosun.net/52

http://smartaedi.tistory.com/111

'링크모음 > etc' 카테고리의 다른 글

크롬 추천 확장기능 ~ 디자인편  (0) 2017.11.16
상업용 무료폰트 모음 링크  (0) 2017.11.09
익스퍼트 비기너2편  (0) 2017.11.06
mysql index 정리  (0) 2017.11.06
5일만에 기획부터 프로토타입까지  (0) 2017.11.05

http://www.popit.kr/%eb%82%98%eb%a7%8c-%eb%aa%a8%eb%a5%b4%ea%b3%a0-%ec%9e%88%eb%8d%98-java9-%eb%b9%a0%eb%a5%b4%ea%b2%8c-%eb%b3%b4%ea%b8%b0/

'링크모음 > java' 카테고리의 다른 글

java trim() 이 안먹힐때..  (0) 2017.09.28
대표적인 소프트웨어 아키텍쳐 10가지  (0) 2017.09.15
DTO와 VO 차이점..  (0) 2017.08.09

'링크모음 > etc' 카테고리의 다른 글

상업용 무료폰트 모음 링크  (0) 2017.11.09
라즈베리파이에서 할수있는 것 탑10  (0) 2017.11.07
mysql index 정리  (0) 2017.11.06
5일만에 기획부터 프로토타입까지  (0) 2017.11.05
기기별 목업  (0) 2017.11.05

'링크모음 > Android' 카테고리의 다른 글

fileexposeexception 발생시  (0) 2017.11.16
텐서플로로 안드로이드에서 실행하기  (0) 2017.11.15
android 매트리얼 ui builder  (0) 2017.11.06
android 저장소 전략  (0) 2017.11.04
오픈소스 정리  (0) 2017.11.02

http://jojoldu.tistory.com/243

'링크모음 > etc' 카테고리의 다른 글

라즈베리파이에서 할수있는 것 탑10  (0) 2017.11.07
익스퍼트 비기너2편  (0) 2017.11.06
5일만에 기획부터 프로토타입까지  (0) 2017.11.05
기기별 목업  (0) 2017.11.05
개발자 치트시트 추천  (0) 2017.10.30

https://www.slideshare.net/mobile/secret/6Bbyx0PnKcsDwe

'링크모음 > Swift' 카테고리의 다른 글

swift defer 예제  (0) 2017.10.22
swift4 tour  (0) 2017.10.22
노티피케이션 사용법  (0) 2017.10.20
swift 에서 self 값 체크  (0) 2017.10.18
pod update/install 시 라이버러리를 전부 강제 3.2로 세팅하기  (0) 2017.10.16

https://material.io/color/#!/?view.left=0&view.right=0&primary.color=9C27B0

'링크모음 > Android' 카테고리의 다른 글

텐서플로로 안드로이드에서 실행하기  (0) 2017.11.15
Mockito 관련 팁 모음 링크  (0) 2017.11.06
android 저장소 전략  (0) 2017.11.04
오픈소스 정리  (0) 2017.11.02
Android code style  (0) 2017.10.30

https://proandroiddev.com/animate-it-on-react-native-with-opengl-b470252166f4

https://brunch.co.kr/@thinkaboutlove/87

'링크모음 > etc' 카테고리의 다른 글

익스퍼트 비기너2편  (0) 2017.11.06
mysql index 정리  (0) 2017.11.06
기기별 목업  (0) 2017.11.05
개발자 치트시트 추천  (0) 2017.10.30
파이썬 기초  (0) 2017.10.28

http://facebook.design/devices

'링크모음 > etc' 카테고리의 다른 글

mysql index 정리  (0) 2017.11.06
5일만에 기획부터 프로토타입까지  (0) 2017.11.05
개발자 치트시트 추천  (0) 2017.10.30
파이썬 기초  (0) 2017.10.28
아마존 직구방법 총정리  (0) 2017.10.21

http://www.mobiinside.com/kr/2017/11/03/buzzvil-tensorflow/

http://pluu.github.io/blog/android/droidkaigi/2017/11/01/droidkaigi-2017-android-storage/

'링크모음 > Android' 카테고리의 다른 글

Mockito 관련 팁 모음 링크  (0) 2017.11.06
android 매트리얼 ui builder  (0) 2017.11.06
오픈소스 정리  (0) 2017.11.02
Android code style  (0) 2017.10.30
Android RecyclerView 팁 모음  (0) 2017.10.30

'링크모음 > Android' 카테고리의 다른 글

android 매트리얼 ui builder  (0) 2017.11.06
android 저장소 전략  (0) 2017.11.04
Android code style  (0) 2017.10.30
Android RecyclerView 팁 모음  (0) 2017.10.30
정보통신망법-준수를-위한-앱-푸시-광고-가이드라인  (0) 2017.10.25

공식 가이드

https://source.android.com/source/code-style#follow-field-naming-conventions


참고 가이드

http://givenjazz.tistory.com/44


Square code style ( java  ,  Android)

https://github.com/square/java-code-styles

'링크모음 > etc' 카테고리의 다른 글

5일만에 기획부터 프로토타입까지  (0) 2017.11.05
기기별 목업  (0) 2017.11.05
파이썬 기초  (0) 2017.10.28
아마존 직구방법 총정리  (0) 2017.10.21
데뷰 2017 자료 모음  (0) 2017.10.20

https://m.blog.naver.com/PostView.nhn?blogId=edy5016&logNo=221126776190&proxyReferer=http://m.facebook.com

'링크모음 > etc' 카테고리의 다른 글

기기별 목업  (0) 2017.11.05
개발자 치트시트 추천  (0) 2017.10.30
아마존 직구방법 총정리  (0) 2017.10.21
데뷰 2017 자료 모음  (0) 2017.10.20
파일별 시그니처 확인법  (0) 2017.09.05

http://developer88.tistory.com/m/138

'링크모음 > Swift' 카테고리의 다른 글

swift codable  (0) 2017.11.06
swift4 tour  (0) 2017.10.22
노티피케이션 사용법  (0) 2017.10.20
swift 에서 self 값 체크  (0) 2017.10.18
pod update/install 시 라이버러리를 전부 강제 3.2로 세팅하기  (0) 2017.10.16

http://wlaxhrl.tistory.com/m/70

'링크모음 > Swift' 카테고리의 다른 글

swift codable  (0) 2017.11.06
swift defer 예제  (0) 2017.10.22
노티피케이션 사용법  (0) 2017.10.20
swift 에서 self 값 체크  (0) 2017.10.18
pod update/install 시 라이버러리를 전부 강제 3.2로 세팅하기  (0) 2017.10.16

만약 Backpressure없는 Flowable을 사용시 어떤 함수를 사용하면 좋은지 알아보자.

우선 onBackpressureBuffer() 을 알아보자.

복습을 하자면

Flowable.interval( 1, TimeUnit.MILLISECONDS)
        .observeOn(Schedulers.io())
        .subscribe(i -> {
            sleep(5);
            System.out.println("Received MyItem : " + i);
        });

을 사용시 배출이 생성하는 것을 못 따라주기 때문에 오류가 난다.

Received MyItem : 21
Received MyItem : 22
Received MyItem : 23
Received MyItem : 24
io.reactivex.exceptions.OnErrorNotImplementedException: Can't deliver value 128 due to lack of requests
    at io.reactivex.internal.functions.Functions$OnErrorMissingConsumer.accept(Functions.java:704)
    at io.reactivex.internal.functions.Functions$OnErrorMissingConsumer.accept(Functions.java:701)
    at io.reactivex.internal.subscribers.LambdaSubscriber.onError(LambdaSubscriber.java:76)

그러기 때문에 배압(Backpressure)을 넣어줘야 한다.

Flowable.interval( 1, TimeUnit.MILLISECONDS)
    .onBackpressureBuffer()
    .observeOn(Schedulers.io())
    .subscribe(i -> {
        sleep(5);
        System.out.println("Received MyItem : " + i);
});
...........
....
Received MyItem : 47
Received MyItem : 48
Received MyItem : 49
Received MyItem : 50
Received MyItem : 51
Received MyItem : 52
Received MyItem : 53
Received MyItem : 54
Received MyItem : 55
Received MyItem : 56
Received MyItem : 57
Received MyItem : 58
....

정상적으로 작동이 된다. onBackpressureBuffer 의 경우 배압이 될 만한 부분을 버퍼에 넣어서 한꺼번에 배출시키는 역할을 한다.

인자로 주는 경우 주로 많이 쓰이는 내용(BackpressOverflowStrategy) 를 알아보자. 오버플로가 될 경우 발생된다.

ERROR용량이 가득차면 간단하게 오류를 뱉는다.
DROP_OLDEST최신껄 위해 가장 오랜된 걸 먼저 비운다.
DROP_LATEST최신껄 삭제해서 사용되지 않은 오래된 값을 우선순위를 지정한다.

그럼 DROP_LATEST 를 사용해보자.

Flowable.interval( 1, TimeUnit.MILLISECONDS)
        //long capacity, Action onOverflow, BackpressureOverflowStrategy overflowStrategy
        //Action은 오버플로우 발생시 콜백을 지정할 수 있다.
        .onBackpressureBuffer(10 , ()-> System.out.println("overflow") , BackpressureOverflowStrategy.DROP_LATEST)
        .observeOn(Schedulers.io())
        .subscribe(i -> {
            sleep(5);
            System.out.println("Received MyItem : " + i);
});
.................
Received MyItem : 135
overflow
overflow
overflow
overflow
overflow
Received MyItem : 136 <----- 이 부분을 유의해서 보자.
overflow
overflow
overflow
overflow
Received MyItem : 489 <----- 이 부분을 유의해서 보자.
overflow
overflow
overflow
overflow
overflow
Received MyItem : 490

넘칠 경우 overflow 출력이 되고 있다. DROP_LAST 를 사용시 136 에서 489 사이에 숫자들이 생략된게 보인다.

이유는 이미 가득차서 최신껄 삭제를 해서 다시 넣는 과정을 거친다.

onBackpressureLatest()

onBackpressureBuffer() 의 약간 변형이다. 최신 값을 제공하며 그 시간동안 방출된 이전 값은 모두 제거한다.

예를 보자.

Flowable.interval( 1, TimeUnit.MILLISECONDS)
        .onBackpressureLatest()
        .observeOn(Schedulers.io())
        .subscribe(i -> {
            sleep(5);
            System.out.println("Received MyItem : " + i);
});
.........
Received MyItem : 125
Received MyItem : 126
Received MyItem : 127 <------
Received MyItem : 485 <------
Received MyItem : 486
Received MyItem : 487

숫자가 갑자기 점프를 하였다. 이유는 이미 안은 차서 최신껄 제공하고 이전껀 제거를 하고 있기 때문이다.

onBackPressureDrop()

오버플로 발생시 단순히 해당 아이템을 드랍함으로써 질서를 유지한다.

예를 보자.

Flowable.interval( 1, TimeUnit.MILLISECONDS)
    .onBackpressureDrop(i -> System.out.println("Dropping " + i))
    .observeOn(Schedulers.io())
    .subscribe(i -> {
        sleep(5);
        System.out.println("Received MyItem : " + i);
});
.........
Received MyItem : 1583
Dropping 2013
Dropping 2014
Dropping 2015
Dropping 2016
Received MyItem : 1584
Dropping 2017
Received MyItem : 1585
Received MyItem : 1586
Received MyItem : 1587
Received MyItem : 1588

오버 플로우시 Drop 을 하고 있다.

다음 장에선 Flowable.generate() 을 살펴볼 예정이다.

만약 우리가 배압을 직접 컨트롤 하고 싶을때 사용하는 함수이다.


https://www.sevenzone.com/bbs/board.php?bo_table=guide&wr_id=1

'링크모음 > etc' 카테고리의 다른 글

개발자 치트시트 추천  (0) 2017.10.30
파이썬 기초  (0) 2017.10.28
데뷰 2017 자료 모음  (0) 2017.10.20
파일별 시그니처 확인법  (0) 2017.09.05
무료 강의  (0) 2017.09.02

https://gist.github.com/ksseono/ccca68ffec9ec6bf655e6d12ce105450

'링크모음 > etc' 카테고리의 다른 글

파이썬 기초  (0) 2017.10.28
아마존 직구방법 총정리  (0) 2017.10.21
파일별 시그니처 확인법  (0) 2017.09.05
무료 강의  (0) 2017.09.02
Headless Chrome으로 AWS Lambda에서 웹사이트 스크린샷 찍기 링크구분  (0) 2017.08.31

+ Recent posts