بخشی از مقاله
چکیده
اخیرا ترکیب سرویس هاي وب - Web Services - با سامانه هاي اطلاعات مکانی - GIS: Geospatial Information System - توجه زیادي را به خود جلب کرده است و در همین زمینه سرویس هاي تهیه نقشه تحت وب - Web mapping - مانند Google Maps بسیار رایج شده اند. بسیاري از شرکت هاي نرم افزاري رابط هاي برنامه نویسی کاربردي - API: Application Programming Interface - مبتنی بر وب را براي توسعه دهندگان حرفه اي فراهم می کنند. از آنجایی که Mashup ها از ترکیب API هاي مختلف تشکیل شده اند،
در این زمینه Mashup ها باعث بروز تحولات عظیمی در فناوري اطلاعات مکانی گشته اند. گسترش رابط هاي برنامه نویسی کاربردي عمومی در دنیاي Google - Web 2.0، Yahoo، Microsoft و ... - موجب یک انقلاب در نرم افزارهاي در حال تحول و سرویس هاي وب شده است. در این مقاله اجزا و طریقه ساخت یک Mashup براي نمایش و دسترسی آسان به اطلاعات دانشگاه ها ارائه می شود.
این مقاله ابتدا به بررسی مفاهیم Web، Web 2.0 و Mashup پرداخته و در نهایت به نمایش اطلاعات دانشگاه هاي شهر تهران با استفاده از داده هاي KML و GeoRSS بر روي سرویس Googel Maps به عنوان کار عملی می پردازد.
مقدمه
در گذشته تارنماها - Web Site - فقط سرویس هاي قابل خواندن را ارائه می دادند. اما امروزه سرویس هاي قابل خواندن و نوشتن در دسترس کاربر می باشد که به عنوان Web 2.0 معرفی شده اند. مزایاي Web 2.0 به گونه اي است که سرویس هاي Web 2.0 جایگزین بسیاري از نرم افزارهاي رومیزي خواهند شد و بر بسیاري از آنها تاثیر خواهند گذاشت که وب مبتنی بر APIهاي نقشه پیشنهاد شد، پیشرفت کندي داشت. Google با ساختن Google Maps API باعث آسانتر شدن کار توسعه دهندگان براي ترکیب Google Maps با داده ها براي ساختن تارنماهاي وب اختصاصی شده است. ترکیب APIهاي مبتنی بر نقشه با تارنماهاي دیگر و به اشتراك گذاري داده ها در آنها جزء تحولات و نوآوري هاي جدید در GIS می باشد که هیچ کس انتظار آن را نداشت.
Mashup از ترکیب دو یا چند برنامه کاربردي وب براي تولید یک سرویس اطلاعاتی جدید فراهم می شود. تکنولوژي Mashup در حقیقت پله بعدي Web2.0 می باشد و در باز بودن، مشارکت و جنبه هاي همکاري Web2.0 سهیم می باشد. با استفاده از کد باز - Open Source - و در دسترس، Mashup ها با استفاده از Web feeds، Atom یا - Really RSS Simple Syndication - و JavaScript قابل نمایش هستند
امروزه اطلاعات مکانی نقش بسیار مهمی در زندگی روزمره دارند. نقشه هم مستقیم ترین راه نمایش اطلاعات مکانی می باشد. به همین منظور در Mashup اي که در این مقاله بررسی می شود براي نمایش داده ها در میان سرویس هاي تهیه نقشه تحت وب از Google Maps و داده هاي - Keyhole Markup Language - KML و GeoRSS استفاده می شود. GeoRSS می تواند یک راه ساده را براي نمایش داده و به اشتراك گذاري آن بر روي یک نقشه فراهم سازد.
-1 مفهوم Web
Web به عنوان یک سکو، به محصولات، خدمات و شغل هایی اطلاق می شود که توسط اینترنت ساخته شده اند. برنامه هاي کاربردي مرسوم مبتنی بر Web، با عنوان Web 1.0 شناخته می شوند. در Web 1.0 از مدل سرویس گیرنده-سرویس دهنده استفاده می گردد.
سرویس گیرنده یک مرورگر Web بوده که درخواست - Hypertext Transfer Protocol - HTTP را به سمت سرویس دهنده ارسال می نماید. در Web 1.0 هر محصول یا سرویس تنها توسط تارنما یا دربگاه - Portal - خاص خودش قابل تغییر است. در نتیجه از هر لحاظ تحت اختیار سازندگان آنها می باشد. در Web 1.0 علاوه بر اینکه داده توسط تارنماي مخصوص به خود کنترل می شود، امکان ترکیب داده از تارنماهاي مختلف و به اشتراك گذاري آنها وجود ندارد. ظهور Web 2.0 بسیاري از این مشکلات و نواقص را مرتفع کرد.
Web 2.0 -2
Web 2.0 در سال 2004 براي اولین بار توسط Tim O’Reilly مطرح گردید. این مسئله با بهبود Web 1.0 براي افزایش قدرت نفوذ بر اینترنت ظاهر شد. خصوصیات Web 2.0 شامل موارد زیر است:
• امکان ترکیب داده و تارنماها بر دربگاه هاي موردنظر کاربر وجود دارد.
• از استانداردهاي وب استفاده می کند در نتیجه محتوي آنها پویا است.
• Web بعنوان سکو در نظر گرفته می شود.
• داده، عامل اصلی و محرك تلقی می گردد و مسئول داده در دربگاه ها کاربران می باشد.
• نوآوري در ساخت سامانه ها و پایگاه ها بواسطه ي استفاده از خصوصیات توزیع یافتگی و توسعه دهندگان مستقل - نوعی از توسعه ي متن باز - ایجاد می گردد.
• مدل هاي برنامه نویسی آسان تر است.
• ارائه ي نرم افزار ها در سطحی بالاتر از یک دستگاه منحصر بفرد PDA - ، Mobile، ... - می باشد.
• تجربیات غنی کاربر و امکان به اشتراك گذاري آن ها در پیشرفت Web 2.0 موثر است.
این ویژگی ها، تکنولوژي هاي مرسوم را در کنار هم قرار داده و دستاورد هاي جدید آن را توصیف می نماید.
به همین ترتیب و با استفاده از این دستاوردها، GIS هم دچار تحول خواهد شد. نرم افزارهايMapQuest, Yahoo Maps ابزارهاي مبتنی بر نقشه راحت تري را براي استفاده عموم در اختیار گذاشته اند. Google Maps هم با در اختیار قرار دادن API براي توسعه دهندگان وب امکان تهیه نقشه بر خط و هم چنین امکان ترکیب داده را در اختیار قرار داده است.
بعد از ظهور Google Maps API نیاز شدیدي به سرویس هاي مکان مبنا که توسط برنامه نویسان معمولی استفاده می شوند احساس شد. در همین رابطه عبارت Where 2.0 توسط Nat Torkington مطرح شدWhere 2.0 .[2] یک سکو تحت وب مبتنی بر سرویس هاي مکان مبنا به همراه ارائه دهندگان نقشه مبناي باز می باشد. Where 2.0 شامل مجموعه تکنیک ها و ابزارهایی است که باعث دگرگونی و تحول حوزه GIS متداول شده است.
توسعه دهندگان Where 2.0 از API نقشه مانند Google Maps استفاده می کنند و در آن ها ازKML, GeoRSS در مقابل - Geography Markup Language - GML استفاده می شود. شخص ثالث در Where 2.0 توسعه دهندگان معمولی وب و کاربران اولیه می باشند که بهتر از فروشندگان GIS محلی عمل می کنند. تفاوت بین سکوي برنامه معمولی و سکوي Where 2.0 در جدول زیر مشاهده می شود:
آن را فراهم می نمایند، بلکه موقعیت آن بر روي صفحه و چگونگی نمایش آن را نیز مشخص می کنند. تلفیق این سرویس ها و استفاده از آن ها در کنار هم در Web 1.0 امري بعید به نظر می رسید؛ اما با ظهور تکنولوژي هاي Web 2.0 این امکان فراهم گردیده است. تکنولوژي هاي Web 2.0 نقش مهمی در توسعه ي Portal ها ایفا می نمایند. در حقیقت Mashupها، Portal هاي نوین هستند. Mashup ها امکان بازیابی و پایش داده ها را با استفاده از API هاي باز فراهم می نماید. این API ها به وسیله ي ارائه دهندگان سرویس ها عرضه می شوند.
Mashup -3 ها
Mashup ها امکان تلفیق با دنیاي عظیم Web2.0 را براي برنامه نویسان فراهم می نمایند. همانطور که از نام آن پیداست، Mashup ها واسط هاي برنامه نویسی را از محصولات و سرویس هاي مختلف ترکیب نموده و محصولات و سرویس هاي جدید تولید می نمایند.
Yahoo، Google، و Microsoft واسط هاي برنامه نویسی برنامه هاي کاربردي مبتنی بر استاندارد هاي وب را منتشر نموده اند. این واسط ها امکان استفاده از کارآیی ها و قابلیت هاي پیچیده ي آن ها را، بدون نیاز به مهارت در برنامه نویسی، براي کاربران فراهم می نمایند. بسیاري از شرکت هاي بزرگ و کوچک در این مسیر حرکت نموده و با انتخاب و تلفیق API ها، Mashup ایجاد می نمایند.
Mashup روش جدیدي در ایجاد برنامه هاي کاربردي مبتنی بر وب محسوب می گردد و برنامه نویسان را قادر می سازد تا محصولات و سرویس هاي شرکت هاي رقابتی نظیر Microsoft، Google، Amazon، و Yahoo را تلفیق نموده و محصولات و سرویس هاي جدید و منحصر بفرد ایجاد نمایند.
این محصولات و سرویس هاي جدید، API هاي ارائه شده را با استفاده از تکنولوژي هاي وب تلفیق می نمایند.
تکنولوژي هاي Mashup، همانند دیگر تکنولوژي ها، با گذشت زمان تکامل یافتند. عوامل موثر در توسعه ي Mashup ها، بر اساس نقش آن ها، به صورت زیر طبقه بندي می شوند.
- 1 تکنولوژي هاي پایه شامل HTTP و مرورگر وب هستند.
- 2 تکنولوژي هاي نمایش شامل HTML/XHTML و - Cascading Style Sheets - CSS هستند.