سؤال

لدينا مبرمجان/محللان جديدان لنظم المعلومات الجغرافية في قسمنا (جديدان في البرمجة وArcObjects) ولا أشعر أنني مؤهل بما يكفي أو ليس لدي الوقت لتعليمهما.لذلك أنا أبحث عن كتب/برامج تعليمية للمبتدئين لاستخدامها كمرجع.

الكتب الوحيدة التي يمكنني العثور عليها لتطوير ملحقات ArcMap مكتوبة لـ VBA.

إلى جانب كتب دورات ESRI التي تحصل عليها من التدريب في ريدلاندز، هل يعرف أي شخص مصادر جيدة لتعلم البرمجة ضد ArcObjects في .Net؟

شكرًا

هل كانت مفيدة؟

المحلول

إن محاولة تعليم المبرمجين كلاً من ArcObjects وتطوير البرامج العامة فكرة سيئة حقًا.أنا أعاني من نفس المشكلة بالضبط الآن.أنت تخاطر بالحصول على مطورين اثنين لا يقومان ببرمجة ArcObjects ولا C# بشكل جيد.

علمهم أن يكونوا مطورين جيدين أولاً.قم بذلك من خلال جعلهم يعملون على تعليمات برمجية غير تابعة لـ ArcObjects (سواء كان ذلك يعني ArcGIS ADF عالي المستوى أو تطبيقات كاملة غير تابعة لـ GIS، فالأمر متروك لك).تأكد من أنهم يفهمون أساسيات سياق التطبيق (الويب، سطح المكتب، الوسط، إلخ).سيؤدي ذلك إلى تسهيل الانتقال إلى ArcObjects.

بمجرد أن يتقنوا أساسيات تطوير البرمجيات (على وجه الخصوص، الميراث و OOP)، قم بتقديمهم إلى ArcObjects.يعد مرجع VBA مناسبًا، ولكن من الصعب تلخيصه في لغة C# والأدوات الحديثة.يمكن للمطور الذكي أن يفعل ذلك، لكن من المحتمل أن يتعلم الشخص العادي الكثير من العادات السيئة.

أفضل رهان لك هو أن تلتقط الرصاصة وترسلها إلى ورش عمل المطورين.في بعض الأحيان، تقدم ESRI دروسًا في مكتب إقليمي قد يكون أكثر محلية بالنسبة لك.وبدلاً من ذلك، أرسلهم إلى قمة المطورين أو مؤتمر المستخدمين في الربيع والصيف على التوالي.تعتبر ورش العمل الفنية متقدمة بعض الشيء بالنسبة للمبتدئين.ومع ذلك، يمكن تعلم الكثير من ورش العمل إذا كان لدى المطورين فهم أساسي جدًا لـ ArcMap أو ArcObjects.

أيضًا، إنهم بحاجة إلى تعلم كيفية استخدام ArcMap.أهم شيء مفيد يمكنهم القيام به لتعلم ArcObjects هو تعلم ArcMap.إن فهم كيفية عمله في منتج سطح المكتب يمكن أن يكشف بشكل متكرر عن كيفية استخدام واجهة برمجة التطبيقات.مثال سهل هو إسقاط البيانات.في ArcMap، يجب عليك استخدام أداة لعرض البيانات بشكل صريح.ببساطة "إعداد" الإسقاط لا يعمل.يُترجم هذا مباشرةً إلى واجهة برمجة التطبيقات (API) حيث يجب عليك استدعاء طريقة "مشروع" أو استخدام GPTool للمشروع.

نصائح أخرى

وأنا أتفق مع المشاعر العامة التي يعبر عنها الجميع هنا (ابدأ بالبرمجة ، وابدأ صغيرًا ، وخاصة التعلم بالمثال/القيام به).

من الأسهل إلى حد كبير جعل المطورين يتعلمون ARCOBjects بدلاً من الحصول على محللي نظم المعلومات الجغرافية لتعلم البرمجة. مهمتك (للقيام كلاهما) صعبة للغاية!

ومع ذلك ، إذا كان عليك البدء في مكان ما ، فسوف أقوم أولاً بتدريبهم في أساسيات C# أو VB .NET (عبر برنامج تعليمي جيد على شبكة الإنترنت أو دورة مدفوعة الأجر) ، ثم متابعة ذلك مع التدريب الخاص بـ ESRI .NET. كما قلت في تعليق أعلاه ، لم أكن معجبًا بدورات تدريب ESRI. لديّ خلفية لتطوير البرمجيات وتمكنت من تعلم واجهة برمجة تطبيقات ArcObjects في غضون شهرين - مقارنة بشهرين من المعرفة العملية ، كانت الدورة التدريبية أساسية حقًا على مادة Arcobjects. ومع ذلك ، قد ينجح الأمر بالنسبة للمتدربين ، وقد تكون محظوظًا بتعييناتك.

