برنامه نویسی Web GIS، زیرمجموعه برنامه نویسی GIS است. به طور کلی برنامه نویسی GIS شامل سه دسته زیر است:
در این آموزش می خواهم با شما درباره برنامه نویسی Web GIS صحبت کنم. اگر سوال های زیر را دارید، این نوشته را تا انتها بخوانید.
از زمانی که سایت GISPlus را به منظور آموزش GIS و مشاوره GIS، راه اندازی کردیم، پرسش های مخاطبان در زمینه GIS را گردآوری کرده ایم. در زمینه برنامه نویسی GIS، بیشتر پرسش ها به حوزه برنامه نویسی Web GIS مربوط می شوند. پرسش های مربوط به برنامه نویسی Mobile GIS در رتبه دوم قرار دارند و تعداد کمی از پرسش ها به برنامه نویسی GIS تحت Desktop برمیگردند. بسیاری از افرادی که مایل به یادگیری برنامه نویسی وب جی آی اس هستند، دانشجوی رشته GIS می باشند. این افراد، معمولا با علوم کامپیوتر و نرم افزارهای موجود در زمینه برنامه نویسی، آشنایی کمی دارند. یکی از عمده ترین مشکلات این افراد، این است که نمی توانند برای خود، یک مسیر مشخص برای یادگیری برنامه نویسی Web GIS، در نظر بگیرند. این افراد معمولا به مشاوره با برنامه نویسان و افرادی که رشته آن ها نرم افزار بوده می پردازند. در برخی موارد به سراغ آموزشگاه های کامپیوتر می روند و از آن ها میخواهند که دوره مناسبشان را به آن ها پیشنهاد نمایند. متاسفانه باید بگوییم، بیشتر افرادی که اینگونه اقدام کرده اند، پس از صرف چند ماه برای یادگیری برنامه نویسی و همچنین متحمل شدن هزینه های زیاد، هنوز نتوانسته اند، به یک برنامه نویس GIS تبدیل شوند. رسالت اجتماعی ما ایجاب میکند که با توجه به این وضعیت، مسیر یادگیری برنامه نویسی GIS و تبدیل شدن به یک برنامه نویس Web GIS را در این نوشته برای علاقمندان به آن، مشخص نماییم.
در این بخش می خواهیم در مورد زبان های برنامه نویسی که برای تولید یک Web GIS مورد استفاده قرار می گیرند توضیح بدهیم. در دومین نوشته آموزش وب جی آی اس با نام “Web GIS چگونه کار می کند؟“، یاد گرفتید که تمامی اجزای سامانه Web GIS به دو بخش Server Side و Client Side تقسیم بندی می شوند.
برنامه نویسی که نیاز هست انجام بدهیم تا یک سامانه Web GIS منطبق بر نیازهای خود، تولید کنیم، وابسته به معماری به کار گرفته شده، متفاوت هست. در معماری سمت سرویس دهنده، بیشتر برنامه نویسی ها در سمت Server انجام میشوند. در معماری سمت سرویس گیرنده، بیشتر برنامه نویسی ها باید در سمت Client انجام شود و در معماری ترکیبی، برنامه نویسی هم در سمت Server و هم در سمت Client انجام می پذیرد. معمولا می بینیم بسیاری از افراد که با برنامه نویسی آشنایی ندارند همواره از ما در این خصوص پرسش های زیادی دارند که ما باید از چه زبان برنامه نویسی استفاده کنیم و معمولا نمیتوانند به درستی، ارتباط تکنولوژی های مختلف را با هم به خوبی متوجه شوند. برای درک بهتر، ابتدا می بایست بدانید که برای برنامه نویسی سامانه Web GIS، چه کارهایی را باید انجام دهید. به صورت ساده، برای تولید یک سامانه Web GIS، ما می بایست اقدامات زیر را انجام دهیم:
با انجام سه گام فوق، شما یک سامانه GIS تحت وب را برنامه نویسی کرده اید. برای اینکه هر یک از این سه گام را بهتر متوجه شوید، هر کدام را به صورت جداگانه، توضیح می دهیم.
ما می بایست، یک وب سایت طراحی کنیم که کاربران سامانه Web GIS، بتوانند از طریق آن با سامانه، تعامل برقرار کنند و امکانات مورد نیاز برای کار با داده های مکانی و نقشه ها را در دسترس داشته باشند. به منظور طراحی و تولید یک واسط کاربری تحت وب، از تکنولوژی های HTML, CSS, JavaScript استفاده می شود. با استفاده از HTML اقدام به ایجاد صفحات وب برای سامانه می نماییم.
واژه HTML، کوتاه شده عبارت Hypertext Markup Languageمي باشد. HTML، زبان وب مي باشد. وارد هر وب سایت که می شوید، صفحه اصلی آن را مشاهده می کنید. این صفحه دارای اجزا و قسمت های گوناگونی می باشد. این اجزا توسط زبان HTML، ایجاد می شوند. دقت کنید که HTML، زبان برنامه نویسی نیست. HTML، یک زبان نشانه گذاری است. صفحات وب سایت را مرورگرهای وب نمایش می دهند. در حقیقت، HTML به مرورگر وب می گوید که در کجای صفحه وب سایت، چه چیزی را نمایش دهد. برای مثال فرض کنید می خواهیم در یک وب سایت، لیست دانشجویان یک کلاس را به همراه نمرات آن ها نمایش دهیم. اینجا با استفاده از HTML، صفحه ای را ایجاد می کنیم و در آن مشخص می کنیم که این اطلاعات، چگونه باید نمایش داده شوند. به زبان ساده، یک وب سایت را می توان به یک ساختمان تشبیه کرد. برای ایجاد یک ساختمان، ابتدا می بایست اسکلت فلزی یا بتنی آن را ایجاد نمایید. HTML، اسکلت یک وب سایت را ایجاد می نماید.
شما با استفاده از HTML، ساختار و چینش اجزای یک وب سایت را مشخص می کنید. اگر در وب سایت خود نیاز به یک لیست برای نمایش اسامی دانشجویان دارید، با استفاده از HTML، مشخص می کنید که این لیست در کجای صفحه قرار داده شود و اسامی را چگونه نمایش دهد.
می خواهیم یک صفحه برای ورود کاربران سایت، طراحی کنیم. این صفحه دارای دو کادر برای نام کاربری و گذرواژه و یک کلید برای ورود به سامانه می باشد.
همانطور که می بینید، صفحه ای که با HTML تولید شده، ظاهر زیبا و جذابی ندارد. این جا از CSS برای تعیین نحوه نمایش سیما و ظاهر اجزای موجود در صفحات وب، بهره می گیریم.
واژه CSS، کوتاه شده واژگان Cascading Style Sheet به معنی شیوه نامه آبشاری می باشد. صفت Cascading به معنی آبشاری، بیانگر این است که قوانین CSS، به صورت آبشاری از بالا به پایین بر روی صفحات Web اعمال می شوند. CSS در کنار HTML هسته فناوری ساخت صفحههای وب می باشد.
CSS، روشی ساده برای نمایش چیدمان و جلوههای تصویری (مانند نوع قلم، رنگ و اندازهها و…) برای صفحههای Web است. به گفتهای ساده تر، میتوان گفت، CSS، نمای زبان HTML میباشد و میتوان با استفاده از آن، ظاهری زیبا برای صفحات Web، طراحی نمود. . پیشتر، یک وب سایت را به یک ساختمان، تشبیه کردیم. گفتیم HTML، اسکلت یک وب سایت را ایجاد مینماید. پس از آنکه یک ساختمان را ایجاد کردید، میبایست نمایی جذاب و قابل پسند برای آن ایجاد کنید. در طراحی Web نیز پس از آنکه با استفاده از HTML، اقدام به ایجاد ساختار Web Site نمودید، با استفاده از CSS میتوانید نما و ظاهر Web Site را تعیین نمایید.
برای اجزای صفحه ورود کاربران، ظاهر مناسبی را طراحی کرده و رنگ های دل خواه را به آنها اعمال می کنیم.
ساختمان ما پس از سفت کاری و نماکاری، نیازمند قابلیت ها، تجهیزات و امکانات رفاهی می باشد. در فرآیند پیاده سازی Web Site نیز می بایست قابیلیت هایی را به صفحه Web اضافه نماییم. این قابلیت ها به منظور تسهیل فعالیت های کاربران در Web Site، به کار می آیند. این جاست که با استفاده از زبان برنامه نویسی JavaScript، امکانات پیشرفته را در صفحات وب، پیاده سازی می کنیم و صفحات وب را به قابلیت های تعامل با کاربر، تجهیز می نماییم. زبان برنامه نویسی JavaScript در صفحه های Web، برای اضافه کردن تعامل، جذابیت، اعتبارسنجی فرم ها، ارتباط برقرارکردن با سرویس دهنده ها و بسیاری کارهای دیگر، مورد استفاده قرار می گیرد. مثلا کدی می نویسیم که اگر نام کاربری و گذرواژه وارد نشد و بر روی کلید ورود، کلیک شد، یک پیغام نمایش دهیم که ابتدا، نام کاربری و کلمه عبور را وارد نمایید.
خب تا اینجا یاد گرفتید که ما ظاهر سامانه GIS تحت وب را چطور طراحی میکنیم. تا اینجای کار، ما برنامه نویسی چندانی نداشته ایم. برای این مرحله از کار، امروزه کتابخانههای فراوانی توسعه داده شده که معمولا کار برنامه نویس را ساده میکنند و نیاز نیست که کلیه کارها را بصورت دستی انجام بدهند. کتابخانه jQuery از جمله این موارد است.
jQuery یک کتابخانه JavaScript می باشد. برنامه نویسی پیشرفته در JavaScript می تواند اغلب، مشکل و زمان گیر باشد، به خصوص وقتی قرار باشد با مرورگرهای مختلف، کار کنیم. برای مرتفع کردن این مشکلات، کتابخانه های زیادی در JavaScript گسترش یافته است. کتابخانه ها، توابعی آماده و از پیش تعریف شده، برای انجام کارهای آسان و دشوار در JavaScript، فراهم می آورند. تصور کنید می خواهید وقتی بر روی کلید ورود کلیک می کنید، پنجره ورود کاربران با استفاده از یک جلوه نمایشی بسته شود و صفحه اصلی وب سایت با یک جلوه نمایشی جذاب ظاهر شود. این جا می توانید از قابلیت های کتابخانه های JavaScript استفاده نمایید و این کارها را تنها با نوشتن یک خط کد، انجام دهید.
در سمت سرویس دهنده، معمولا عملیات مهم صورت می پذیرند. مثلا ارتباط با پایگاه داده، انجام تحلیل ها و پردازش ها، اعتبارسنجی داده ها، قواعد تجاری حاکم بر داده ها و… از جمله مواردی هستند که در سمت سرویس دهنده، برنامه نویسی می شوند. در کل، می توان گفت، برنامه نویسی در سمت سرویس دهنده، باعث افزایش امنیت برنامه های تحت وب می شود. لذا معمولا مهم ترین و حساس ترین عملیات را با برنامه نویسی سمت سرویس دهنده انجام می دهند.
برای برنامه نویسی در سمت سرویس دهنده، معمولا از زبان های برنامه نویسی زیر استفاده می شود:
در هریک از این زبان های برنامه نویسی،کدها و برنامه های نوشته شده، با HTML ترکیب می شوند و بر روی یک Web Server، بارگذاری می شوند. Web Server اقدام به اجرای کدها نموده و نتیجه را به صورت یک HTML جدید به سمت سرویس گیرنده ارسال می کند. در نتیجه، کاربران اصلا به کدهای نوشته شده دسترسی نخواهند داشت.
با توجه به معماری انتخابی برای سامانه Web GIS، می بایست برخی از قابلیت های GIS را در سمت سرویس گیرنده، برنامه نویسی نمود. برای برنامه نویسی قابلیت های GIS در سمت سرویس گیرنده، روشهای متعددی وجود دارد. امروزه کتابخانه ها، ابزارها و APIهای متعددی برای این کار، توسعه داده شده اند. مثلا شرکت Esri، اقدام به توسعه APIهای مختلف برای استفاده در JavaScript، Silverlight و… نموده است. برخی از شرکت ها، کتابخانه هایی را برای استفاده در زبان های برنامه نویسی خانواده .NET ارایه کرده اند. برخی از توسعه دهندگان نیز اقدام به انتشار کتابخانه های JavaScript نموده اند. وابسته به تکنولوژی تولید وب سایت، ممکن است نتوانید از همه این روش ها استفاده نمایید. هر یک از این روش ها، مزایا و معایب خاص خود را دارند. پیشنهاد می شود برای برنامه نویسی سمت سرویس گیرنده، از روشهایی استفاده شود، که کمترین درگیری کاربر با سیستم را داشته باشند. یکی از مزایای سامانه های تحت وب این است که کاربران مجبور نیستند که برای استفاده از یک سامانه، نرم افزاری را بر روی رایانه خود نصب کنند. اگر یادتان باشد، در آموزش های قبلی هم یکی از مزایای Web GIS را همین مورد برشمردیم. برخی از روش های برنامه نویسی قابلیت های GIS در سمت سرویس گیرنده، نیاز دارند تا کاربران قبل از استفاده از سامانه اطلاعات مکانی تحت وب، اقدام به نصب برخی ابزارها نمایند. قطعا این روش ها می تواند منجر به نارضایتی کاربران سامانه Web GIS شوند. بهتر است کاربران بدون درگیر شدن با مسایل فنی، تنها با باز کردن مرورگر وب خود و وارد کردن آدرس سامانه Web GIS، به آن دسترسی داشته باشند. از آنجایی که امروزه استفاده از JavaScript در طراحی و توسعه Web، فراگیر شده است، لذا یکی از روشهای مرسوم برای برنامه نویسی در سمت سرویس گیرنده، استفاده از کتابخانه های JavaScript می باشد. برای آنکه قابلیت های GIS را توسط این زبان اسکریپت نویسی، پیاده سازی کنیم، می توان از کتابخانه هایی که برای این منظور توسعه داده شده اند استفاده نمود.
برخی از مهم ترین کتابخانه هایی که برای کار با اطلاعات مکانی با استفاده از JavaScript پیاده سازی شده اند می توان به موارد زیر اشاره کرد:
امروزه کتابخانه متن باز OpenLayers به منظور برنامه نویسی Web GIS و ایجاد قابلیت های GIS تحت وب فراگیر شده و به بلوغ نسبتا خوبی هم رسیده است.
امروزه کتابخانه متن باز OpenLayers به منظور برنامه نویسی Web GIS و ایجاد قابلیت های GIS تحت وب فراگیر شده و به بلوغ نسبتا خوبی هم رسیده است.
ما تا اینجا تلاش کردیم شما را با روش هایی آشنا کنیم، تا بدانید چگونه به یک برنامه نویس Web GIS تبدیل شوید. اینک ممکن است این پرسش در ذهن شما مطرح باشد که چگونه بین تکنولوژی ها، ابزارها و زبان های برنامه نویسی معرفی شده، یک مورد را انتخاب کنم. ما در اینجا چند نکته را به شما پیشنهاد می دهیم تا بتوانید بهتر مسیر خود را مشخص نمایید.
در این قسمت، گزینه های مختلفی پیش رو ندارید. شما ناچارید از HTML و CSS و JavaScript استفاده نمایید. در مورد کتابخانه های JavaScript برای طراحی وب سایت هم پیشنهاد ما استفاده از کتابخانه JQuery می باشد. این کتابخانه برای افرادی که به تازگی وارد مباحث برنامه نویسی Web می شوند، مناسب است.
پاسخ این پرسش به عوامل مختلفی وابسته میباشد. اگر هدفتان از آموزش برنامه نویسی Web GIS، ورود به بازارکار است، طبیعی است که میبایست تکنولوژی غالب در بازار کار را برگزینید. اگر قبلا در یک تکنولوژی، مهارت و توانایی مطلوبی دارید، پیشنهاد میشود همان تکنولوژی را جلو بروید. پس میبینید گزینش تکنولوژی تولید میتواند به پارامترهای مختلفی وابسته باشد.
اما به صورت کلی ما چند پیشنهاد داریم:
اگر می خواهید وارد بازار کار GIS شوید
شرکت های موجود در منطقه خود را بررسی کنید ببینید از چه تکنولوژی استفاده می کنند. طبق شناختی که ما داریم، در بازار برنامه نویسی کشور ما، تکنولوژی ها و محصولات Microsoft بیشتر مرسوم هستند. استفاده از زبان برنامه نویسی پایتون چند سالی است که در کشور ما و نیز در دنیا رشد بسیار زیادی داشته است.
اگر در یک زبان برنامه نویسی متخصص هستید
برنامه نویسی Web GIS را با همان زبانی که بر آن تسلط و اشراف دارید جلو بروید و دنبال جایگزین کردن با سایر زبان های برنامه نویسی نباشید.
اگر اصلا برنامه نویسی نمی دانید یا کم می دانید
با یک زبان برنامه نویسی آسان و ساده کار را شروع کنید. زبان پایتون نسبت به سایر زبان های برنامه نویسی، سادگی بیشتری دارد و معمولا به افرادی که برنامه نویسی نکرده اند پیشنهاد می کنیم. البته این به معنای ضعیف بودن زبان پایتون نیست.
اگر یک شرکت هستید و می خواهید Web GIS تجاری کار کنید
در گزینش تکنولوژی ببینید میزان وجود متخصصین در آن زمینه چقدر می باشند؟ منابع آموزش دهنده آن تکنولوژی تا چه میزان در دسترس شما هستند؟ بدیهی است اگر به مشکلی برخوردید، وجود افراد متخصص و منابع آموزشی خوب، به شما کمک شایانی خواهند کرد. اگر الان در شرکت تان برنامه نویس دارید، بهتر است با همان زبان برنامه نویسی که دانش و مهارت و تخصص آن در شرکت شما وجود دارد شروع کنید.
همواره بهتر است، مسیری را بروید که دیگران آزمایش کرده اند. البته ببینید شما شرایط پیمودن آن مسیر را دارید یا خیر.
همانگونه که پیشتر گفتیم، در این زمینه، ابزارها، کتابخانه ها و APIهای متعددی وجود دارد. در گزینش، به موارد زیر دقت کنید:
کتابخانه های JavaScript یکی از بهترین گزینه ها هستند. چراکه به راحتی در سمت Client اجرا میشوند و کاربران نهایی نیاز نیست برای بهرمندی از قابلیت های GISی سامانه تولیدی شما، اقدام به نصب ابزارهای اضافی بر روی رایانه خود نمایند.
تا آنجا که می شود از ابزارهایی که وابستگی به سایر ابزارها و Pluginها دارند، استفاده نکنید. اینها نیازمند نصب مواردی بر روی رایانه کاربر نهایی می شوند. مثلا شرکت Esri یک API برای Silverlight ارایه نموده است. اگر از چنین ابزاری برای برنامه نویسی قابلیت های GIS استفاده نمایید، طبیعی است که کاربر شما می بایست قبل از استفاده از سامانه اطلاعات جغرافیایی تحت وب، Silverlight را دانلود و بر روی رایانه خود نصب نماید. آیا همه کاربران میتوانند این کار را انجام دهند؟
ابزارهایی که می خواهید به کار بگیرید را بررسی کنید. تا چه حد به بلوغ رسیدهاند؟ تا چه زمانی قرار است مورد پشتیبانی تولیدکننده آن قرار گیرند؟ آیا جامعه هنوز در حال استفاده از این روش است؟ برای مثال، برخی از سامانه ها را می بینیم که از تکنولوژی Flash برای نمایش نقشه ها و کار با آنها استفاده می کنند. آیا Flash هنوز در صفحات وب مورد استفاده قرار می گیرد؟
در حال حاضر ما در شرکت بهین رایانش آزاد، در تولید سامانه های Web GIS از ابزارهای زیر استفاده کرده ایم:
اگر این نوشته آموزشی به شما کمک کرد، سپاسگزار می شویم که به آن امتیاز دهید تا به سایر کاربران سایت هم نمایش داده شود
چقدر این مطلب مفید بود؟
میانگین امتیاز 5 / 5. تعداد آرا: 1
اولین نفری باشید که به این پست امتیاز می دهید.
لطفا در بخش نظرات و دیدگاه ها در پایین همین صفحه هم نظر، انتقاد و پیشنهاد خود را بنویسید تا برای بهتر شدنمان از دیدگاه شما بهرمند شویم.
در این نوشته تلاش کردیم شما را با تکنولوژی ها و ابزارهای موجود که شما می توانید از آن ها به منظور شروع برنامه نویسی Web GIS بهره ببرید، آشنا کنیم.
اگر به برنامه نویسی Web GIS علاقمند هستید، پیشنهاد می کنم به جای گشت و گذار در سایت های مختلف و هدر دادن زمان خودتان و سردرگمی بیشتر، مینی دوره رایگان از GIS تا برنامه نویسی که حاصل تجارب سالیان گذشته خودم در زمینه برنامه نویسی GIS است را دانلود کرده و با تمرکز کامل 5 ساعت وقت بگذارید و آن را مشاهده نمایید.
اگر برای شروع یادگیری برنامه نویسی Web GIS جدی هستید و نیاز به راهنمایی دارید، درخواست مشاوره ثبت کنید. ما با شما تماس می گیریم و کمک تان خواهیم کرد.
دانلود پس از خرید
روشهای پرداخت
پشتیبانی آنلاین
خرید با کیف پول
آموزش رایگان GIS
ما سه کار می کنیم: آموزش GIS، مشاوره GIS، اجرای پروژه های GIS سازمانی
ما کمک می کنیم استقرار GIS در سازمان یا کسب و کار شما ساده، سریع و نتیجه بخش شود. اگر علاقمند GIS هستید، کمک می کنیم متخصص GIS حرفه ای شوید.
اصفهان، میدان ارتش، بلوار کشاورز، رو به روی بانک ملی، ساختمان سپاهان،طبقه دو، واحد 2
از شنبه تا چهارشنبه 9 تا 17
تمامی حقوق این سایت متعلق به شرکت بهین رایانش آزاد است. این سایت در زمینه آموزش GIS، مشاوره GIS و اجرای پروژه GIS سازمان ها، فعالیت میکند.
اگر به برنامه نویسی Web GIS علاقمند هستید، پیشنهاد می کنم به جای گشت و گذار در سایت های مختلف و هدر دادن زمان خودتان و سردرگمی بیشتر، فیلم رایگان چگونه برنامه نویس GIS حرفه ای شویم که حاصل تجارب سالیان گذشته خودم در زمینه برنامه نویسی GIS است را دانلود کرده و با تمرکز کامل 140 دقیق وقت بگذارید و آن را مشاهده نمایید.
2 دیدگاه برای “چگونه برنامه نویس Web GIS شویم؟ ”
سلام من ۴۵ سالمه و کارشناسی جغرافیا و ارشد gisهستم بنطرتون چقدر قادرم وارد حوزه webgis شوم
سلام دوست عزیز سن یک عدده شما هر زمان که اراده کنید می توانید وارد حوزه WebGIS شوید و از آن کسب درامد کنید خیلی از افراد ثروتمند و موفق در دنیا از سن کم شروع کردند و به این موفقیت رسیدند پس شما هم می توانید