웹 GIS 개발 연구 / 취득을 원하는 기술과 기술은 무엇입니까?
답변 당 하나의 기술 / 기술을 사용하십시오.
웹 GIS 개발 연구 / 취득을 원하는 기술과 기술은 무엇입니까?
답변 당 하나의 기술 / 기술을 사용하십시오.
답변:
간단한 지리학자로 시작하여 GIS 제품을 사용하여 공간 분석을 시도한 내 경험에 대해 이야기 할 수 있습니다.
내가 말했듯이, 나는 지리학자이며, 대학 초기부터 GIS를 사용자로 사용하기 시작했습니다. 그 후, 나는 자주해야하는 지루한 작업을 자동화하는 방법에 대해 연구하기 시작했습니다. 3 년 후, 저는 다국적 소프트웨어 회사에서 일하면서 많은 GIS 시스템과 함께 작동하고 맞춤형 솔루션을 개발하고 있습니다.
내 단계 는 다음 과 같습니다
GIS를 잘 배우십시오. 기본적인 권리없이 프로그래밍 학습을 시작하지 마십시오. 투영 및 변형, 공간 분석, 래스터와 벡터 모델의 차이점 등
데이터베이스의 기본 알아보기 : 소개를 데이터베이스 시스템으로 , 데이터베이스 시스템의 기본 . 두 권의 책은 약간 다릅니다. 첫 번째는 이론에 무겁고 두 번째는 더 실용적인 접근 방식을 취합니다.
SQL을 배우십시오. 이것은 실제로 첫 번째의 두 번째 부분입니다. "sqlish"방식으로 생각하기 시작하면 큰 도움이됩니다. 공급 업체에서 공급 업체로 SQL이 변경됩니다. PostgreSQL을 추천 할 수 있습니다. PostgreSQL은 표준을 가장 많이 따르는 공급 업체입니다. 특정 방언을 배워야 할 경우 실제로 필요할 때 나중에 수행하십시오.
객체 지향 프로그래밍. 도전적인 것처럼 보이지만 기본 사항을 이해하면 매우 쉽습니다. 쉬운 언어를 선택하십시오. 파이썬은 가장 쉬운 것입니다. 파이썬을 배우는 것은 훌륭한 출발점입니다. Dive into Python 과 같은 오픈 소스 / 무료 Python 서적이 있습니다. Python 이후에는 .NET, Java 및 C / C ++ 중에서 흥미로운 선택이 가능합니다.
학습 프로그래밍. 코드를 읽고 코드를 작성하십시오. 지리 공간 코드를 읽습니다. 지리 공간 코드를 작성하십시오 . GEOS, JTS, GDAL, ArcObjects (ESRI 팬인 경우 시장에서 큰 장점) 등의 클래식 API를 연구하십시오.
-지리 공간 문제를 해결하고 코드를 작성하여 해결하십시오. 이것이 얼마나 유용한 지 강조 할 수 없습니다. 이것은 당신을 미치게 할 것이지만, 당신이 프로그래밍 측면을 배웠다는 것을 확인하고 지리 공간 기술이 최신인지 확인하는 아주 좋은 방법입니다. 내 경우에는 교통 사고를 지오 코딩하기 위해 작은 PostgreSQL 응용 프로그램을 작성했습니다.
계속 공부하십시오. OGC 표준은 여기서 좋은 선택입니다.
데이터베이스를 둘러싼 길을 알아라. 모든 GIS 개발자는 광범위하게 사용할 것입니다.
가장 주목할만한 점 :
이미 GIS쪽에 포함되어 있다고 가정하면 (지도 제작 원칙 등) 먼저 http://www.w3schools.com/ 으로 이동합니다 . -HTML, Javascript, XML 등의 자습서를 실행합니다.
그런 다음 선택할 수있는 다양한 플랫폼이 있습니다. ESRI에 약간 편견이 있으며 API에 대해 시작하여 시작하는 것이 좋습니다.
http://resources.arcgis.com/content/web/web-apis-concepts
/ samples를 실행하면 실제로 무엇을 의미하는지 알 수 있습니다. 당신은 달성 할 수 있습니다.
코드 샘플을 다운로드하고 리버스 엔지니어링하여 자신의 서비스로 작업 할 수 있습니다 (ArcGIS Server 인스턴스가 있다고 가정하고 그렇지 않으면 ESRI 샘플 서버를 사용할 수 있다고 가정)는 배우는 좋은 방법입니다.
또한 비디오가 많이 있습니다.이 y y dev dev 회의 비디오를보십시오. 권장 JavaScript 용 ArcGIS API 개요, 효과적인 맵 서비스 디자인을위한 모범 사례, 웹용 데스크탑 응용 프로그램 재 설계 및 ArcGIS Server REST API 사용.
어떤 웹 플랫폼을 선택 하시겠습니까? WebADF (Java / NET)를 보는 것은 무시할 것입니다.
당신의 고객은 누구입니까? 어떤 브라우저를 사용합니까? Silverlight 또는 Flash 플러그인을 설치할 수 있습니까? 개발할 IDE가 있습니까? 예를 들어 Flex는 FlashBuilder ($$)에서 최고이지만 오픈 소스 대안 인 FlashDevelop를 사용할 수도 있습니다.
기존 기술이나 새로운 기술에 더 익숙하십니까? 위험을 측정하십시오.
-.NET / Java는 오래 전부터 사용되어 왔습니다.-Silverlight & Flex는 상당히 새롭고 HTML 5가 이러한 플랫폼을 없앨 것인지에 대한 논쟁이 있습니다.
Silverlight와 Flex는 기본적으로 Dojo.Framework에 의존하여 이러한 차이를 보완하는 Javascript와 같은 대화 형 기능을 제공합니다.
웹 ADF와 웹 API의 기능에서 가장 큰 차이점은 ArcGIS Web API가 전적으로 클라이언트 측이라는 사실입니다.
ESRI에 덜 구체적인 답변을 제공하기 위해 다른 사람을 남겨두고 싶지만 분명한 선택은 Google Maps API 로 게임을 시작하는 것입니다 .이를 배우는 데 필요한 많은 리소스 / 자습서가 있습니다.
공간 DB와 맵 서버 (여기 다른 답변에 설명되어 있음)를 정렬하고 HTML, CSS 및 JavaScript에 대한 지식을 정리했다고 가정하면 사용자의 웹 브라우저 내에서 맵 구성 요소를 사용하고 표시하는 클라이언트 라이브러리로 땜질을 시작할 수 있습니다.
OpenLayers 는 가장 많이 참조되고 사용되는 라이브러리 인 것 같습니다. 꽤 좋은 문서와 예제가 있으며 여기에서 몇 가지 자습서를 찾을 수 있습니다 . BostonGIS 페이지는 OpenLayers뿐만 아니라 여기에서도 유용합니다.
Python MapFish 를 배우려는 지식 / 의지에 따라 매우 우아한 솔루션입니다. 또는 GeoDjango 로 뛰어들 수는 있지만이 솔루션에 대해 많이 언급 할 수는 없습니다.
또는 OSGeo 웹 매핑 솔루션을 보거나 Flash를 사용하거나 ESRI Web API 와 같은 상용 제품을 사용할 수 있습니다.
나는 공간 DB와 SQL이 출발점이되어야한다는 Adam 에게 동의 한다.
그 후에는 미래의 웹 지오 스택 의 두 번째 계층을 살펴볼 가치가 있습니다 . 사용자의 브라우저에서 공간 DB에서 클라이언트로 데이터를 '서비스'하는 브릿지 역할을하는 것이 필요합니다.
자신의 서버에서 로컬로 설치하고 재생하십시오. Open Source Geospatial Foundation에 의해 잘 알려진 두 가지 프로젝트 는 GeoServer 및 MapServer 입니다. QGIS 맵 서버도 살펴볼 가치가 있습니다. ArcGIS 서버 는 여기서 비용이 많이 듭니다.
이 부분을 정리하면 클라이언트 라이브러리로 게임을 시작할 수 있습니다.
나는 조지의 마지막 주석까지 충분히 강조 할 수 없다. 관심있는 지리 공간 및 / 또는 웹 문제를 선택하고 필요한 기술에 대해 알아 봅니다.
위에 나열된 모든 영역에서 숙달되기까지 시간이 걸리면, 실제로 가려운 곳을 긁는 프로젝트를 만들기 시작하기 전까지는 영원히 지속될 것입니다.
OpenLayers를 사용하여 앱을 빌드하여 기존 데이터 서비스의 데이터를 매핑하는 앱을 시작하는 것이 좋습니다. 그런 다음 고유 한 데이터 소스 또는 서비스를 생성 할 수 있습니다. FLOSS 기술을 고수하면 라이센스 비용 문제없이 어디서나 앱을 빌드하고 사용할 수 있습니다.