Làm cách nào để phát triển kỹ năng lập trình GIS của tôi?


30

Tôi muốn phát triển kỹ năng lập trình GIS của mình, tôi phải bắt đầu từ đâu? Mọi người nói học C ++ hoặc Python nhưng tôi có thể học điều này ở đâu trong bối cảnh địa lý? Hướng dẫn hoặc bất cứ điều gì sẽ rất hữu ích, cũng như bất kỳ thông tin nào về ngôn ngữ / chương trình sẽ sử dụng.


2
Bạn có kiến ​​thức lập trình nào chưa? Ít nhất bạn nên biết những điều cơ bản trước khi bạn thử sức mình trong lĩnh vực không tầm thường của GIS.
underdark

Bắt đầu với pygis pygis ... nó rất dễ sử dụng. Nhiều mẫu có sẵn.

Tôi là lập trình viên và tôi biết delphi & D2k. tôi muốn nghiên cứu lập trình GIS như thế nào có thể thông qua trực tuyến. vui lòng giúp đỡ

Đây không phải là một câu trả lời. Nếu bạn muốn hỏi một câu hỏi, hãy đặt một câu hỏi. Nếu bạn muốn theo dõi câu hỏi này, đánh dấu nó là một mục yêu thích và kiểm tra lại.
Branco

Câu trả lời:


18

Có một bài đăng trên blog của Michalis Avraam giải thích các kỹ năng thiết yếu để thành công trong sự nghiệp GIS mà tôi nghĩ là được viết tốt. Bạn có thể sẽ tìm thấy rất nhiều lời khuyên tốt ở đó.

CẬP NHẬT: không may liên kết trên đã chết nhưng chủ đề tương tự có thể được tìm thấy trong một bài viết nghiên cứu Xác định các yêu cầu về kỹ năng cho các vị trí GIS: Phân tích nội dung của quảng cáo việc làm


1
Các liên kết Michalis Avraam ở trên bị hỏng?
Umar Yusuf

@UmarYusuf thaks vì đã thông báo cho các liên kết chết. Tôi đã cập nhật một liên kết với chủ đề tương tự.
Mario Miler

Đây là một url đến bài đăng trên blog từ Michalis Avraam - dusk.geo.orst.edu/gis/PPTs/essential_skills.pdf
birdybird03

13

Tôi thích Python của Chris Garrard cho các tài liệu khóa học Geoprocessing. http://www.gis.usu.edu/~chrisg/python/2009/ Cá nhân, tôi thấy thao tác lập trình của OGR / GDAL là không thể thiếu.

Đối với việc tìm kiếm sự phù hợp nhất với bạn, hãy xem xét phần mềm hoặc geostack mà bạn muốn trở thành chuyên gia nhất (như ArcGIS, QGIS, PostGIS-GeoServer-OpenLayers), sau đó chọn ngôn ngữ lập trình hỗ trợ tốt nhất cho sự lựa chọn của bạn. Điều đó sẽ được khám phá bằng cách kiểm tra ngôn ngữ của API được liên kết hoặc các hướng dẫn tùy chỉnh khác. Có rất nhiều tài nguyên học lập trình trực tuyến tồn tại và một nghiên cứu web về gói phần mềm ưa thích + ngôn ngữ + "hướng dẫn" sẽ khiến bạn lăn lộn.

Tôi cũng tin vào "học bằng cách làm". Ví dụ: tạo ra một bản đồ đơn giản với Javascript và Google Maps và cố gắng thêm hình học, kiểu dáng, giao diện người dùng và các phân tích quan tâm. Làm việc để xem những gì có thể và những gì không. Khi bạn xây dựng, bạn sẽ cần các công cụ tinh vi hơn để tùy chỉnh và điều này sẽ chỉ ra các plaftorms, ngôn ngữ và thư viện có liên quan.


10

Đừng bắt đầu với C ++ GIS mà không học phát triển phần mềm trước. Nó quá nhiều.

Python là một nơi tốt để bắt đầu bất kể bạn đi với nền tảng GIS nào sau này. Có rất nhiều sách, trang web và tài liệu đào tạo có sẵn và rất nhiều trường đại học sử dụng python làm phần giới thiệu trước khi chuyển sang các ngôn ngữ lập trình nhiệm vụ nặng nề, như c ++ và java.

Tài nguyên python yêu thích của tôi - bên ngoài trang web này - là Show Me Do , Think Python , Stack Overflow và danh sách gửi thư của phần mềm tôi sử dụng (chủ yếu là GDAL và ArcGIS).


7

