2021/08 3

observeOn vs subscribeOn

subscribeOn : 현재 Observable가 시작하는 스레드를 지정한다.(지정하지 않을 경우 현재 Observable을 호출하는 스레드를 따라간다.) : 여러번 호출 할 경우 첫번째 것만 사용된다. observeOn : 'observeOn() 구문' 아래에 나올 구문들의 스레드를 지정한다. : .observeOn() 안의 스레드는 ui 스레드나, background 스레드 모두 지정할 수 있다. 일반적인 사용 : subscribeOn()에서 background 스레드(Schedulers.computation(), Schedulers.io()) 를 지정하여 데이터를 모으고, 데이터를 UI에 보여줄 때 observeOn() 을 이용해서 ui 스레드로 변경해서 보여준다. 예시 ) Observable.j..

브랜치 전략(Branch strategy)

전체적으로 Github-flow와 git-flow가 있다.(이름이 참... 허갈리게 되어있다) 상황마다 다르겠지만, 굳이 사용처를 나누자면 아래와 같다. 1개월 이상의 긴 호흡으로 개발하여 주기적으로 배포, QA 및 테스트, hotfix 등 수행할 수 있는 여력이 있는 팀이라면 git-flow가 적합하다 수시로 릴리즈 되어야 할 필요가 있는 서비스를 지속적으로 테스트하고 배포하는 팀이라면 github-flow 와 같은 간단한 work-flow가 적합하다 자세한 그림 같은 건 아래 출처를 참고 하세요. 출처 : https://hyeon9mak.github.io/git-branch-strategy/#:~:text=%EB%B8%8C%EB%9E%9C%EC%B9%98%20%EC%A0%84%EB%9E%B5%EC%9..

컴퓨터공부 2021.08.28

Kotlin에서 변수 깊은 복사(Deep copy) 하기

Gson을 아래와 같이 이용하면 의도적으로 깊은 복사가 가능하다. class Animal{ fun clone(): Animal { val stringAnimal = Gson().toJson(this, Animal::class.java) return Gson().fromJson(stringAnimal, Animal::class.java) } } val originalAnimal = Animal() val clonedAnimal = originalAnimal.clone() 단어. 얕은 복사(shallow copy), 깊은 복사(deep copy) 참고 : https://velog.io/@ellyheetov/Shallow-Copy-VS-Deep-Copy 출처 : https://stackoverflow.com/..