Skip to content

Instantly share code, notes, and snippets.

@hmm-umm
hmm-umm / Readme.md
Created November 17, 2015 05:34 — forked from gabrielemariotti/Readme.md
A SimpleSectionedRecyclerViewAdapter: use this class to realize a simple sectioned `RecyclerView.Adapter`.

You can use this class to realize a simple sectioned RecyclerView.Adapter without changing your code.

The RecyclerView should use a LinearLayoutManager. You can use this code also with the TwoWayView with the ListLayoutManager (https://github.com/lucasr/twoway-view)

This is a porting of the class SimpleSectionedListAdapter provided by Google

Screen

Example:

JVM GC

모든 Java Application은 JVM(Java Virtual Machine)위에서 동작한다. 이 JVM이 동작하는데 있어서, 메모리의 구조와 특히 GC는 Application의 응답시간과 성능에 밀접한 관계를 미친다.

JVM 의 메모리 구조와 GC 알고리즘 (JDK 1.4.X에 포함된 새로운 알고리즘 포함) 그리고, JVM의 메모리 튜닝을 통한 Application의 성능향상방법에 대해서 알아보도록 하자.

GC란 무엇인가?

@hmm-umm
hmm-umm / LinkUtils.java
Created July 23, 2016 15:13 — forked from ksoichiro/LinkUtils.java
Android: Clickable URL and clickable TextView
package com.blogspot.ksoichiro.linktest;
import android.text.Layout;
import android.text.Spannable;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.TextUtils;
import android.text.method.LinkMovementMethod;
import android.text.style.ClickableSpan;
@hmm-umm
hmm-umm / robolectric.md
Created March 21, 2017 08:08
Robolectric을 활용한 안드로이드 쾌속 테스팅

2014년 8월1일 제9회 오픈 세미나 in 대구 행사에서 한 발표입니다.

Robolectric을 활용한 안드로이드 쾌속 테스팅

안녕하세요, 네이버랩스 웹플랫폼개발랩의 정상혁입니다. 오늘 발표에서는 테스트 프레임워크인 Robolectric을 사용하면서 실무에서 얻었던 경험을 공유하고자합니다.

먼저 테스트코드란 무엇인지와 안드로이드에서 테스트 작성을 어렵게 하는 난관등을 말씀드리고 Robolectric을 활용하는 방법을 소개하겠습니다.

테스트 코드란?

참석하신 분 중에서 JUnit(제이유닛)에 대해서 한번이라도 들어보신 분은 손을 들어보시겠습니까? 이중에 Junit을 실제로 써보신분은 얼마나 되시나요? Android에서 JUnit으로 테스트를 시도해보신 분은 계신가요? 경험을 하신 정도가 다양하기 때문에 우선 오늘 다룰 테스트 코드란 무엇인지를 한번 정리하고 시작을 하겠습니다.

@hmm-umm
hmm-umm / monad-in-java.md
Created May 28, 2017 13:42 — forked from jooyunghan/monad-in-java.md
한글번역 - Functor and monad examples in plain Java

Functor and monad examples in plain Java

이 글은 우리가 쓴 책, 'Reactive Programming with RxJava' 의 부록이었다. Reactive programming과 관련이 깊은 주제긴 하지만 모나드를 소개한다는 게 책과 썩 어울리지는 않았다. 그래서 나는 따로 블로그에 올리기로 했다. 프로그래밍을 다루는 블로그에서 *"반은 맞고 반은 틀릴 지 모르는 나만의 모나드 설명"*이란 것이 새로운 *"Hello World"*라는 점을 나도 잘 안다. 하지만 이 글은 펑터(functor)와 모나드(monad)를 자바 자료 구조와 라이브러리라는 각도에서 바라보고 있으며, 이는 공유할 정도의 가치는 있을거라 생각했다.

@hmm-umm
hmm-umm / README.md
Created December 6, 2017 23:56 — forked from phatak-dev/README.md
Functional Programming in C++

#Compilng You need g++ 4.9 to compile this code. Follow these steps to install g++-4.9

After installing run the following command to compile

/usr/bin/g++-4.9 -std=c++11 lambda.cpp

#Running

./a.out
@hmm-umm
hmm-umm / GuardUtil.kt
Last active November 5, 2018 08:56
half like swift guard
fun guard(predicate: () -> Boolean) : GuardClass {
return GuardClass(predicate)
}
data class GuardClass(val checkFunc: () -> Boolean) {
inline infix fun `else`(elseFunc: () -> Nothing) {
if (!checkFunc()) { elseFunc() }
}
}
import android.view.Choreographer
import io.reactivex.subjects.PublishSubject
import java.util.concurrent.TimeUnit
object FpsObserver {
private val choreographer = Choreographer.getInstance()
private val countSubject = PublishSubject.create<Unit>()
init {

Note

Apple will reject apps that are using private url schemes (Ugh, Apple....) if they are pretty much obvius. Some apps are rejected and others are not, so, be aware of this issue before implementing any of those URL's in your app as a feature.

Updates

  • [UPDATE 4] iOS 10 update: apparently settings now can be reached using App-Pref instead of prefs
  • [UPDATE 3] For now you just can use url schemes to open your apps's settings with Swift 3.0 (Xcode 8). I'll keep you informed when OS preferences can be reached
  • [UPDATE 2] The openURL() method of UIApplication is now deprecated. You should use application(_:open:options:) instead
  • [UPDATE 1] Not yet tested in iOS 10. It will fail because of policies changes in URL scheme handling.