마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

android 코드 체감속도

0 추천
1.val test : String = "test"

Log.d(TAG,test)

2.fun test(content : String) : String{
return content  }

Log.d(TAG,test("test"))

 

1번 방식은 그냥 변수를 로그로 출력하는 코드이고.
2번 방식은 함수를 이용해 리턴값을 받아서 로그로 출력하는 코드입니다.

궁금한것은 1번방식과 2번방식의 속도차이가 체감상 있나요?
코드로만 봤을때는 당연히 함수를 이용해 리턴하는 방식인 2번방법이 더 속도가 느리다고 생각하는데 이 체감상 차이가 큰지 거의 없는지 궁금합니다.
2달째 코린이 (380 포인트) 님이 2021년 7월 31일 질문

1개의 답변

0 추천
위의 예제는 너무 단순해서 비교의 의미가 없구요. 다른 랭귀지에서도 마찬가지입니다. 비교가 될만한 대상을 가지고 해야 의미가 있습니다. 예를 들면, 사이즈가 큰 리스트를 가지고 Collection과 Sequence의 차이를 비교하는 것은 의미가 있겠네요. 그리고 실행시간을 보고 싶으면 코틀린에서 제공하는 함수를 사용하실 수도 있습니다.

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.system/measure-time-millis.html

코틀린이 결국 자바 바이트로 변환되기 때문에 실제 실행속도보다는 컴파일 또는 빌드타이에서 좀 차이를 보인다고 하는게 맞을 겁니다.  빠른 Algorithm이나 데이터구조가 요구되는 경우가 아니면 가독성을 먼저 생각하시는게 좋습니다. 모바일에서는 백엔드에 비해 이런 고민이 덜합니다. 더 중요한 것은 메인스레드를 방해하지 않고 User experience가 좋은 앱을 만드는 쪽에 더 초점을 맞추시면 될 것 같습니다.
spark (224,800 포인트) 님이 2021년 8월 1일 답변
...