Loading...
2021. 1. 9. 16:38

[RxJava] RxJava로 시작하는 Java Reactive 프로그래밍

Java에서 여러 가지의 일을 동시에 수행하기 위한 방법에는 스레드를 사용하는 방법과 비동기 처리를 이용하는 방법이 있습니다. Java에서도 C++와 마찬가지로 select 함수를 제공하고, Thread 객체를 제공하기 때문에 이를 이용해서 동시 처리를 하는 것은 그리 큰 고민이 될 문제는 아닙니다. 그러나 Java로 스레드를 사용한 프로그래밍은 Python이나 Go와 같은 다른 프로그래밍 언어에 비해 사용하기가 무척 어렵습니다. 그냥 단순하게 Thread 객체를 생성하고 사용하는 것만 고려한다면 그리 큰 문제가 되는 것은 아니지만 메모리에 저장된 자원을 동시에 사용하는 이슈 등 처리해줘야 할 일들이 굉장히 많을 뿐더러 코드를 간략하게 짠다하더라도 내가 만든 메소드나 함수가 스레드 위에서 동작하는지 그렇..

[GP] Android에서 MQTT를 사용하는 방법

이 글은 저의 Github Page의 내용 중 일부를 담아온 것입니다. 안녕하세요. 요즘 취업 시즌이 한창이다보니, 블로그에 글쓰는게 또 게을러지게 되었네요. ㅜㅜ 오늘은 지난 포스트에 이어서, 프로그래밍 코드를 이용한 MQTT 메시지 교환 - 안드로이드 편을 포스트하고자 합니다. 혹시 아직 MQTT에 대한 개념이나, Broker를 설치하지 않으신 분들은 아래 링크를 통해, 이전 글을 반드시 구독해주신 후, 이 포스트를 참조하시기 바랍니다. 아직 MQTT에 잘 모르신다구요? 아래 버튼을 클릭하셔서 자세히 알아보시기 바랍니다. MQTT에 대해 알아보기 Eclipse Paho MQTT 프로토콜을 사용해 메시지 교환을 하기 위해서는 MQTT 통신이 가능한 라이브러리가 필요합니다. 그 중에서도 저희는 Java와..

2017. 6. 23. 17:40

[GP] Android, 다른 쓰레드에서 UI 처리를 하는 방법

이 글은 저의 Jekyll 블로그의 내용 중 일부를 담아온 것입니다. 오늘 포스트는 어제에 이어서, 쓰레드에 대한 이야기를 계속해보려 합니다. 아무래도 UI 프로그래밍에 대한 이야기다보니, UI 프로그래밍에 많이 유명하다고 생각되는 Windows 쪽의 이야기를 많이 섞어보자 합니다. 읽으실 때, 이해가 조금 안되시는 부분도 있을테니 참고하시기 바랍니다. UI 리소스를 Sub Thread에서 직접 사용할 경우. 안드로이드 앱에는 UI가 존재합니다. UI라고 하는 것은 사용자들이 터치하는 버튼, 텍스트 박스 등의 컴포넌트를 말하는데요. 주로 간단한 애플리케이션에서는 이 UI를 메인 쓰레드에서 처리합니다. 하지만 앱이 커지게 되면, 쓰레드가 생기게 될 수 있고, 해당 쓰레드에서 UI를 처리할 수도 있습니다. ..

[GP] Android AIDL 을 사용한 Activity 와 Service 통신

이 글은 저의 Github Page의 내용 중 일부를 담아온 것입니다. 안녕하세요. 처음으로 Android 포스트를 쓰게 되었네요. 안드로이드 포스트를 커리큘럼별로 포스팅을 해볼까 라는 생각도 했었지만, 커리큘럼에 대한 내용은 다른 블로그에서도 많이 찾아볼 수 있는 내용이고 또 어렵지 않은 내용이기에 커리큘럼이기 보다는 자주 사용하면서도 쉽게 이해하기 어려운 부분을 정리해보고자 처음 포스트를 AIDL로 삼게 되었습니다. AIDL ? AIDL은 Android Interface Definition Language의 약자로, 인터페이스를 정의한 언어입니다. 본래는 Android IDL은 Corba의 IDL 기능을 그대로 묘사한 것이며 RPC 통신할 때 많이 사용합니다. 우리가 이 포스트에서 다룰 주제도, Ac..

2013. 8. 1. 11:48

Eclipse와 Genymotion을 사용한 Android 개발 환경 구축하기

Eclipse로 Android 개발 환경을 구축해보신 분들은 한 번 쯤은 AVD라는 것을 사용해봤을 것입니다. 오래 전부터 필자는 AVD가 너무 느리고 안정화가 되지 않은 듯하여 안드로이드 개발을 꺼려했지만 Windows 환경에서는 ADT의 추가 플러그인인 Intel x86 Accelator를 설치하면 조금 완화된 환경을 제공받는다고 얘기를 들은 바 있습니다. 하지만 필자가 사용하는 OS는 Ubuntu Linux이며 아직 Ubuntu에서는 이를 지원하지 않는 것으로 보입니다. 그렇다고 최신 환경을 제공해달라는 것도 아닙니다. AVD는 Android의 새 버전이 나올 때마다 바로바로 SDK가 나오지요. 그래서 저는 안드로이드 개발/디버깅을 해야한다고 한다면, 제가 쓰는 안드로이드폰으로 디버깅을 했습니다. ..