서론 로버트L. 글래스는 어떠한 책에서 "이론 대 실무" 라는 흥미로운 주제에 관해 개인적인 견해를 밝힌적이 있습니다. 그 글에서는 "이론이 먼저일까?, 실무가 먼저일까?" 라는 주제 였는데 요약하자면 많은 사람들은 이론이 먼저 정립된 후에 실무가 그 뒤를 따라 발전한다고 생각한다고 합니다. 허나 글래스의 입장은 반대였고 이론을 정립할 수 없는 초기에는 실무가 먼저 급속한 발전을 이루고 어느정도 발전된 뒤에 비로소 실무의 실용성을 입증할 수 있는 이론이 서서히 그 모습을 갖춘다고 하였습니다. 글래스의 결론은 이론보다 실무가 먼저라는 것입니다. 따라서 어떤 분야든 초기 단계에서는 아무것도 없는 상태에서 이론을 정립하기보다는 실무를 관찰한 결과를 바탕으로 이론을 정립하는게 최선이라 합니다. 티켓 판매 애플리..
Future의 단순 활용 자바 5부터는 미래의 어느 시점에 결과를 얻는 모델에 활용할 수 있도록 Future 인터페이스를 제공하고 있습니다. 💡 Future를 사용하여 비동기 처리 아래 예제에서는 doSomeThing 이라는 작업이 오래 걸려 다른 스레드에게 작업을 맡기고 나는 나의 일을 하고 있는 예제입니다. 하지만 스레드에게 넘겨 준 일이 영원히 끝나지 않으면 문제가 발생하게(나의 상태가 블럭(대기)됨) 됩니다. 그렇기 때문에 적절한 타임 아웃을 설정하는 것이 좋습니다. public static void main(String[] args) { ExecutorService executorService = Executors.newFixedThreadPool(5); Future future = execut..
서론 자바에서는 인터페이스를 구현하는 구현 클래스에서는 해당 인터페이스의 메서드를 모두 구현해야 합니다. 하지만 자바 8이후 부터는 인터페이스의 static method, default method를 통해 구현체에서 메서드 구현을 생략할 수 있습니다. 디폴트 메서드의 역할은 기존 인터페이스를 구현하는 구현 클래스는 기본적으로 디폴트 메서드를 상속받게 되며, 구현 클래스에서 따로 구현하지 않아도 됩니다. 변화하는 API 💡 릴리즈 1.0 버전의 FileUtils 인터페이스 버전 1에서는 기본적으로 4가지의 기능을 제공하고 있고 각 라이브러리 사용자는 해당 인터페이스를 구현해 사용을 하고 있었습니다. 하지만 시간이 흐르자 4가지 기능만으로 해당 인터페이스를 사용하는 사용자들의 불만이 터져나왔습니다. 결국 라..
💡 Null 탄생의 비하인드 스토리? 1965년 토니 호어라는 영국 컴퓨터 과학자가 힙에 할당되는 레코드를 사용하며, 형식을 갖는 최초의 프로그래밍 언어 중 하나인 알골을 설계하면서 처음 Null 참조가 등장하였다고 합니다. 토니 호어는 "구현하기 쉬웠기 때문에 Null을 도입했다" 라고 말했으며 컴파일러의 자동확인 기능으로 모든 참조를 안전하게 사용할 수 있을 것을 목표로 정했다고 합니다. 그 당시 Null 참조 및 예외로 같이 없는 상황을 가장 단순히 구현할 수 있다고 판단했고 그렇게 탄생을 하게 되었습니다. 후에 Null을 만든 결정을 십억 달러짜리의 실수라고 표현을 했다고 합니다. 값이 없는 상황을 어떻게 처리할까? 우선 사람은 차를 가질 수 있고 차는 브랜드를 가질 수 있습니다. @Getter ..
- Total
- Today
- Yesterday
- redis 대기열 구현
- pipeline architecture
- spring boot excel download paging
- 자바 백엔드 개발자 추천 도서
- spring boot poi excel download
- 서비스 기반 아키텍처
- microkernel architecture
- spring boot excel download oom
- redis sorted set
- java userThread와 DaemonThread
- 트랜잭셔널 아웃박스 패턴 스프링 부트 예제
- space based architecture
- java ThreadLocal
- 공간 기반 아키텍처
- spring boot redisson 분산락 구현
- transactional outbox pattern
- spring boot redisson destributed lock
- pipe and filter architecture
- spring boot redis 대기열 구현
- 레이어드 아키텍처란
- transactional outbox pattern spring boot
- @ControllerAdvice
- 람다 표현식
- 트랜잭셔널 아웃박스 패턴 스프링부트
- JDK Dynamic Proxy와 CGLIB의 차이
- spring boot redisson sorted set
- spring boot 엑셀 다운로드
- service based architecture
- polling publisher spring boot
- redis sorted set으로 대기열 구현
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |