[Kotlin] 코틀린 Collection과 배열 이 글은 Kotlin In Action을 참고 하였습니다.더욱 자세한 설명이나 예제는 직접 책을 구매하여 확인 하시기 바랍니다6.3.1 Collection의 null 처리. 앞서 nullable을 표기하기 위해서 type에 ?를 붙이는것을 언급했습니다.Collection을 사용할때는 nullable을 원소또는 자체에 붙일수 있습니다.List : list도 null이 아니고 원소에도 null이 없다.List :list는 null이 아니나 원소는 null일 수 있다.List? : list가 null이 될수 있으나 원소는 null이 아니다.List? : list와 원소모두 null이 될수 있다.위 네가지는 전부 의미하는 바가 다릅니다.따라서 각각에 맞는 null처리를 list 자체 또는 원소의 상태에 따라 해.. 개발이야기/Kotlin 7년 전
Java의 동기화 Synchronized 개념 정리#2 이번엔 singleton과 static 함수에서 synchronized가 어떻게 동작하는지 확인해 보겠습니다.Singleton 객체에서의 동기화singleton은 객체를 한개만 생성하여 사용하도록 합니다. 따라서 #1번 글에서 사용했던것과 예제나 개념은 크게 다르지 않습니다.public class Singleton { public ArrayList mList = new ArrayList(); private Singleton() { // } private static class Holder { public static final Singleton sHolderSingleton = new Singleton(); } public static Singleton getInstance() { return Holde.. 개발이야기/Java 7년 전
Android Service간 통신 #1 Service의 종류Android의 서비스는 간단히 구분하면, 내부/외부 서비스로 나눠진다. 내부 서비스는 말그대로 앱 안에서 서비스를 호출하는걸 말하고, 외부 서비스는 앱간 호출이 가능한 서비스라고 할 수 있다. 내부 서비스 역시 startService()로 서비스를 띄우는 로컬서비스와 bindService()를 통하여 서비스를 띄우는 bind 서비스로 나눠볼 수 있다. 이 글에서는 내부 bind service에 대해서 다루고자 한다.외부 bind service (RPC)에 대해서는 다음 포스팅에 다룬다. bind Service를 이용한 통신startService()와 bindService()의 차이가 뭘까? srartService()로 서비스를 만드는경우 intent에 번들로 어떤 정보를 전달할 수 .. 개발이야기/Android 7년 전
Android 애니메이션#1 - Thread & ImageSwitcher Thread를 이용한 AnimationAnimation 제작시 Thread로 이미지를 교체하면서 애니메이션을 만들수 있습니다. 간단하게 여러장의 이미지를 Thread의 sleep을 이용하여 순차적으로 바꾸는 방식입니다. 개념상 어렵지 않으니 예제를 보면서 설명하겠습니다. 예제는 다음과 같은 순서로 만듭니다. 1. layout xml에 ImageSwitcher, Start 버튼, Stop 버튼 추가 2. onCreate에서 findView를 이용하여 객체 reference로 가져옴 3. Thread에서 ImageSwitcher를 이용하여 이미지 교체 ImageView를 이용하여 resource를 교체해도 상관은 없습니다만 ImageSwitcher는 이미지를 교체하면서 animation 효과를 줄 수 있습니.. 개발이야기/Android 7년 전
Java 8 Lambda Expression - 람다식 #2 지난 포스팅에 이어 계속 진행합니다.지난번에는 Strategy pattern을 람다식을 사용하면서 코드를 간결하게 변경시키는 방법을 봤습니다. 이번에는 가장 간단하게 람다식을 쓰는 방법에 대해 언급합니다. 익명클래스 (anonymous class)의 치환 - ComparatorLambda를 사용하는 가장 간단한 방법으로 익명클래스를 람다로 치환할 수 있습니다. new class...로 시작하는 불필요한 부분은 제거하고, 필요한 부분만 람다로 표현합니다. 이전 포스팅에서 상품List의 을 가격으로 정렬하려면 Collection.sort(List, Comparator)를 사용해야 합니다. 이전 포스팅에서 사용한 person 객체및 해당 list 생성 코드 입니다. public class Product { p.. 개발이야기/Java 8년 전