본문 바로가기
[RxJava] #6 안드로이드의 RxJava 활용 [RxJava] #6 안드로이드의 RxJava 활용 - 자바8에는 Stream API 와 같은 Push-based 데이터 처리 기능이 있다. 그러나 안드로이드에서는 이러한 자바 8의 기능을 완벽하게 사용할 수 없다. - 안드로이드에서 RxJava 를 활용할 수 있는 RxAndroid 라는 라이브러리를 사용할 수 있다. 6.1. RxAndroid 소개 - RxAndroid 는 RxJava 에 최소한의 클래스를 추가하여 안드로이드 앱에서 리액티브 구성 요소를 쉽고 간편하게 사용하게 만드는 라이브러리이다. - RxAndroid 의 장점은… 간단한 코드로 복잡한 concurrency 프로그래밍을 할 수 있다. 비동기 구조에서 에러를 다루기 쉽다. 함수형 프로그래밍 기법도 부분적으로 적용할 수 있다. 6.1.1... 2019. 6. 10.
[Java8 In Action] #4 스트림 소개 [Java8 In Action] #4 스트림 소개 Java8 In Action 내용을 보며 정리한 내용입니다.정리자는 기존에 Java8 을 한차례 rough 하게 공부한 적이 있고, Kotlin 역시 공부한 적이 있습니다.위의 prerequisite 가 있는 상태에서 추가적인 내용만 정리한 내용이므로, 제대로 공부를 하고 싶다면 책을 구매해서 보길 권장합니다! 4.1. 스트림이란 무엇인가? -스트림은 자바 API 에 새로 추가된 기능으로, 스트림을 이용하면 선언형(즉, 데이터를 처리하는 임시 구현 코드 대신 질의로 표현)으로 컬렉션 데이터를 처리할 수 있다.또한 스트림을 이용하면 멀티스레드 코드를 구현하지 않아도 데이터를 투명하게 병렬로 처리할 수 있다. -스트림을 사용하면 선언형으로 코드를 구현할 수 .. 2018. 12. 24.
[android] Java8 을 사용해보자! [android] Java8 을 사용해보자! https://developer.android.com/studio/preview/features/java8-support.html Android 에서 Java8 사용하기 -Android Studio 2.4 Preview 4 이상부터 모든 Java7 과 Java8 언어 특성을 지원한다. -Java7 을 사용하더라도 JDK8 을 이용해서 컴파일하므로 JDK8 은 필요하다. -이전에는 Jack Compiler 를 사용해야 Java8 Compile 이 가능했는데,이제는 desugar 라는 bytecode transformation 만 있으면 된다.Jack 이 더 이상 필요하지 않다. Jack 을 사용하고 있었다면 build.gradle 에서 그 녀석부터 없애라! -J.. 2018. 10. 2.
[Kotlin Tutorial] 람다로 프로그래밍 하기 - Chap5. Programming with Lambdas [Kotlin Tutorial] 람다로 프로그래밍 하기 - Chap5. Programming with Lambdas 참조 : Kotlin in Action 5.1. Lambda expressions and member references 5.1.1. Introduction to lambdas : blocks of code as function parameters 5.1.2. Lambdas and collections -val people = listOf(Person(“Alice”, 29), Person(“Bob”, 31))println( people.maxBy{ it.age } ) // function 을 argument 로 받는다. { } 는 lambda syntax lambda 가 단순 functio.. 2017. 8. 16.
[Java] nio vs io ( package level 에서의 개념, not 성능 ) [Java] nio vs io ( package level 에서의 개념, not 성능 ) http://tutorials.jenkov.com/java-nio/nio-vs-io.html -IO stream oriented blocking IO NIO buffer oriented non-blocking IO selectors -Stream oriented 한개 또는 그 이상의 byte 를 stream 에서 읽어온다. stream 에서 앞뒤로 왔다갔다 할 수 없다. ( buffer 를 사용해 cache 해야 가능하다. ) -Buffer oriented 우선 buffer 에 읽어오고 그 다음에 process 를 한다. buffer 를 통해 앞뒤로 왔다갔다 할 수 있다. -Blocking IO 는 read(), w.. 2017. 6. 11.
[Java] Subclass 는 Serializable 을 구현하고, Superclass 는 그렇지 않은 경우. [Java] Subclass 는 Serializable 을 구현하고, Superclass 는 그렇지 않은 경우. 출처 : http://www.jguru.com/faq/view.jsp?EID=34802 Object 를 serialize 를 하면 상속 hierarchy 를 따라가며 직렬화 메커니즘을 수행한다. 이 과정에서 만약 Serializable 을 구현하지 않은 super class 를 만나면 이 매커니즘은 멈추게 된다. Deserialize 할 때 Serializable 을 구현하지 않은 super class 는 stream 으로부터 복구되는 것이 아니라, empty argument constructor 가 호출되며 복구된다. 따라서 Superclass 의 내용을 복구해줄 필요가 없다면 그냥 igno.. 2017. 5. 16.
[Effective Java] 독자적인 직렬화 형태의 사용을 고려하자 [Effective Java] 독자적인 직렬화 형태의 사용을 고려하자 - 클래스를 설계할 때 클래스가 Serializable 을 구현하면서 기본 직렬화 형태를 사용한다면, 나중에 함부로 버릴 수 없고, 그 직렬화 형태를 계속 유지해야 할 가능성이 높다. - 적합 여부를 우선적으로 고려해보고 기본 직렬화 형태를 수용하자. 기본 직렬화 형태는 유연성, 성능, 정확성의 관점에서 타당하다는 결정이 섰을 때 사용해야 한다. 일반적으로 말하면, 우리가 독자적인 직렬화 형태를 설계한다고 할 때 하게될 인코딩과 대부분 같은 경우에만 기본 직렬화 형태를 사용해야 한다. - 이상적인 객체 직렬화 형태는 그 객체가 표현하는 논리적 데이터만 포함한 것이다. - 기본 직렬화 형태는 객체의 물리적 표현이 논리적인 내용과 동일할 .. 2017. 3. 23.
[Java] writeObject 와 readObject 는 무엇인가? [Java] writeObject 와 readObject 는 무엇인가? 참조 : http://www.javablogging.com/what-are-writeobject-and-readobject-customizing-the-serialization-process/ - serialize 하고 싶은 객체에 Serializable interface 만 implements 해주면 serialize 가 가능하다. -ObjectOutputStream 을 이용하여 stream 형태로 만들어 file 에 쓰거나 전송할 수 있다. - transient 나 static 으로 마크되지 않은 필드들은 모두 serialized 된다. - 기본적인 serialization 에 추가적으로 어떤 조치를 취하고 싶다면 아래와 같이 w.. 2016. 10. 25.
[android] Volley 를 이용한 동영상 업로드 테스트 결과. android, Volley 를 이용한 동영상 업로드 테스트 결과. 테스트 환경 국내 android major 단말들이라고 할 수 있는 Galaxy S 시리즈와 Note 1 을 대상으로 삼았다.동영상 업로드 방법은 Volley 와 MultipartRequest 를 이용한 일시 업로드이다. Galaxy S / hdpi / 2.3.4 - 12.5M 동영상 ( 30초 ) -process mem = 64MBruntime maxMemory = 64MBruntime totalMemory = 5MBruntime freeMemory = 2MBnative threshold = 26MBnative availMem = 83MB -Out of memory on a 26310336-byte allocation. java.lan.. 2014. 4. 20.
반응형