카테고리

    SparseArray가 HashMap보다 좋은이유와 사용예

    이클립스에서 Map를 사용하게 되면, SparseArray 더욱 좋은 Performance를 가지고 있으니 바꾸라는 Lint가 뜬다. 그렇다면 SparseArray는 무엇일까? 안드로이드 API version 1 부터 제공되었으며, Java가 아닌, Android 문법으로 만들어졌다. (때문에 자바에서도 사용하려면, hashmap을 쓰는 게 장점이라는 부분도 있지만, 안드로이드에서는 안드로이드의 법을 따라...) Sparse의 의미는 "뜨문뜨문 떨어져있는"이다. 위키를 따르면, Map를 사용하는 이유는 put 를 넣고 get(key)를 통해 value를 가져오기 위함이다. 이 때 주로 key값에는 value.hashcode()를 사용하게 되며, (HashCode()는 Object의 Method로 int형..

    Android 4.3 Notification Listener Service 예제

    Android 4.3 Notification Listener Service 예제 4.3부터 생겨난 Notification Listener Service예제입니다. 간단하게 세팅화면 접근 및 LOG로 찍도록 만들어서 올립니다. 이전 버전까지는 Accessibility로 접근이 가능했으나, 4.3부터는 Notification Listener Service로 접근이 가능합니다.(다만. 접근성에서도 캐치가 안되는 부분(라인 이라던가)은 NLS에서도 캐치가 되지 않더군요.) 필요하신 분들은 사용하시기 바랍니다.

    Object-Oriented Programming Concepts 객체지향의 컨셉

    http://pdf-world.net/download.php?id=33940 을 번역한 글입니다. (일부 오역이 있을 수 있습니다.) 객체 지향 프로그래밍 컨셉 아래의 네가지 중요한 컨셉들은 객체 지향 프로그래밍의 패러다임을 구성합니다. 1. 객체 지향 프로그램들은 객체의 집합들로 만들어진다. 2. 이 객체들은 프로그램의 작업을 수행하기위해 다른 객체들과 소통한다. 이 소통은 메세지를 통해서 이루어진다. 3. 객체는 클래스라고 불리는 템플릿으로 정의된다. 4. 클래스들은 부모 클래스(super class)로 부터 그들의 행동 일부를 상속받을 수 있다.객체 학생, 비행기, 바위, 강사 등 : 현실 세계는 객체로 구성되어 있습니다. 이들은 모두 상태와 행동을 가집니다. 소프트웨어 객체(혹은 단훈한 객체)는 ..

    Generic in java, what is the raw type?

    Generic in Java Generic이란 단어의 의미를 찾아보면 '포괄적인/추상적인'이란 뜻을 마주하게 됩니다. Generic programming이 Java에 들어오게 된건 J2SE 5.0 (2004년도) 부터입니다. Generic Programming은 단어의 의미와 같이 '추상적인'형태로 표현을 하는 프로그래밍 기법입니다. 자바에서는 이를 위해 제네릭 타입과 메소드를 제공하며 C++의 그것과 유사한점이 있지만 차이점도 많이 가지고 있습니다. 제네릭 프로그래밍을 씀으로써 얻어지는 장점(C++ 템플릿과 비교하여)은, 컴파일 시 타입체킹이 가능하다. 하나의 컴파일 된 코드를 생성한다. 컴파일된 라이브러리만 존재하면 동작이 가능하다. 세가지로 이야기를 할 수 있습니다. 제네릭 클래스, 인터페이스, 메..

    안드로이드 아키텍쳐 (Analysis of the Android Architecture) #2-1 안드로이드 구조

    KIT라는 곳에서 2010년도에 발표된 Analysis of the Android Architecture에 대해 번역을 한 글입니다. 원본은 http://os.ibds.kit.edu/downloads/sa_2010_braehler-stefan_android-architecture.pdf이며, 중간중간 개인적인 주석은 () / *로 처리하겠습니다. 간단하게 아키텍쳐를 이해하는데 도움을 얻으려 번역을 하고 공유하려 합니다. (일부 오역 및 의도가 잘못 전달 되었을 수도 있습니다. 양해부탁드립니다) 2. 안드로이드 구조 OS의 최대의 목표는 Application을 구동시키기 위함이며, 안드로이드는 서로 다른 Layer에서 Application을 실행하고 관리하기 위해 몇가지를 제공합니다. 안드로이드는 확실히 ..

    안드로이드 아키텍쳐 (Analysis of the Android Architecture) #1 안드로이드 개요

    KIT라는 곳에서 2010년도에 발표된 Analysis of the Android Architecture에 대해 번역을 한 글입니다. 원본은 http://os.ibds.kit.edu/downloads/sa_2010_braehler-stefan_android-architecture.pdf이며, 중간중간 개인적인 주석은 () / *로 처리하겠습니다. 간단하게 아키텍쳐를 이해하는데 도움을 얻으려 번역을 하고 공유하려 합니다. (일부 오역 및 의도가 잘못 전달 되었을 수도 있습니다. 양해부탁드립니다) 1. 안드로이드 소개 및 개요 스마트폰과 태블릿은 점점 더 인기가 많아지고 있으며, OS의 중요성은 점점 중요해지고 있다. 안드로이드와 같은 OS는 배터리에 의해 돌아가는 기기에 탑재가 됩니다. GPS, 카메라, ..