Javascript의 배열(Array)의 정렬(Sort)

사람이 처리할 수 있는 데이터의 양에는 한계가 있고, 컴퓨터는 이러한 한계를 가진 인간을 보조해주고 인간이 쉽고 빠르게 정보를 파악해 주는 기능을 제공합니다. 검색 결과 등과 같은 정보를 정렬하지 않고 사용자에게 제공할 경우 사용자는 자신이 찾고자 하는 데이터를 찾아 헤매게 됩니다. 하지만 정렬된 데이터라면 빠르게 데이터를 찾을 수 있습니다.

검색 결과를 담기에 적당한 자료 구조는 배열입니다. 특히 Javascript에서는요. 이러한 배열을 정렬하는 코드를 정리해 둡니다.

위의 코드는 배열에 담긴 요소들을 정렬한 결과로 원래의 배열을 변경합니다.

아래는 배열에 담긴 데이터가 Key-Value를 가지는 Object 항목으로 구성된 경우에 대한 정렬 예입니다.

정렬 못지 않게 중요한 것이 필터링(Filtering)입니다. 검색 결과 중 내가 보고자 하는 데이터만을 보고, 아닌 것은 보여주지 않는 것이죠. 정렬과 필터링 기능은 기본적인 기능이지만, 제법 많은 프로그램에서 놓치고 있는 기능이기도 합니다.

BlackPoint-Xr에 대한 라이선스 정책 변경

BlackPoint-Xr에 대한 라이선스 정책 변경에 대한 안내입니다.

BlackPoint-Xr은 2010년에 처음 개발되었고 안드로이드 기반의 현장 지원을 위한 모바일 GIS 앱 개발에 사용되는 상용 제품으로 시작 되었습니다. 그리고 2013년에는 “모바일 GIS 프로그래밍”이라는 제목의 서적으로 출판되었으며 2016년 9월에 “연구개발 사업을 예외로 하는 LPGL 라이선스”를 기반으로 오픈소스화 하였습니다. 오픈소스화와 함께 기술 지원에 대해서는 유상으로 지원한다고 안내해 드린 바가 있습니다.

BlackPoint-Xr을 오픈소스로 공개함으로써, 다른 회사나 연구기관 등과의 협업을 통해 연구과제에 참여할 수 있기를 기대했고 연구과제가 아닌 경우에는 타사에서 BlackPoint-Xr을 이용하여 GIS 앱을 개발할 시에 필요한 기술 지원을 유상으로 지원함으로써 수익을 확보할 수 있다고 판단 하였습니다.

그러나 오픈소스로 공개한 이후 모바일 GIS와 연관된 협업을 통한 연구과제 수행이 없었고, 수많은 기술지원을 위한 문의는 있었으나 유상으로 기술을 지원 받고자 하는 회사는 없었습니다.

이처럼 BlackPoint-Xr에 대한 오픈소스로 전환한 이후의 어떠한 수익을 창출하지 못했습니다. 이에 회사 차원의 깊은 고민 끝에 2019년 1월부터 BlackPoint-Xr에 대한 오픈소스 정책을 거두고 다시 상용 제품 라이선스 정책으로 변경하였습니다. 이에 따라 2019년 1월 이후부터는 BlackPoint-Xr을 상업적인 목적으로 프로그램 개발을 할 경우 개발사인 (주)지오서비스에 문의하여 라이선스를 구매해야 합니다. 물론 오픈소스로 공개한 2016년 9월부터 2018년 12월까지 BlackPoint-Xr을 이용해 개발된 프로그램에 대해서는 아무런 문제가 없음을 명확히 합니다.

아울러 BlackPoint-Xr의 제품명을 SmartPoint-Xr로 변경하여 제품명에서 부정적인 의미를 제거하였고, SmartPoint-Xr을 새로운 이름으로 지속적으로 기능을 개선해 나가고 있습니다. 또한 “모바일 GIS 프로그래밍” 서적을 구매하신 분들을 위해 BlackPoint-Xr에 대한 라이브러리를 해당 링크를 통해 다운로드 받으실 수 있으니 서적을 통해 BlackPoint-Xr에 대한 실습을 진행하실 수 있습니다.

상기와 같은 이유로 프로그램을 LGPL 오픈소스 라이선스에서 다시 상업적인 라이선스로 전환하게 된 것에 대한 이해를 부탁 드리며 SmartPoint-Xr(BlackPoint-Xr)을 이용하여 모바일 GIS 앱을 개발하시고자 한다면 반드시 라이선스를 구매하시기 바랍니다.