이전 글에서는 원클릭 슴리가 무엇이고 슴리 만드는 방법을 알아봤다. 이번 글에서는 주어진 요구사항을 파악하고 이를 어떻게 객체지향적으로 짜내려갔는지 설명해보려고 한다. 요구사항 4개의 음원 사이트 3개의 OS 환경 8개의 곡 각 음원 사이트마다 음원의 songid 가 다르다. 그리고 OS 마다 URL 형식이 다르고, 또 이는 음원 사이트 마다 다르다. 가장 먼저 들었던 고민거리는 8개의 songId 를 어떤 형태로 저장할지가 고민이였다. 이 한 음원에 대한 songid는 사이트마다 다르지만 그 음원의 타이틀은 동일하다. 예를들어 CAKE 라는 곡의 songId 는 멜론에서는 11223344 이지만, 지니에서는 56785678 인 것이다. 음원사이트 마다 타이틀은 중복되기에 이 타이틀를 enum으로 관리하..