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


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

انواع نقشه ها در سیستم اطلاعات جغرافیایی: 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

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

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

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

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

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

برنامه نویسی پایتون بخش هشتم (انتساب چندگانه، ثابت ها، نوع-داده های عددی و اپراتورها)

برنامه نویسی پایتون بخش هفتم (متغیرها، دستور انتساب و عبارات)

برنامه نویسی پایتون بخش ششم (Identifiers)

معرفی توانایی ها و ویژگی های ماهواره لندست 9


مبانی برنامه نویسی کامپیوتر
برنامه های کامپیوتری
برنامه های کامپیوتری که به عنوان نرم افزار شناخته می شوند، دستوراتی هستند که به کامپیوترها می گویند چه کاری باید انجام شود.
کامپیوترها زبان انسان ها را متوجه نمی شوند، بنابراین برنامه ها بایستی در یک زبان قابل درک برای آنها نوشته شوند. صدها زبان برنامه نویسی وجود دارد که همه آنها قصد دارند که فرایند برنامه نویسی را برای انسان ها ساده تر کنند. به هر حال همه برنامه های کامپیوتری بایستی به یک زبان قابل فهم کامپیوترها تبدیل شوند.
1- زبان ماشین (Machine Language)
زبان اصلی کامپیوتر که در انواع کامپیوترهای مختلف متفاوت می باشد، زبان ماشین است که مجموعه ای از دستورات درون ساخت اولیه را شامل می شود. این دستورات به صورت کدهای باینری هستند، بنابراین در صورتی که بخواهید به کامپیوترها دستوراتی در زبان اصلی بدهید باید این دستورات را به کدهای باینری وارد کنید. به عنوان مثال برای جمع کردن دو عدد، بایستی در کد باینری، دستوری شبیه به این دستور بنویسید:
1101101010011010
2- زبان اسمبلی (Assembly Language)
برنامه نویسی در زبان ماشین، یک فرایند خسته کننده و مشکل است. علاوه بر اینکه، برنامه های نوشته شده در زبان ماشین بسیار مشکل بوده و خواندن، اصلاح و ویرایش آنها نیز سخت است. به همین دلیل، زبان اسمبلی به عنوان راهکار این مشکل به وجود آمده و توسعه پیدا کرده است. زبان برنامه نویسی اسمبلی، از کلمات توصیفی استفاده می کند که به عنوان نمونیک شناخته می شوند و برای نمایش هر یک از دستورات زبان ماشین مورد استفاده قرار می گیرند. به عنوان مثال کلمه نمونیک add به معنای جمع کردن اعداد و واژه sub به معنای تفریق می باشد. برای اضافه کردن 2 و 3 به یکدیگر و گرفتن نتیجه، در زبان اسمبلی بایستی دستوری شبیه به این دستور بنویسید:
add 2, 3, result
زبان های برنامه نویسی اسمبلی، برای آنکه زبان برنامه نویسی را ساده تر کنند، به وجود آمده اند. به هر حال، به دلیل آنکه کامپیوترها نمی توانند زبان اسمبلی را درک کنند، برنامه دیگری به نام اسمبلر مورد استفاده قرار می گیرد تا برنامه های زبان اسمبلی را به کد ماشین تبدیل کند. در شکل زیر نحوه تبدیل کدهای اسمبلی به کد ماشین توسط اسمبلر نشان داده شده است.

