Java 설계자는 왜 List<Dog>을 List<Animal>로 받지 못하도록 했을까?
이 글을 읽은 후엔 제네릭이 불변성을 가져야만 하는 이유, 자바가 제네릭을 런타임에 소거하는 이유, 그리고 와일드카드와 제네릭 메서드가 왜 필요한지 알게 될 것입니다.
이 글을 읽은 후엔 제네릭이 불변성을 가져야만 하는 이유, 자바가 제네릭을 런타임에 소거하는 이유, 그리고 와일드카드와 제네릭 메서드가 왜 필요한지 알게 될 것입니다.
최근 투표 기능을 개선하면서 DB 스키마 변경이 잦았다. CI/CD를 통해 자동 배포가 이뤄지지 않는 상황에서 스키마를 변경하는 PR이 여러개 쌓이게 되었고, 운영 중인 DB와 로컬 DB 간에 스키마 차이가 발생했다. 운영 DB에 변경될 스키마에 맞게 기존 데이터를 변경해야하는데 실수라도 하게 된다면 돌이키기 힘든 일이 발생하게 된다. 그래서 DB 스키마 관리를 위한 도구를 찾아보았고, Flyway를 도입하게 되었다.
Flyway는 데이터베이스 마이그레이션 도구로, 데이터베이스 스키마 변경을 관리하고 자동화하는 데 사용된다. Flyway는 SQL 스크립트를 기반으로 작동하며, 데이터베이스 버전 관리를 쉽게 할 수 있도록 도와준다.
이 글을 읽은 후엔 람다 표현식과 함수형 인터페이스에 대해 이해하고 더 간결하고 가독성 좋게 코드를 작성할 수 있을 것입니다.
이 글을 읽은 후엔 시간 제한을 걸어야하는 테스트 메서드 2가지를 적절하게 사용할 수 있습니다.
이 글을 읽은 후엔 자바 기반 웹 애플리케이션이 Http 요청을 처리하고 응답하는 구조에 대해 이해하고, 서블릿 컨테이너 내의 필터 부분을 확장하는 Spring Security의 구조에 대해 알 수 있습니다.
개발중인 당신의 프로젝트에 100명, 1천명, 1만명, 100만명의 사용자가 몰리게 되면 서버의 아키텍처를 어떻게 구성해야할지 간단하게 알아봅니다.
이 글을 읽은 후엔 대규모 트래픽을 처리하는 서비스의 아키텍처 설계 방식을 이해할 수 있습니다.
이 글을 읽은 후엔 HashMap과 TreeMap의 차이를 알고 요구사항에 맞게 더 적절히 사용할 수 있습니다.
안녕하세요. 전 요즘 선행을 기록하는 흔적에 백엔드로 합류하여 앱 출시를 바라보면서 개발하고 있습니다. 최근에는 알림 탭 기능을 구현하게 되어 관련 작업을 맡고 있습니다. 이 과정에서 FCM(Firebase Cloud Messaging)을 사용한 기능을 개발하며 학습하고 정리한 내용을 공유하고자 합니다.
이 글을 읽은 후엔 FCM의 개념, 아키텍처, 백엔드에서 메시지를 전송하는 방식에 대해 이해할 수 있습니다.