Tôi đã có thể học Python bằng cách ngồi xuống với một bản sao Học Python của Lutz & Ascher (O'Reilly Press). Văn phòng của tôi sử dụng các sản phẩm ESRI, vì vậy để có được kết nối với ArcGIS, tôi đã tạo một số mô hình bằng Trình tạo mô hình của ESRI và xuất chúng sang Python. Sau đó, vấn đề chỉ là xem xét các tập lệnh python đã xuất, tìm hiểu cuốn sách và sử dụng hệ thống trợ giúp trực tuyến của ESRI cho các chủ đề xử lý địa lý để hiểu rõ hơn về cách python và ArcGIS phối hợp với nhau.


3

Có rất ít trường cao đẳng / đại học cung cấp các khóa học lập trình liên quan đến GIS. Tôi muốn giới thiệu Chương trình Chứng chỉ GIS của Trường Cao đẳng Elmhurst có hai (2) khóa học này như là một phần của Chứng chỉ GIS. Chương trình, cả hai chương trình liên quan:

  1. Lập trình ISG 100 với ArcObjects
  2. ISG 200 Triển khai cơ sở dữ liệu địa lý

    http://public.elmhurst.edu/adult/gis

Toàn bộ chương trình là trực tuyến và họ có một Máy chủ GIS chuyên dụng. Họ dạy Python là chủ yếu.


2

Lập trình trong GIS là một trong những bộ kỹ năng được liệt kê trong Mô hình năng lực công nghệ không gian địa lý (GTCM), vừa xuất hiện và bao gồm một số bộ kỹ năng bổ sung có thể là nguồn tham khảo cuối cùng cho việc này: http://www.careeronestop.org/ Cạnh tranh / blockModel.aspx? tier_id = 4 & block_id = 708 & GEO = Y


Và nó khuyến nghị GeoTools như một bộ công cụ - không phải là chúng tôi đang cảm thấy tự mãn hay bất cứ điều gì :-)
Ian Turton

2

Câu trả lời phụ thuộc rất nhiều vào hệ thống bạn đang sử dụng và hệ điều hành nào nó chạy. Tôi chủ yếu lập trình Manifold trên Windows hoặc các ứng dụng dựa trên web với Manifold trên phụ trợ, vì vậy tôi có thể chọn từ bất kỳ ngôn ngữ .NET nào. C # là lựa chọn cá nhân của tôi bởi vì hầu hết các ví dụ và hướng dẫn bạn sẽ tìm thấy trên web sẽ ở C # (ít nhất là cho .NET).

Vì bạn chỉ mới bắt đầu, Manifold có thể không phải là một lựa chọn tồi. Bạn có thể nhận được nó với giá dưới 300 đô la và phát triển bằng các phiên bản 'Express' miễn phí của Visual Studio.

Nếu bạn có thể cụ thể hơn một chút, có lẽ chúng tôi có thể giúp bạn nhiều hơn.


1

Cơ sở ảo ESRI cung cấp một vài khóa học giới thiệu ngắn về việc sử dụng Python để viết kịch bản trong ArcGIS. Tôi nghĩ rằng một trong số họ là miễn phí. Lấy một cái sẽ là một cách tuyệt vời để xem liệu đây có phải là thứ bạn sẵn sàng để tìm hiểu sâu hơn không.


1

Làm việc theo cách của bạn thông qua ArcMap để tìm hiểu những điều cơ bản về xử lý các đối tượng không gian. Khi bạn cảm thấy thoải mái với một thao tác hãy cố gắng thiết lập quy trình với ModelBuilder. Trình xây dựng mô hình tương đương với lego trong thế giới ESRI. Nó làm cho bạn có thể tạo mã python. Mã này sẽ được đơn giản hóa nhưng nó sẽ hoạt động.

WingIDE là một công cụ giúp dễ dàng xử lý các tập lệnh python, cũng như cung cấp cho bạn một môi trường có thể dự đoán để thử các tập lệnh của bạn. Mở tập lệnh xây dựng mô hình trong IDE bạn chọn và chơi xung quanh nó.

Theo ngôn ngữ lập trình, Python là một loại trái cây treo thấp. Nó sẽ đưa bạn từ cấp độ đơn giản trở lên :-)


0

Tôi ngạc nhiên khi cuốn sách dành cho nhà phát triển PyQGIS chưa có. Tôi thấy không thể thiếu việc kết hợp các kỹ năng GIS cũ và các kỹ năng Python mới của tôi, đặc biệt là không có quyền truy cập vào ArcGIS ngay bây giờ. Nếu bạn thiên về ArcGIS hơn, thì sẽ có nhiều tài nguyên hơn cho bạn.

một danh sách các chương trình đào tạo Python trên StackOverflow. Cá nhân tôi thích Checkio .

Trừ khi bạn đã có nền tảng vững chắc về một số ngôn ngữ khác (C # cho ArcGIS, C ++ cho GIS mã nguồn mở), hãy bắt đầu với Python và tìm hiểu các ngôn ngữ khác sau. Hầu hết các hàm liên quan đến GIS nên có cú pháp và cách sử dụng tương tự trong Python và các ngôn ngữ đó, vì vậy việc học chúng với kiến ​​thức trước đây về Python không quá khó.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.