نوشتن در زبان اسمبلی ساده تر از زبان ماشین می باشد. ولی همچنان فرایند کدنویسی به زبان اسمبلی فرایند پیچیده و مشکلی است. یک دستور در زبان برنامه نویسی اسمبلی ضرورتاً مربوط به یک دستور در زبان ماشین می باشد. کدنویسی در زبان اسمبلی نیازمند دانش شما از نحوه عملکرد CPU می باشد. زبان اسمبلی یک زبان سطح پائین است، زیرا زبان اسمبلی به لحاظ ماهیت نزدیک به زبان ماشین می باشد و به نوعی وابسته به ماشین (Machine Dependent) می باشد.
3- زبان سطح بالا (High-Level Language)
در دهه 1990، نسل جدیدی از زبان های برنامه نویسی به نام زبان های برنامه نویسی سطح بالا ظاهر شدند. این زبان های برنامه نویسی مستقل از پلاتفرم بودند، به این معنا که شما می توانستید یک برنامه را در زبان برنامه نویسی سطح بالا بنویسید و بر روی انواع مخلتفی از ماشین ها اجرا کنید. زبان های سطح بالا زبان های شبیه به زبان انگلیسی هستند و استفاده و یادگیری آنها نیز ساده است. دستورات در زبان های برنامه نویسی سطح بالا Statement نامیده می شوند. در مثال زیر نمونه ای از یک دستور زبان برنامه نویسی سطح بالا برای محاسبه مساحت دایره با استفاده از شعاع، برابر با 4 نشان داده شده است:
area = 4 * 4 * 3.1415
زبان های برنامه نویسی سطح بالای بسیاری وجود دارند که هر یک، به منظور خاصی ایجاد و توسعه پیدا کرده است. در جدول بعد لیستی از این زبان های برنامه نویسی نشان داده شده است. برنامه ای که در یک زبان برنامه نویسی سطح بالا نوشته شده است را برنامه منبع یا کد منبع می نامند. به دلیل آنکه کامپیوترها نمی توانند سورس-کدها را درک کنند، کدهای منبع بایستی به کد ماشین، ترجمه شوند تا قابلیت اجرا داشته باشند. فرایند ترجمه و تبدیل کدهای منبع به کدهای ماشین توسط یک ابزار دیگری انجام می شوند که به آن کامپایلر و یا مفسر گفته می شود. در نتیجه زبان های سطح بالا به دو دسته زبان های کامپایلری و مفسری طبقه بندی می شوند.
مفسر (Interpreter) یک دستور یا Statement از کد منبع یا Source Code را خوانده و سپس آن را به کد ماشین یا Machine Code ترجمه می کند و سپس همان لحظه آن را اجرا می کند. در شکل زیر نحوه اجرای کدهایی که در یک زبان برنامه نویسی سطح بالای مفسری و کامپایلری نوشته اند، نشان داده شده است.

توجه داشته باشید که دستورات کد منبع می توانند به چندین دستور ماشین تبدیل شوند. کامپایلر، ترجمه کل کدهای منبع به کدهای ماشین را به صورت یکجا انجام می دهد و سپس کدهای ماشین یکباره اجرا می شوند. زبان برنامه نویسی پایتون از نوع زبان برنامه نویسی سطح بالای مفسری است. بسیاری از زبان های برنامه نویسی دیگر همچون C و C++ از نوع کامپایلری هستند.

نکته
کدنویسی در زبان های برنامه نویسی مفسری ساده تر و عیب یابی و توسعه این کدها ساده تر است ولی سرعت اجرای زبان های برنامه نویسی کامپایلری بیش از مفسری است.
زبان برنامه نویسی پایتون (Python Programming Language)
زبان برنامه نویسی پایتون یکی از زبان های برنامه نویسی سطح بالای مفسری است. این زبان در سال های اخیر در حال توسعه و رشد می باشد. یکی از بهترین زبان های برنامه نویسی برای ورود به دنیای کدنویسی است. این زبان یکی از زبان های برنامه نویسی پویا و در حال رشد می باشد. طبق ارجاعاتی که در سایت Stack over Flow به زبان های برنامه نویسی مختلف داده شده است، این زبان دارای بیشترین سرعت رشد از سال های 2012 تا کنون بوده است. در شکل زیر منحتی رشد این زبان برنامه نویسی در مقیاس جهانی نشان داده شده است.

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

نقشه های توپوگرافی اسکن شده با مقیاس 1/50000 برگه جازموریان به شماره NG-40-4

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

روش دانلود لایه های برداری لایه ها و عوارض شهری OSM

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

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

تبدیل مختصات در نرم افزار Global Mapper

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

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

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

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

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

نرم افزار Coordinate to Map V.1 برای ترسیم عوارض برداری نقطه ای، خطی و پلیگونی بر اساس اطلاعات نقطه ای برداشت شده در عملیات نقشه برداری

نرم افزار Arc GIS Desktop در مقابل Arc GIS Pro

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

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

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

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

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

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

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

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

روش برش حواشی نقشه های اسکن شده در نرم افزار Global Mapper

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

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

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

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

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

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

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

نرم افزار Coordinate Format Changer V.1 برای تبدیل فرمت مختصات

نرم افزار Slope Calculator V.1 برای استخراج نقشه شیب از مدل رقومی ارتفاعی با استفاده از 5 الگوریتم مختلف

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

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

دانلود نرم افزار Arc GIS Pro 2.5 + روش نصب گام به گام

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

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

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

ماهواره لندست 9

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

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