Frage

Wir haben 2 neue GIS -Programmierer/-analyst in unserer Abteilung (neu in Programmierung und Arcobjects) und ich fühle mich nicht qualifiziert genug oder habe die Zeit, sie zu unterrichten. Ich suche also nach Einstiegsbüchern/Tutorials, die sie als Referenz verwenden können.

Die einzigen Bücher, die ich für die Entwicklung von Erweiterungen für ArcMap finden kann, sind für VBA geschrieben.

Kennt jemand auch die Esri -Kursbücher, die Sie aus dem Training in Redlands erhalten, gute Quellen, um zu lernen, gegen Arcobjects in .NET zu codieren?

Vielen Dank

War es hilfreich?

Lösung

Der Versuch, Programmierer sowohl Arcobjects als auch allgemeine Softwareentwicklung beizubringen, ist eine wirklich schlechte Idee. Ich kämpfe gerade mit dem gleichen Problem. Sie führen das Risiko ein, zwei Entwickler zu bekommen, die weder Arcobjects noch C# sehr gut programmieren.

Lehre sie zuerst gute Entwickler. Tun Sie dies, indem Sie sie an Nicht-Arcobjects-Code arbeiten lassen (unabhängig davon, ob Sie hochrangige ArcGIS-ADF oder vollständige Nicht-GIS-Apps sind, liegt bei Ihnen). Stellen Sie sicher, dass sie die Grundlagen des Anwendungskontexts (Web, Desktop, Mitte usw.) verstehen. Dies wird den Übergang zu Arcobjects erleichtern.

Sobald sie die Grundlagen der Softwareentwicklung (insbesondere die Vererbung und OOP) verstanden haben, stellen sie sie in Arcobjects ein. Die VBA -Referenz ist ausreichend, aber schwer zu C# und den modernen Werkzeugen abstrahieren. Ein heller Entwickler kann es tun, aber Ihr Durchschnitt wird wahrscheinlich viele schlechte Gewohnheiten lernen.

Am besten beißen Sie die Kugel und schicken Sie sie an die Entwickler -Workshops. Manchmal bietet ESRI Kurse in einem regionalen Büro an, die für Sie möglicherweise lokaler sind. Senden Sie sie alternativ im Frühjahr und Sommer an den Entwicklergipfel oder die Benutzerkonferenz. Die technischen Workshops sind für Gesamtanfänger etwas fortgeschritten. Das heißt, aus den Worskhops kann viel gelernt werden, wenn die Entwickler ein sehr grundlegendes Verständnis von ArcMap oder Arcobjects haben.

Ebenfalls, Sie müssen lernen, wie man ArcMap verwendet. Die wichtigste nützliche Sache, die sie tun können, um Arcobjects zu lernen, ist das Erlernen von ArcMap. Wenn Sie verstehen, wie es im Desktop -Produkt funktioniert, können Sie häufig ergeben, wie die API verwendet wird. Ein einfaches Beispiel ist die Projektion von Daten. In ARCMAP müssen Sie ein Tool verwenden, um explizit Projektdaten zu projizieren. Einfach "Einstellen" der Projektion funktioniert nicht. Dies führt direkt in die API, wo Sie eine "Projekt" -Methode aufrufen oder das Projekt Gptool verwenden müssen.

Andere Tipps

Ich stimme den allgemeinen Gefühlen zu, die jeder hier zum Ausdruck bringt (Beginnen Sie mit dem Programmieren, beginnen Sie klein, besonders mit Beispiel/Tun).

Es ist weitaus einfacher, Entwickler dazu zu bringen, Arcobjects zu lernen, als GIS -Analysten zum Lernen von Programmieren zu bringen. Ihre Aufgabe (beides zu tun) ist ziemlich schwierig!

Wenn Sie irgendwo anfangen müssen, würde ich sie zuerst in C# oder VB .NET-Grundlagen (über ein gutes webbasiertes Tutorial oder bezahlter Kurs) trainieren und dann mit ESRI .NET-spezifischem Training verfolgen. Wie ich in einem Kommentar oben sagte, war ich von den Esri -Trainingskursen nicht beeindruckt. Ich habe einen Softwareentwicklungshintergrund und konnte in ein paar Monaten die Arcobjects -API lernen - im Vergleich zu zwei Monaten praktischem Wissen war der Schulungskurs wirklich grundlegend für das Material der Arcobjects. Trotzdem kann es für Lehrlinge funktionieren, und Sie können mit Ihren Mitarbeitern Glück ausüben.

