ابزارهای برنامه نویسی (Programming Tools)


جدول تناوبی تحلیل های مکانی در GIS

معرفی هفت منبع داده اقلیمی رایگان جهانی

چرخش قطبی در مقابل چرخش خورشید آهنگ

آنالیز تصویر شئی گرا (OBIA)

تعامل انرژی در سنجش از دور : انعکاس، جذب و گسیل انرژی

معرفی 6 منبع رایگان داده های لیداری

آشنایی با SAR با استفاده از مثال

برنامه لندست : 50 سال آرشیو از تصاویر سطح زمین

دانلود رایگان نرم افزار ArcGIS Pro 2.8

ابر نقطه ای چیست ؟

انواع نقشه ها در سیستم اطلاعات جغرافیایی: 25 روش مختلف و جذاب برای نمایش داده های مکانی در GIS

تصحیحات اتمسفری در سنجش از دور چیست ؟

سیستم های تصویر نقشه چیست ؟ و چرا بعضا برای ما گمراه کننده هستند ؟

ژئودزی: ریاضیات مکان

گیرنده های GPS چگونه کار می کنند ؟ سه گانه سازی در مقابل مثلث بندی

مأموریت توپوگرافی رادار شاتل (SRTM)

چرا پنجره اتمسفری در علوم زمین دارای اهمیت است ؟

تصاویر ماهواره ای DigitalGlobe: وردویو(Worldview)، ژئوآی(GeoEye) و آیکونوس (IKONOS)

راهنمای طبقه بندی نزدیکترین همسایه در e-Cognition

نقشه های کروپلت – مقدمه ای بر طبقه بندی داده

تصاویر چند طیفی (Multi-spectral) در مقایسه با تصاویر ابر طیفی (Hyper-spectral)

فتوگرافی هوایی (Aerial Photography) در مقابل ارتوفوتوگرافی (Orthophotography)

راهنمای جامع لیدار (Light Detection and Ranging – LiDAR)

سنجش از دور چیست ؟

منابع داده GIS رایگان در سطح جهانی : داده های رستری و برداری

مقدمه ای بر سرویس های نقشه کشی تحت وب (WMS)

علم داده مکانی چیست ؟

تحلیل عوارض سه بعدی

ژئوانالیتیکس: آنالیز داده های مکانی حجیم

فرمت های داده در سیستم اطلاعات جغرافیایی بخش سوم

فرمت های داده در سیستم اطلاعات جغرافیایی بخش دوم

فرمت های GIS و پسوندهای داده مکانی بخش اول

آموزش برنامه نویسی پایتون بخش سی ام

انتشار نخستین تصاویر لندست 9 توسط سازمان هوا و فضای آمریکا (NASA)

آموزش برنامه نویسی پایتون بخش بیست و نهم

آموزش برنامه نویسی پایتون بخش بیست و هشتم

آموزش برنامه نویسی پایتون بخش بیست و هفتم

آموزش برنامه نویسی پایتون بخش بیست و ششم

آموزش برنامه نویسی پایتون بخش بیست و پنجم

معرفی سامانه WEB GIS


ابزارهای برنامه نویسی
در این بخش در مورد برخی از الگوریتم های خاص و توضیح سه ابزاری که برای تبدیل الگوریتم ها به برنامه های کامپیوتری مورد استفاده قرار می گیرند بحث می کنیم. این ابزارها شامل 1- فلوچارت (Flowchart) 2- شبه کد (pseudocode) و 3- نمودارهای سلسله مراتبی (Hierarchy Charts) هستند. شما از الگوریتم ها هر روز استفاده می کنید تا تصمیم گیری کنید و کارهایتان را انجام دهید. برای مثال: زمانی که یک نامه را ارسال می کنید، بایستی تصمیم بگیرید چقدر تمبر پستی برای بسته بندی مرسوله قرار دهید. یک قانون کلی استفاده از یک مهر به ازای هر پنج برگه کاغذ و یا کسری از آن است. فرض کنید، دوستی از شما بخواهد که تعداد تمبرهایی که برای بسته بندی نیاز است را به دست آورید. الگوریتمی که در ادامه می آید این کار را انجام می دهد:
1- تعداد بسته های کاغذ را مشخص کن، و آن را بسته (Sheet) نامگذاری کن (ورودی یا Input)
2- تعداد بسته ها یا Sheet را بر 5 تقسیم کن (پردازش یا Processing)
3- در صورت نیاز، عدد به دست آمده را به عدد کامل و صحیح گرد کن و آن را تمبر یا Stamps نامگذاری کن (پردازش یا Processing)
4- تعداد تمبرها یا Stamps را گزارش کن (خروجی یا Output)
این الگوریتم تعداد بسته ها یا Sheet را به عنوان ورودی می گیرد، داده ها را پردازش می کند و تعداد تمبرهایی که مورد نیاز است را به عنوان خروجی اعلام می نماید. اکنون می توان الگوریتم را با 16 بسته کاغذ تست نمود:
1- اخذ تعداد بسته های کاغذ: بسته ها = 16
2- تعداد بسته ها بر 5 تقسیم می شوند که برابر است با 3.2
3- نتیجه به سمت بالا گرد می شود یعنی 3.2 به 4 گرد می شود.
4- نتیجه که برابر با 4 تمبر پستی است اعلان می گردد.