أريد أيضًا أن أضيف أنك تريد بالتأكيد التركيز على تدريب البرامج أولاً ، والنظر في ARCOBjects API العرضي. إذا كان امتداد ARCMAP هذا منتجًا تنوي بيعه للأشخاص ولديك عملاء ، فإن إدراك الدعم والتعزيز والحفاظ على المنتج المليء بالأخطاء هو عملية باهظة الثمن. لذلك ، فإن أي دولار تنفق على تدريب البرمجيات سيدفع ثمن نفسه على المدى الطويل.

أود أن أخبرك حتى تفكر في توظيف مطور برامج على أساس عقد لتكون بمثابة دليل ومعلم للقول ، ستة أشهر.

بقدر ما أتذكر أن بعض التعليمات البرمجية في شبكة مطور ESRI موجودة الآن في C# ، على الأقل كان هذا هو المصدر الأساسي لرمز C# لـ GIS ، ولكن لا توجد كتب ، آسف.

ربما سيكون هذا التمهيدي الجيد: http://www.pragprog.com/titles/sdgis/gis-for-web-developers

إذا كان موظفوك جديدين حقًا في البرمجة ، فسوف أبدأ في جعلهم يتعلمون أساسيات C# (أو لغة أخرى .NET ولكن على الأرجح C# هي السبيل للذهاب للمبتدئين) وممارسة البرمجة الجيدة. أتصور أن هناك خيوط Stackoverflow الموجودة التي من شأنها أن تحتوي على اقتراحات لذلك. أعتقد أن الفهم القوي للبرمجة الموجهة نحو الكائن ومعرفة بناء جملة اللغة التي سيتم في أمثلة سوف تسهل تعلم التعلم.

أنا لست على دراية حقًا بالكتب غير الإدرالية على Arcobjects. ومع ذلك أعتقد أن مواردهم كافية لبدء المبتدئين. بالإضافة إلى كتب دورة ESRI ، أود أن أقترح البدء في الموارد عبر الإنترنت في http://resources.esri.com/arcgisdesktop/dotnet/index.cfm

هناك اقتراحات أخرى تتمثل في معرفة كيفية قراءة مخططات نموذج الكائن واستخدام المساعدة لاستكشاف أساليب وخصائص Arcobjects. شجع الموظفين أيضًا على الاستفادة من منتديات مستخدمي ESRI. هناك الكثير من الأشخاص المطلعين على استعداد للمساعدة في الأسئلة هناك.

تدرب على سبيل المثال.

لقد استمتعت ببعض المرح عندما كنت أبدأ لأول مرة بأدوات بسيطة ولكن مثيرة للاهتمام مثل تلك التي التقطت لقطة شاشة للخريطة الحالية ونشرها موقع MediaWiki (بنقرة واحدة فقط). يبدو أن جزءًا كبيرًا من واجهة برمجة التطبيقات (API) يبدو وكأنه سحر عميق وأكثر من مرة تعثرت عبر الميزات غير الموثقة تمامًا من خلال التثبيت في سجل Windows وصنع التخمينات المتعلمة (مثل كيفية إنشاء عنصر قائمة مخصص في قائمة سياق "عرض البيانات").

لقد تعلمت دائمًا أفضل بكثير من خلال الحصول على مهام بسيطة قابلة للتحقيق من إجبارها على قراءة الكتب الجافة والمملة.

هناك الكثير من القوة ، لكنني بالتأكيد كنت بطيئًا في التعرف على الكثير منها وفهمها.

دون أن يجعلها مثيرة للاهتمام ، أعتقد أن المطورين سوف ينتحلون مع واجهة برمجة التطبيقات كبيرة.

كما لا أعرف عن الكتب غير ESRI التي تركز على arcobjects. بالنسبة لبرنامج ArcGis Server وبالنسبة لي ، لا يمكنني إلا أن أوصي بـ ArcGIS Server Administrator and Developer Guide (أي AFAIK المدرجة في مربع تثبيت AGS) - هناك العديد من أمثلة التعليمات البرمجية ، لكل من C# و VB. حتى لو لم يكن البرمجة مع AGS ، لا يزال يمكن أن تكون الأمثلة مفيدة لتثقيف كيفية عمل كود ArcObjects.

أنا أتفق تمامًا مع جيمس.

باعتباري شخصًا كان في هذا القارب قبل 4 سنوات ، أعتقد اعتقادا راسخا أنك يجب أن تبدأ ببرمجة .NET ثم الانتقال إلى منصة ESRI وعدم تعثرها من قِبل مشكلات ESRI عندما تحاول تعلم مفاهيم OOP.

أود أيضًا أن أشير إلى أن مراكز موارد مطور ESRI Hava هافا ثروة من المعلومات للمبتدئين [http://resources.esri.com/gateway/index.cfm

إذا بدأت بـ .NET و Desktop DevelopmenT ، يمكنك رؤية "صفحة البدء" تحت [[http://resources.esri.com/help/9.3/arcgisdesktop/dotnet/concepts_start.htm

حظا طيبا وفقك الله.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top