오랜만에 블로그에 글을 씁니다! 요즘 취업 준비로 바쁘게 지내고 있지만, 이전보다 더 개발에 몰입하며 지내서 만족하며 열심히 살고 있습니다. 😄이번 글에서는 10월에 있을 대학교 축제를 겨냥해 기획하고 개발 중인 매칭 웹앱 플랫폼 "Now, Here"의 백엔드 개발 과정에서 고민했던 내용을 공유하려 합니다. 특히, 이번에는 실시간 매칭 알고리즘과 데이터 기반 의사결정 방식을 도입한 경험을 소개하려고 합니다. 앞으로 3~4개의 Now, Here 관련 글을 올릴 예정이니 많은 관심 부탁드립니다! 🫡 Situation과거에 제가 TrueEcho를 개발하면서 유저들 사이에서 친구를 추천하는 FOF 알고리즘을 구현한 적이 있습니다.관련 글 링크 당시에는 친구의 친구들을 해시맵 형태로 저장하여 중복되는 친구가 ..
Java
기존에는 PS를 Python으로 준비하다가 유레카 과정을 통해서 자바를 다시 학습하면서 코딩테스트를 준비하고 있습니다.Java의 클래스에는 이미 Stack이 있는데 굳이 ArrayDeque를 사용하는 경우가 많고, 실제로 Java 진영에서도 권장하는 방법입니다.그 이유가 궁금해서 고찰해 본 내용을 정리했습니다.배경 지식해당 결론에 대해서 바로 설명하기 전에, 혹시 모를 수 있는 부분들에 대해 간략히 설명하고 가겠다. 스택(Stack)이란, LIFO(Last In First Out) 구조로 되어있는 자료구조를 의미한다. 이를 구현하기 위해서 Java 언어에서는 보통 Stack과 ArrayDeque 클래스를 통해서 구현하곤 하는데왜 Stack을 구현한 Stack 클래스가 있는데도 ArrayDeque를 통해서..