Ich möchte auch hinzufügen, dass Sie definitiv den Schwerpunkt auf das Software -Training legen und die API -API -API in Arcobjecs berücksichtigen möchten. Wenn diese ARCMAP-Erweiterung ein Produkt ist, das Sie an Personen verkaufen und als Kunden haben, ist es ein teurer Betrieb. Jeder Dollar, der für Software-Schulungen ausgegeben wird, zahlt sich langfristig.

Ich würde Ihnen sogar sagen, dass Sie in Betracht ziehen sollen, einen Softwareentwickler auf Vertragsbasis einzustellen, um sechs Monate als Leitfaden und Mentor zu dienen.

Soweit ich mich erinnere, ist ein Teil des Codes im ESRI -Entwicklernetzwerk jetzt in C#, zumindest war das ich primäre Quelle von C# Code für GIS, aber keine Bücher, sorry.

Vielleicht wäre das eine gute Grundierung: http://www.pragprog.com/titles/sdgis/gis-for-web-developers

Wenn Ihre Mitarbeiter wirklich neu im Programmieren sind, würde ich damit beginnen, die Grundlagen von C# (oder einer anderen .NET -Sprache zu lernen, aber C# ist wahrscheinlich der richtige Weg für Anfänger) und gute Programmierpraxis. Ich würde mir vorstellen, dass es vorhandene Stackoverflow -Threads gibt, die Vorschläge dafür haben. Ich denke, ein solides Verständnis der objektorientierten Programmierung und des Kennens der Syntax der Sprache, in der Beispiele sein werden, wird das Lernen von Arcobjects erleichtern.

Ich bin mir der Nicht-ESRI-Bücher über Arcobjects nicht wirklich bewusst. Ich denke jedoch, dass ihre Ressourcen ausreichend sind, um Anfänger zu beginnen. Zusätzlich zu ESRI -Kursbüchern würde ich empfehlen, mit den Online -Ressourcen zu beginnen http://resources.esri.com/arcgisdesktop/dotnet/index.cfm

Weitere Vorschläge sind zu lernen, wie Sie die Objektmodelldiagramme lesen und die Hilfe zur Erforschung von Methoden und Eigenschaften der Arcobjects verwenden. Ermutigen Sie auch die Mitarbeiter, die ESRI -Benutzerforen zu nutzen. Es gibt viele sachkundige Menschen, die bereit sind, dort bei Fragen zu helfen.

Üben Sie mit gutem Beispiel voran.

Ich hatte etwas Spaß, als ich zum ersten Mal mit einfachen, aber interessanten Tools wie einem Screenshot der aktuellen Karte begann und sie eine Mediawiki -Site veröffentlichte (mit nur einem Klick). Ein Großteil der API scheint eine tiefe Magie zu sein, und mehr als einmal bin ich über völlig undokumentierte Funktionen gestolpert, indem ich durch die Windows -Registrierung gestoßen und fundierte Vermutungen vorgenommen habe (wie zum Beispiel, wie ein benutzerdefiniertes Menüelement im Kontextmenü der "Datenansicht" erstellt wird).

Ich habe immer viel besser gelernt, indem ich einfache, erreichbare Aufgaben hatte, als gezwungen zu sein, langweilige trockene Bücher zu lesen.

Es gibt viel Macht, aber ich habe es sicherlich nur langsam gemacht, viel davon zu kennen und zu verstehen.

Ohne es interessant zu machen, denke ich, dass Entwickler mit einer so großen API selbstmörderisch werden.

Bekannt auch nichts über Nicht-ESRI-Bücher, die sich auf Arcobjects konzentrieren. Für die ArcGIS -Server -Software und für mich kann ich nur ArcGIS Server -Administrator und Entwicklerhandbuch (dh im Bereich der AGS -Installation enthalten) empfehlen - es gibt viele Beispiele für Code sowohl für C# als auch für VB. Auch wenn sie nicht mit AGS programmieren, können Beispiele nützlich sein, um zu erziehen, wie Arcobjects Code funktioniert.

Ich stimme James vollkommen zu.

Als jemand, der vor 4 Jahren in diesem Boot war, bin ich fest davon überzeugt, dass Sie mit der .NET -Programmierung beginnen sollten, dann auf die Esri -Plattform wechseln und sich nicht von ESRI -Problemen festhalten sollten, wenn Sie versuchen, OOP -Konzepte zu lernen.

Ich möchte auch darauf hinweisen, dass die ESRI -Entwickler -Ressourcenzentren eine Fülle von Informationen für Anfänger haben [http://resources.esri.com/gateway/index.cfm

Wenn Sie mit .NET und Desktop Devectionemnt beginnen, können Sie die "Erste -Start -Seite" unter [[http://resources.esri.com/help/9.3/arcgisdesktop/dotnet/concepts_start.htm

viel Glück.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top