맥북 프로에 사용하기 위해서 ANKER에서 만든 USB-C 허브를 구매하였습니다. 아마존에서 직구로 구입하였고, $59.99에 구입하였습니다. [개봉기] 맥북 프로 터치 바 15인치 : http://thdev.net/757 개봉 ANKER의 박스입니다. ANKER은 한국에서는 USB 충전 허브로 유명하죠. USB 충전 허브는 국내에서 정식으로 판매 중이죠 박스를 열면 아래와 같이 본체가 보입니다. USB-C 케이블이 바로 보이고, 알루미늄 기본 색상이 담겨있습니다. 이 제품을 위한 파우치도 제공합니다. 파우치는 공간이 좀 넓어서 케이블도 함께 들어갑니다. 기본 USB 3.0을 연결할 수 있는 포트 2개가 있는데 3.0을 지원하고, 5Gbps를 제공합니다. 충전을 겸할 수 있는 USB-C 연결 포트 부분도..
9월 5일 11번가에서 이벤트 했던 맥북프로를 구입했습니다. 이후에 300만 원 정도에 판매되고 있고, 9월 5일 이벤트에서는 290만 원에 구매 했었습니다. 350만 원대를 290만 원에 구매한 것이니 학생 할인을 받는 것보다 저렴하게 구입한것 같네요. 맥북 프로 터치 바 15인치 - 2017 스펙2.9GHz 쿼드 코어 i7512GB PCIe 온보드 SSD16GB 메모리Radeon Pro 560(4GB GDDR5 메모리)Thunderbolt 3(USB-C) 포트 4개백라이트 및 터치 바 + 터치 ID두께 1.55cm무게 : 1.83kg 2016년 버전에 비해서 고급형 모델의 기본 사양이 좋아졌습니다. 하지만 16기가가 최대인 메모리.. 내년 버전에 32GB가 나올 거라고 하니 급하지 않으신 분들은 당연..
다음 글은 전체 내용을 공유하지 않고, 새로운 블로그로 링크를 제공하는 글입니다.이어보기 : http://thdev.tech/kotlin/androiddev/2017/10/07/Kotlin-SAM Kotlin에는 SAM Conversions이 제공됩니다. Single Abstract Methods의 약자로 SAM이라고 합니다.이름에서 알 수 있듯 SAM은 하나의 추상 메서드에 대해서 lambdas 식을 제공합니다. 단, Java에서 작성한 Interface 정의와 이를 활용하는 setOnClickListener를 kotlin에서 부르는 경우에만 이에 해당합니다.코틀린에서 유용해야 하는데 실제로는 kotlin에서 작성한 interface와 setOnClickListener 구현체가 있을 경우에는 SAM이 ..
코스트코에서 판매하는 보스 솔로를 구입 직구를 하거나, 온라인으로 구매하는 것보다 저렴하게 판매해서 구매했습니다.(하반기 블프 때보다는 비싸지만...) 5월쯤에 구매하였는데 아직 판매하는 것 같더군요. 25만 원..? 솔로는 기본 TV와 연결하고, 블루투스도 제공합니다. 박스 안에는 케이블과 매뉴얼 본체로 간단하게 구성되어 있죠. 본체 가운데에는 BOSE 로고가 들어가 있고, 생각보다 짧습니다. 27인치 모니터와 크기가 비슷한데 저는 42인치 TV와 함께 사용 중입니다. 크기가 좀 작죠. 기본 TV보다는 작겠죠. 3개의 입력을 받고, USB 제공합니다.저는 TV랑 연결할 때 Optical로 연결했습니다. 보스 솔로 5에 포함된 리모컨은 통합인데 이건 기본 리모컨입니다. 통합이 아니니 TV용 따로, 스피커..
다음 글은 전체 내용을 공유하지 않고, 새로운 블로그로 링크를 제공하는 글입니다.이어보기 : http://thdev.tech/kotlin/android/2017/10/03/Kotlin-Generics kotlin의 Generics을 정리합니다. Java에서 사용하는 Generics과 동일하게 사용할 수 있지만, Kotlin에서는 Generics 정의한 클래스를 상속받을 때 명시적으로 정의해야 합니다.다시 말해 java에서는 제네릭 정의를 하지 않으면, 기본 Object을 따르지만, 코틀린에서는 명시적으로 꼭 적어주도록 만들었습니다.Kotlin Generics 문서 Java Generics 정의하기먼저 Java에서의 Generics 정의를 살펴보죠.interface Generic { void setItem..
다음 글은 전체 내용을 공유하지 않고, 새로운 블로그로 링크를 제공하는 글입니다.이어보기 : http://thdev.tech/kotlin/2017/10/02/Kotlin-Higher-Order-Function Kotlin에는 Higher-Order Functions 사용이 가능합니다.Higher-Order Functions은 함수를 변수로 넘겨주거나, 이를 반환하는 것을 말하는데, 레퍼런스 문서에 정의 내용을 참고하여 설명합니다.fun lock(lock: Lock, body: () -> T): T { lock.lock() try { return body() } finally { lock.unlock() } } lock 함수에 포함된 파라메터 중 body: () -> T Higher-Order Functi..
다음 글은 전체 내용을 공유하지 않고, 새로운 블로그로 링크를 제공하는 글입니다.이어보기 : http://thdev.tech/androiddev/2017/08/09/Android-MVC_MVP_MVVM-Intro Android MVC/MVP/MVVM가 소개되었고, 다양한 방법으로 이러한 Architecture를 적용하게 됩니다.구글에서는 테스트 가능한 형태를 만들어주기 위해서 Android Architecture Blueprints을 소개해주었습니다. 하지만 모두가 이러한 방법을 따르는 것은 아닙니다.저도 공부를 하면서 다양한 MVP 패턴을 학습 및 고민한 흔적을 Android MVP 무작정 따라하기 시리즈로 남길 수 있었습니다.이번 글에서는 MVC > MVP > MVVM으로 순차적으로 넘어가게 되었던 ..
QC 30에 개봉기를 작성합니다. 벌써 사용한 지는 3개월도 넘었지만 이제야 개봉기를 작성합니다. QC 30은 Bose에서 나온 넥밴드 형태의 노이즈 캔슬링 블루투스입니다. QC30은 보스의 음질을 유선이 아닌 무선으로 들을 수 있었습니다. 기존에는 유선의 QC20이 있었습니다. 제가 청음 해볼 기회가 있었는데 노이즈 캔슬링은 최고였지만 기본 음질은 생각보다 기대 이하였습니다.가격 대비 음질은 떨어지고, 노이즈 캔슬링은 너무 좋아서 구매할까를 고민했었지만 결국 구입은 하지 않았습니다.직구시에는 30만 원에 구입이 가능하지만 AS는 불가능합니다. 여하튼 그러다가 발견한 QC30 블루투스로 QC20이 가지지 못한 두 가지를 모두 가지고 있습니다.단점은 .. 귓구멍의 크기에 따라서 노이즈 캔슬링 여부가 많이 ..