Replies: 2 comments
-
위와 같은 명언이 떠오르는 아이템이었습니다. 개인적으로는 필요한 라이브러리만 프로젝트에 도입해서 사용하는 편인데, |
Beta Was this translation helpful? Give feedback.
0 replies
-
Random? vs ThreadLocalRandom? java.util.Random은 멀티 쓰레드 환경에서 하나의 인스턴스에서 전역적으로 의사 난수(pseudo random)를 반환한다. 따라서 같은 시간에 동시 요청이 들어올 경우 경합 상태에서 성능에 문제가 생길 수 있다. 반면 JDK 7부터 도입된 java.util.concurrent.ThreadLocalRandom은 java.util.Random를 상속하여 멀티 쓰레드 환경에서 서로 다른 인스턴스들에 의해 의사 난수를 반환하므로 동시성 문제에 안전하다.(랜덤 특성상 같은 수가 나와도 설계상 문제가 아닌 정상 작동)
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
아이템 59. 라이브러리를 익히고 사용하라
예시 코드
위 문제의 해결법?
다른 해결법
표준 라이브러리 사용의 장점
1. 표준 라이브러리를 사용하면 그 코드를 작성한 전문가의 지식과 앞서 사용한 다른 프로그래머들의 경험을 활용할 수 있음
Random 의 문제점
2. 핵심적인 일과 크게 관련 없는 문제를 해결하느라 시간을 허비하지 않아도 된다.
3. 따로 노력하지 않아도 성능이 지속해서 개선 됨
4. 기능이 점점 많아짐
5. 표준 라이브러리를 활용해 작성한 코드가 많은 사람에게 낯익은 코드가 됨
그럼에도 불구하고 직접 구현하는 경우
대부분 라이브러리에 그런 기능이 있는지 모르기 때문
라이브러리가 필요한 기능을 충분히 제공하지 못하는 경우
정리
이미 잘 만들어진 바퀴를 사용하면 되지 바퀴를 만들려고 고생할 필요가 없다.
라는 명언이 생각이 났는데 책에서도 이 예시를 들었음Beta Was this translation helpful? Give feedback.
All reactions