ArcObjects と一般的なソフトウェア開発の両方をプログラマーに教えようとするのは、本当に悪い考えです。私は今、まったく同じ問題に苦しんでいます。ArcObjects も C# もうまくプログラミングできない 2 人の開発者を獲得するリスクがあります。
まず、優れた開発者になるように教えてください。これを行うには、ArcObjects 以外のコードで動作するようにします (つまり、高レベルの ArcGIS ADF を意味するのか、完全な非 GIS アプリを意味するのかは、あなた次第です)。彼らがアプリケーション コンテキストの基本 (Web、デスクトップ、ミドルなど) を理解していることを確認してください。これにより、ArcObjects への移行が容易になります。
ソフトウェア開発の基礎 (特に継承と OOP) を理解したら、ArcObjects を紹介します。VBA リファレンスは適切ですが、C# や最新のツールに抽象化するのは困難です。優秀な開発者はそれを行うことができますが、平均的な開発者はおそらく多くの悪い習慣を身につけるでしょう。
あなたの最善の策は、弾丸を噛んで開発者ワークショップに送ることです. 場合によっては、ESRI が地域のオフィスでクラスを提供することがあります。または、春と夏のそれぞれの Developer Summit または User Conference に送信してください。テクニカル ワークショップは、完全な初心者向けの少し高度なものです。とはいえ、開発者が ArcMap や ArcObjects について非常に基本的な知識を持っている場合、ワークショップから多くのことを学ぶことができます。
また、ArcMap の使用方法を学習する必要があります。ArcObjects を学ぶためにできる最も重要なことは、ArcMap を学ぶことです。デスクトップ製品での動作を理解すると、API の使用方法が明らかになることがよくあります。簡単な例は、データの投影です。ArcMap では、ツールを使用して明示的にデータを投影する必要があります。単に投影を「設定」するだけでは機能しません。これは、「プロジェクト」メソッドを呼び出すか、プロジェクト GPTool を使用する必要がある API に直接変換されます。