از میان ابزارهای طراحی برنامه موجود، سه نمونه از معروف ترین این ابزارها شامل موارد زیر است:
1- فلوچارت (Flowchart) که به صورت گرافیکی گام های منطقی برای انجام یک عملیات را نشان می دهد و نیز نحوه ارتباط این مراحل را نیز به تصویر می کشد.
2- شبه کد (Pseudocode): که از کلمات انگلیسی به همراه برخی از واژگان تخصصی برنامه نویسی استفاده می کند تا انجام یک عملیات را نشان دهد.
3- نمودارهای سلسله مراتبی (Hierarchy Charts): این نمودارها چگونگی ارتباط بخش های مختلف یک برنامه را نشان می دهند.
فلوچارت (Flowchart)
فلوچارت شامل سیمبل های هندسی خاصی است که با استفاده از فلش ها به یکدیگر متصل می شوند. هر سیمبل یک عبارتی است که یک گام از یک عملیات را نشان می دهد. شکل سیمبل نشان دهنده نوع عملیاتی است که انجام می شود. به عنوان مثال، متوازی الاضلاع نشان دهنده ورودی و خروجی می باشد. فلش هایی که سیمبل ها را به هم متصل می کند به نام خطوط جریانی می نامند. این خطوط نماینده پروسه ای است که در آن مراحل و گام های عملیات مربوط به اجرای برنامه انجام می گیرند. در فلوچارت بایستی از بالا به سمت پائین ترسیم شوند. اگرچه سیمبل هایی که در فلوچارت به کار می روند، استاندارد شده هستند، اما استاندارد خاصی برای جزئیات مورد نیاز در هر سیمبل وجود ندارد.

جدول فوق سیمبل های فلوچارت را نشان می دهد که از موسسه استاندارد ملی آمریکا (ANSI) گرفته شده است. در شکل زیر فلوچارت مربوط به مسئله ی تعداد تمبر پستی نشان داده شده است. مهم ترین مزیت استفاده از فلوچارت برای طرح ریزی یک عملیات آن است که نمایش گرافیکی از عملیات هایی که باید در حین برنامه نویسی انجام شوند، فراهم می آورد در نتیجه، دنبال کردن منطق برنامه ساده تر خواهد بود. هر مرحله را می توانیم به وضوح ببینیم و همچنین ارتباطات آن با سایر مؤلفه ها را دنبال کنیم. اصلی ترین عیب این نوع نمایش، آن است که زمانی که برنامه بسیار بزرگ و پیچیده است، فلوچارت ممکن است در چندین صفحه ادامه پیدا کند، که این حالت دنبال کردن فلوچارت و ویرایش آن را مشکل می سازد.

شبه کد (Pseudocode)
شبه کد یا Pseudocode یک نسخه مختصر شده انگلیسی از کد واقعی کامپیوتری است. سیمبل های هندسی به کار گرفته شده در فلوچارت با جملات انگلیسی کوتاهی جایگزین می شوند که معرف یک عملیات یا پردازش می باشند. در نتیجه شبه کد، بیشتر شبیه کد کامپیوتری است تا فلوچارت. شبه کد، بیشتر به برنامه نویسان این امکان را می دهد که بر روی گام های لازم برای حل مسئله متمرکز شوند نه اینکه چطور از یک زبان برنامه نویسی استفاده کنند. برنامه نویسان، می توانند الگوریتم ها را در یک فرم شبیه به یک زبان برنامه نویسی توصیف کنند، بدون آنکه محدود به قواعد و گرامر آن زبان برنامه نویسی شوند. زمانی که شبه کد تکمیل شد، به سادگی می توان آن را با استفاده از یک زبان برنامه نویسی پیاده سازی نمود و در واقع شبه کد را به برنامه ترجمه نمود. شکل زیر شبه کد مربوط به مسئله تعیین تعداد تمبرهای مورد نیاز برای یک بسته پستی را نشان می دهد.

شبه کد، دارای چندین مزیت است. شبه کدها معمولاً مختصر و فشرده هستند و همچون فلوچارت ها که چندین صفحه را می تواند در بر بگیرد نیستند. همچنین شبه کدها شبیه کدها هستند و به همین دلیل اولویت بسیاری از برنامه نویسان می باشند.
نمودارهای سلسله مراتبی (Hierarchy Chart)
آخرین ابزاری که در این نوشته مورد بررسی قرار می گیرد، نمودار سلسله مراتبی است که کل ساختار برنامه را نشان می دهد. نمودارهای سلسله مراتبی، به نام نمودارهای ساختاری نیز شناخته می شوند. نمودارهای HIPO، نمودارهای بالا به پائین و یا نمودارهای VTOC همگی اسامی هستند که به دیاگرام های طرح ریزی اطلاق می شوند و شبیه به چارت سازمان یک شرکت هستند. نمودارهای سلسله مراتبی سازماندهی یک برنامه را نشان می دهند اما پردازش های خاص و جزئی را حذف می کند. این نمودارها توصیف کننده بخش های مختلف یک برنامه هستند و اینکه هر یک چه کاری انجام می دهند و همچنین نحوه ارتباط اجزای مختلف برنامه با یکدیگر را نیز نشان می دهند. اما جزئیاتی که مربوط به نحوه عملکرد آنها است را حذف می کنند. این نمودارها از بالا به پائین و از چپ به راست خوانده می شوند. هر بخش می تواند به زیر بخش های دیگری نیز تقسیم بندی شود. با یک نگاه سریع بر روی نمودارهای سلسله مراتبی، می توان هر کاری که در برنامه انجام می گیرد را مشاهده کرد و نیز محل انجام آن عملیات نیز مشخص می گردد. در شکل زیر یک نمودار سلسله مراتبی برای مسئله تعیین تعداد تمبرهای پستی نشان داده شده است.

