지원 중단에 따른 스트레스 줄이기! 구글지도의 SDK 의존성 이해

개발자 및 최종 사용자를 위해 Google Maps Platform을 개선하기 위해 때때로 기존 기능을 지원 중단해야합니다. 예를 들어 지난해 코로나 19 확산을 막기 위해 많은 시설이 일시적으로 문을 닫았을 때, 우리는 장소의 상태를 이분법적 방식으로 묘사하지 않는 business_status필드를 도입했고, 일시적으로 폐쇄된 장소를 정확하게 설명할 수 없기 때문에 permanently_closed필드를 더 이상 사용하지 않습니다.

 

프로덕션 코드 자체를 변경하는 것이 스트레스가 될 수 있음을 충분히 이해하기 때문에 사용 중단을 최소화하려고합니다. 프로젝트에 영향을 미칠 수 있는 지원 중단에 대한 알림을 받았을 때 Google Maps Platform내의 지원 중단 작동 방식을 이해하면 조치를 언제 취하면 좋을 지 결정하는 데 도움이됩니다.

 

지원 중단(deprecated)과 해제(decommissioned)

먼저 소프트웨어 토론에서 자주 혼동되는 두 용어에 대한 정의를 살펴 보겠습니다.

 

  • deprecated : 사용을 중지하는 것이 좋습니다. 더 나은 대안이 있거나 또는 계획된 폐기가 사용을 중지해야하는 이유가 될 수 있습니다.
  • decommissioned : 한 번 사용할 수 있었던 항목은 더 이상 사용할 수 없거나 지원되지 않습니다. 사용 중지 된 소프트웨어를 호출하면 예측할 수 없는 동작이나 잘못된 응답이 발생할 수 있습니다.

 

SDK의 지원 중단 : API 지원 중단과 다른 점

SDK에는 ‘버전 지원 중단’과 ‘기능 지원 중단’이라는 두 가지 수준의 지원 중단이 있습니다. SDK 버전이 지원 중단되면 곧 모든 지원이 중단됩니다. 사용 중지된 SDK 버전에 대한 의존성으로 빌드하면 오류 또는 충돌이 발생할 수 있습니다. 그러므로 SDK 버전이 지원 중단되었다는 알림이 표시되면 시간을 내어 최신 버전(이상적으로는 사용 가능한 최신 버전)으로 마이그레이션하는 것이 좋습니다.

아래의 두 다이어그램은 기능 지원 중단의 두 단계를 보여줍니다. 먼저 더 이상 사용되지 않는 기능을 포함하지 않는 새로운 메인 버전을 소개합니다. 의존성에 이전 버전을 지정하여 더 이상 사용되지 않는 기능을 계속 사용할 수 있습니다. 그러나 코드에서 더 이상 사용되지 않는 기능의 사용을 제거하고 귀하의 의존성을 새로운 버전으로 업데이트 할 때까지 최신 버전에서 독점적으로 사용할 수 있는 기능을 사용할 수 없게 될 것입니다.

SDK에서 기능 B를 지원 중단하는 예입니다. v3.0에는 기능 B가 포함되어 있지 않으므로 v2는 기능 B의 마지막 지원 버전입니다. 기능 B를 계속 사용하려면 v2를 지정하십시오. v3.0으로 업그레이드하려면 코드에서 기능 B 사용을 제거하십시오.

 

더 이상 사용되지 않는 기능을 지원하는 마지막 버전이 자체적으로 폐기되면 해당 기능을 지원하는 버전이 더 이상 없으며 기능을 계속해서 사용할 수 있다고 보장 할 수 없습니다.

SDK 버전 폐기의 예입니다. v2는 기능 B의 마지막 지원 버전이며 더 이상 지원되지 않으므로 기능 B는 더 이상 사용할 수 없습니다. SDK에 따른 새 애플리케이션 빌드는 지원되는 버전으로 업그레이드해야하므로 기능 B 사용을 중지할 수 밖에 없습니다.

 

모든 활성 지원 중단을 나열하는 지원 중단 문서 에서 API 및 SDK의 지원 중단에 대한 자세한 설명을 통하여 더 알아보세요 .

SDK 의존성을 관리하는 방법

Google Maps Platform 모바일 SDK (Android용 지도 및 장소 SDK, iOS용 지도 및 장소 SDK)를 사용하는 개발자의 경우 의존성 버전을 관리하면 기한 전에 서둘러 수정하는 대신 앱 개발주기에 따라 지원 중단 마이그레이션 변경을 예약 할 수 있습니다.

모바일 SDK의 경우 앱 의존성에 정확한 버전 번호를 지정하는 것이 가장 좋습니다. 우리는 안드로이드를 위한 지도 SDK, 안드로이드를 위한 장소 SDK , iOS 용지도 SDK 및 iOS 용 장소 SDK 에 대한 SDK의 의존성을 관리하는 방법에 대한 문서를 추가하였습니다.

Maps JavaScript API는 모바일 SDK와 다릅니다. 버전은 분기 별 일정에 따라 릴리스되고 사용 중지되므로 기본적으로 항상 최신 버전 (v = 주간)을 로드하는 것이 좋습니다. 여기에서 정기적인 Maps JavaScript API 업데이트를 준비하는 방법에 대해 자세히 알아보세요 .

코드 업데이트 시기 선택

마지막 단계는 개발주기에서 코드 유지 관리를 정기적으로 예약하여 기술적 부채를 최소화하고 SDK의 최신 개선 사항을 즐길 수 있도록하는 것입니다. 릴리스 정보 및 필수 서비스 공지는 마이그레이션 가이드를 제시하거나 코드 업데이트에 필요한 노력을 최소화하기 위해 사용되지 않는 기능에 대한 해결 방법을 제공합니다.

위의 단계를 따르면 다음 번에 더 이상 사용되지 않는 기능 또는 버전에 대한 알림을 받을 때 최신 SDK 버전을 채택하기 위해 코드를 업데이트 할 시간을 언제하면 좋을 지 선택할 수 있으므로 안심할 수 있습니다. 안정적인 SDK 버전에 대해 모바일 앱 빌드가 예측 가능하게 됩니다. 웹 사이트에 영향을 줄 수 있는 변경 사항에 대한 JavaScript 릴리스 노트를 받으면 수행 할 작업(이전 버전 지정)이 무엇인 지 알 수 있습니다. 이 팁을 통해 코드 업데이트를 미리 계획 할 수 있기를 바랍니다. 더불어 지원 중단 알림이 스트레스를 유발하지 않을 것입니다 😄😃

SPH는 Google Maps, SuperMap, Maxar Technologies 등 다양한 케이스에 존재하는 다양한 제품군을 보유하고있는 고객의 사례에 꼭 맞는  무료 세미나 및 인적 컨설팅을 제공하고 있습니다. 각 케이스에 더욱 자세한 이야기를 나누고 싶으 시다면,  여기에서 문의 주시길 바라며, SPH에서 발행하는  GIS / 로케이션인텔리전스 관련 최신 소식 을 받아보고 싶으신 분들은  페이스북 페이지  또는  뉴스레터 를 구독 해 주시길 바랍니다. 감사합니다.