분류 전체보기 1664

보고 싶은 책 정리(계속 업데이트 중)

전공 책 정리는 여기를 참고 하세요. 영어 책 정리는 여기를 참고 하세요. 다음 읽을 책 레미제라블 타이탄의 도구들 소장 목록 앨빈 토플러 부의 미래 꽃으로도 때리지 말라 팀장 멘토링 초등 읽기능력이 평생성적을 좌우한다 한국어 표준 발음 바르게 읽기 : KBS 아나운서와 함께 배우는 2주에 1권 책 읽기 다산선생 지식경영법 왜 나는 너를 사랑하는가 / 알랭 드 보통 Alice's a Adventures in Wonderland 부의미래 회사가 당신에게 알려주지 않는 50가지 비밀 지금 사랑하지 않는 자, 모두 유죄 동양철학 에세이 눈먼자들의 도시 20대 나만의 무대를 세워라. 내 생애 단 한번 마이크로트렌드 개밥바리기 별 화성에서 온 남자, 금성에서 온 여자 공부하는 독종이 살아남는다 건방진 우리말 달인..

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/..

@JvmOverloads: constructor 가 해주는 것

@JvmOverloads 어노테이션을 사용하면 여러 개의 constructor를 상속받는 번거로움이 줄어들고, xml inflation 시에도 문제가 발생하지 않는다. constructor를 직접 작성한 버전 class CustomView: View { constructor(context: Context) : super(context) constructor(context: Context, attrs: AttributeSet?) : super(context, attrs) constructor(context: Context, attrs: AttributeSet?, @AttrRes defStyleAttr: Int) : super(context, attrs, defStyleAttr) } @JvmOverloads..

안드로이드 텍스트뷰 속성 (Android TextView Attributes)

이 글은 제가 작성한게 아니라... 제가 나중에 쓰려고 하는 스크랩에 가깝습니다. 더 자세한 건 출처를 참고 하세요~ + TextView 속성의 종류 autoLink TextView를 링크 형태로 사용. autoText 텍스트 입력 시, 자동 오타 수정 기능 사용. breakStrategy TextView의 텍스트 줄넘김 정책 지정. bufferType getText() 함수로 리턴되는 버퍼 타입 지정. capitalize 알파벳 소문자 입력(표시) 시, 대문자로 자동 변환. cursorVisible 텍스트 입력 커서를 보일지 말지 여부 지정. digits TextView에 입력 가능한 문자 제한. drawableBottom 텍스트를 기준으로 아래쪽에 이미지 출력. drawableEnd 텍스트를 기준으로..

String.hashCode()는 같은 값을 리턴합니다. 근데 왜 HashMap에서 쓰나요?

결론 먼저.. String.hashCode()는 중복된 값을 리턴할 수 있습니다. 하지만 HashMap에서 key로 String을 쓰셔도 됩니다. 왜냐면, HashMap은 hashCode(), == and equals() 를 이용해서 값을 저장할 entry lookup 을 선정하기 때문입니다. 즉, hashCode()값이 같아도, == 이나 equals() 함수를 통해서 다른 entry lookup으로 분기 된다는 것입니다. ------------------------------------------------------------------------------------------------------------------------- HashMap의 key를 String으로 쓸 기회가 있어서.. 이..