مهمترین مزیت نمودارهای سلسله مراتبی، در طرح ریزی اولیه برنامه ها می باشد. با اهمیت ترین بخش برنامه در ابتدا به چند بخش تجزیه می شود تا ببینیم که به طور کلی چه مراحلی باید طی شود. از این مرحله به بعد، می توانیم هر بخش را به بخش های دیگری که دارای جزئیات بیشتری هستند تقسیم کنیم و با استفاده از فلوچارت یا شبه کد نمایش دهیم. این فرایند به نام متد تقسیم و حل شناخته می شود.

آموزش برنامه نویسی پایتون بخش پنجم

کارگاه آموزشی تحلیل داده های رستری با استفاده از زبان برنامه نویسی پایتون

دانلود نقشه های توپوگرافی اسکن شده با مقیاس 1/50000 برگه ایرانشهر به شماره NG-41-1

فیلم آموزشی زمین مرجع یا ژئورفرنس لایه ها و داده های مکانی در نرم افزار Global Mapper

روش نصب نرم افزار Envi 5.6

مقدمه ای بر برنامه نویسی کامپیوتر (بخش مبانی برنامه نویسی)

روش های ترانسفورم (Transformation) مختصاتی در نرم افزار ArcGIS Pro

روش نصب نرم افزار Arc GIS Pro 2.8

دانلود و روش نصب نرم افزار Global Mapper 24

آموزش برنامه نویسی پایتون بخش سوم (محاسبات ریاضی، استایل و خطاها در برنامه نویسی)

دانلود نقشه های توپوگرافی اسکن شده با مقیاس 1/50000 برگه سرخس به شماره NJ-41-13

سیستم مختصات، واژه شناسی و مفاهیم در سیستم اطلاعات جغرافیایی

نقشه های موقعیت سیاسی منطقه مطالعاتی بخش اول

معرفی و دانلود نرم افزار SAGA GIS

نرم افزار Terrain Morphometer V.1 برای اجرای آنالیز مورفومتری از مدل رقومی ارتفاعی

آموزش برنامه نویسی پایتون بخش دهم (اپراتورهای انتساب گمارشی)

دانلود نقشه های توپوگرافی اسکن شده با مقیاس 1/50000 برگه چابهار به شماره NG-41-9

آموزش ویدئویی تحلیل های هیدرولوژی در نرم افزار ArcGIS Pro

آموزش برنامه نویسی پایتون بخش هجدهم

دانلود نقشه راههای ایران استایل 2

دانلود نقشه های توپوگرافی اسکن شده با مقیاس 1/50000 برگه دریاچه هامون به شماره NH-41-5

دانلود نرم افزار ArcGIS Pro 3.0.2

دانلود رایگان محاسبه سرعت دانلود و آپلود اینترنت

نقشه های پوششی زمین شناسی ایران در مقیاس 1:100000 بخش اول

نقشه تقسیمات سیاسی ایران

نقشه متوسط دمای سطح زمین ایران (LST)

آموزش برنامه نویسی پایتون بخش یازدهم (تبدیل نوع و گرد کردن)

نقشه های زمین شناسی اسکن شده ایران در مقیاس 1:250000

مدلسازی سایه-اندازی ساختمان ها در چشم اندازهای شهری در نرم افزار ArcGIS Pro

نقشه های پوششی زمین شناسی ایران در مقیاس 1:100000 بخش سوم

سیکل توسعه نرم افزار

آموزش برنامه نویسی پایتون بخش اول

فیلم آموزشی زمین مرجع یا ژئورفرنس لایه ها و داده های مکانی در نرم افزار Arc GIS Desktop

دانلود نقشه های توپوگرافی اسکن شده با مقیاس 1/50000 برگه زاهدان به شماره NH-41-9

دانلود نقشه راههای ایران استایل 4

دانلود نقشه راههای ایران استایل 1

آموزش تحلیل های هیدرولوژی در نرم افزار Arc GIS Desktop

دانلود نقشه های توپوگرافی اسکن شده با مقیاس 1/50000 برگه سرآوان به شماره NG-41-2

دانلود نقشه های توپوگرافی اسکن شده با مقیاس 1/50000 برگه خاش به شماره NH-41-13

دیدگاهتان را بنویسید